libcurl contains a heap buffer out-of-bounds read flaw.
The function handling incoming NTLM type-2 messages
(lib/vauth/ntlm.c:ntlm_decode_type2_target) does not validate incoming data
correctly and is subject to an integer overflow vulnerability.
Using that overflow, a malicious or broken NTLM server could trick libcurl to accept a bad length + offset combination that would lead to a buffer read out-of-bounds.
{
"package": "curl",
"CWE": {
"id": "CWE-125",
"desc": "Out-of-bounds Read"
},
"last_affected": "7.63.0",
"severity": "Medium",
"affects": "both",
"URL": "https://curl.se/docs/CVE-2018-16890.json",
"www": "https://curl.se/docs/CVE-2018-16890.html"
}[
{
"signature_version": "v1",
"deprecated": false,
"id": "CURL-CVE-2018-16890-10e9b890",
"target": {
"file": "lib/vauth/ntlm.c"
},
"signature_type": "Line",
"digest": {
"threshold": 0.9,
"line_hashes": [
"12728682252783882915865415916745410219",
"260038441391679011891052480260443053264",
"304498700439191242831503511784071893196",
"248163854096766719562619899192948860617",
"258592839919068071494480859323354185920",
"65831133836082554303220208869811168717",
"5459699787853170582943844525295317240",
"40134995311612953874905870103359729622"
]
},
"source": "https://github.com/curl/curl.git/commit/b780b30d1377adb10bbe774835f49e9b237fb9bb"
},
{
"signature_version": "v1",
"deprecated": false,
"id": "CURL-CVE-2018-16890-a78e5ad3",
"target": {
"function": "ntlm_decode_type2_target",
"file": "lib/vauth/ntlm.c"
},
"signature_type": "Function",
"digest": {
"length": 767.0,
"function_hash": "167555698249115182477771298620459297773"
},
"source": "https://github.com/curl/curl.git/commit/b780b30d1377adb10bbe774835f49e9b237fb9bb"
}
]