CVE-2023-27533
TELNET option IAC injection
Project curl Security Advisory, March 20th 2023 - Permalink
VULNERABILITY
curl supports communicating using the TELNET protocol and as a part of this it offers users to pass on username and "telnet options" for the server negotiation.
Due to lack of proper input scrubbing and without it being the documented functionality, curl would pass on username and telnet options to the server as provided. This could allow users to pass in carefully crafted content that pass on content or do option negotiation without the application intending to do so. In particular if an application for example allows users to provide the data or parts of the data.
INFO
CWE-75: Failure to Sanitize Special Elements into a Different Plane
Severity: Low
AFFECTED VERSIONS
- Affected versions: curl 7.7 to and including 7.88.1
- Not affected versions: curl < 7.7 and curl >= 8.0.0
- Introduced-in: https://github.com/curl/curl/commit/a1d6ad26100bc493c7
libcurl is used by many applications, but not always advertised as such!
SOLUTION
Only accept ASCII username and telnet options.
RECOMMENDATIONS
A - Upgrade curl to version 8.0.0
B - Apply the patch to your local version
C - Do your own TELNET username or option input filtering
TIMELINE
This issue was reported to the curl project on March 3, 2023. We contacted distros@openwall on March 13, 2023.
curl 8.0.0 was released on March 20 2023, coordinated with the publication of this advisory.
CREDITS
- Reported-by: Harry Sintonen
- Patched-by: Daniel Stenberg
Thanks a lot!