CVE-2023-27533: Telnet option IAC injection
What the report claims
CURLOPT_TELNETOPTIONS allows setting telnet options, but missing encoding of IAC (0xff) enables injection of arbitrary TELNET commands via TTYPE, XDISPLOC, or NEW_ENV options.
Compare with curl's recorded outcome
Known vulnerability
A real vulnerability: CVE-2023-27533 TELNET option IAC injection
Shown for comparison after analysis. The pipeline did not see this label.
ProveIt's finding
The available evidence does not settle the report. A maintainer should investigate.
Why this finding?
- No curl source code was provided for the telnet option handling (CURLOPT_TELNETOPTIONS implementation), so the central claim about missing IAC encoding cannot be verified or contradicted.
- The reproduction case with tcpdump output suggests plausible injection behavior (0xff 0xf0 sequence visible in packet capture), but the code path is not available for analysis.
- RFC 854 excerpt provided does not contain the referenced 'TELNET COMMAND STRUCTURE' section.
What still needs checking
- curl source code for telnet option handling (likely in lib/telnet.c or similar) at revision ad4997e5b289
- Specifically the code that constructs suboption data for TTYPE, XDISPLOC, and NEW_ENV options
How this analysis ran 5 claims · 0 citations verified
Checked against curl master on 2023-03-03 (ad4997e5b289). Test evaluation split. Citation verification checks that a referenced line was in the evidence; it does not prove the model interpreted it correctly.
Review a draft reply to the reporter
Edit and verify before sending.
Thank you for the detailed report with reproduction steps and packet capture. To assess this, we need to examine curl's telnet option handling code (CURLOPT_TELNETOPTIONS implementation) at the relevant revision. Could you point to the specific file/function where telnet suboption data is constructed? The packet capture showing 0xff 0xf0 injection is concerning, but we need to verify the code path.
Inspect all claims and source code 5 claims · 0 code excerpts
Report claims
Missing encoding of "Interpret as Command" IAC (0xff) character when constructing suboption data for telnet options
Read the reasoning
No curl source code was provided to examine the telnet option handling implementation. The deterministic checks only confirm symbols exist, not how IAC encoding is handled.
In curl's telnet option handling code
Read the reasoning
No curl source code was provided to locate the telnet option handling code.
Attacker controls TTYPE, XDISPLOC, or NEW_ENV option values via CURLOPT_TELNETOPTIONS
Read the reasoning
No curl source code was provided to verify how CURLOPT_TELNETOPTIONS processes TTYPE, XDISPLOC, and NEW_ENV values.
Escape out of telnet subnegotiation and inject arbitrary TELNET commands
Read the reasoning
The external source E1 (RFC 854) excerpt provided does not contain the 'TELNET COMMAND STRUCTURE' content referenced in the claim. No curl code was provided to verify the injection path.
Use curl --telnet-option NEW_ENV=a,b$(echo -ne "\xff\xf0INJECTED") telnet://server to inject commands
Read the reasoning
The reproduction steps are described but cannot be verified against curl's implementation without the source code.
What the report says about other projects
not addressed TELNET command refers to 'TELNET COMMAND STRUCTURE' in RFC 854
Read the original report
Source code
No source code was retrieved for this analysis. The evidence may be incomplete.