curl supports the -t command line option, known as CURLOPT_TELNETOPTIONS
in libcurl. This rarely used option is used to send variable=content pairs to
TELNET servers.
Due to flaw in the option parser for sending NEW_ENV variables, libcurl
could be made to pass on uninitialized data from a stack based buffer to the
server. Therefore potentially revealing sensitive internal information to the
server using a clear-text network protocol.
This could happen because curl did not call and use sscanf() correctly when
parsing the string provided by the application.
The previous curl security vulnerability CVE-2021-22898 is almost identical to this one but the fix was insufficient so this security vulnerability remained.
{
"last_affected": "7.77.0",
"package": "curl",
"issue": "https://hackerone.com/reports/1223882",
"www": "https://curl.se/docs/CVE-2021-22925.html",
"CWE": {
"desc": "Use of Uninitialized Variable",
"id": "CWE-457"
},
"award": {
"amount": "800",
"currency": "USD"
},
"affects": "both",
"URL": "https://curl.se/docs/CVE-2021-22925.json",
"severity": "Medium"
}[
{
"signature_version": "v1",
"deprecated": false,
"id": "CURL-CVE-2021-22925-42b460d0",
"source": "https://github.com/curl/curl.git/commit/894f6ec730597eb243618d33cc84d71add8d6a8a",
"digest": {
"function_hash": "316933520917559347077501990993139660214",
"length": 2162.0
},
"signature_type": "Function",
"target": {
"function": "suboption",
"file": "lib/telnet.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"id": "CURL-CVE-2021-22925-6cb4958a",
"source": "https://github.com/curl/curl.git/commit/894f6ec730597eb243618d33cc84d71add8d6a8a",
"digest": {
"line_hashes": [
"73371219997613798860273049430938336872",
"246464346227486228829190896668526825182",
"211103125117598029027713563117906999281",
"45302255415263079241276111190376578806",
"66444213479799562148186156236093836400",
"171170274092991383111325095799231300614",
"269634034906769680142597048279449049406",
"89712093938542999602004345946193224210",
"263138597271543149838825752148738172629"
],
"threshold": 0.9
},
"signature_type": "Line",
"target": {
"file": "lib/telnet.c"
}
}
]