Platform
c
Component
curl
Opgelost in
7.64.1
CVE-2018-16890 describes a heap buffer overflow vulnerability affecting libcurl versions 7.36.0 through 7.64.0. This flaw arises from improper validation of incoming NTLM type-2 messages, allowing a malicious server to trigger an integer overflow. Successful exploitation could lead to a denial-of-service or potentially arbitrary code execution. A patch is available in version 7.64.0.
CVE-2018-16890 in libcurl treft versies van 7.36.0 tot en met 7.64.0. Het is een heap buffer out-of-bounds read kwetsbaarheid die zich bevindt in de functie ntlmdecodetype2_target binnen de NTLM authenticatiemodule. Een kwaadwillige of defecte NTLM-server kan dit misbruiken door op maat gemaakte data te verzenden die een integer overflow triggert. Deze overflow stelt de server in staat om libcurl te misleiden om een ongeldige lengte + offset combinatie te accepteren, wat leidt tot een buffer read buiten de grenzen. Dit kan mogelijk leiden tot informatieblootstelling of zelfs willekeurige code-uitvoering. De CVSS score is 5.4, wat een matig risico aangeeft. Het updaten naar een gepatchte versie is cruciaal.
Het exploiteren van CVE-2018-16890 vereist een NTLM-server die in staat is om op maat gemaakte type 2 berichten te verzenden. Dit impliceert dat de aanvaller controle moet hebben over de NTLM-server of in staat moet zijn om de data die deze verzendt te beïnvloeden. De kwetsbaarheid wordt getriggerd wanneer libcurl probeert deze kwaadaardige berichten te decoderen. De complexiteit van de exploitatie is relatief laag, omdat het geen diepgaande kennis van de interne architectuur van libcurl vereist, maar het vereist wel de mogelijkheid om specifieke NTLM-berichten te genereren. De waarschijnlijkheid van exploitatie hangt af van de prevalentie van kwetsbare NTLM-servers en de blootstelling van applicaties die libcurl gebruiken.
Applications and systems that utilize libcurl for network communication, particularly those that handle NTLM authentication, are at risk. This includes web servers, proxy servers, and any software that relies on libcurl to transfer data over HTTP or HTTPS. Systems running older versions of libcurl (7.36.0–7.64.0) are particularly vulnerable.
• linux / server:
journalctl -u libcurl | grep -i ntlm• generic web:
curl -I https://example.com/ | grep NTLM• c:
Review code for instances of ntlmdecodetype2_target function and surrounding integer validation logic. Look for potential overflow scenarios.
disclosure
Exploit Status
CVSS-vector
De primaire mitigatie voor CVE-2018-16890 is het upgraden van libcurl naar versie 7.64.0 of hoger. Deze versie bevat de fix die de invoergegevens correct valideert en de integer overflow voorkomt. Als een onmiddellijke upgrade niet mogelijk is, controleer dan de configuratie van de NTLM-servers waarmee uw applicatie communiceert om ervoor te zorgen dat ze correct zijn geconfigureerd en geen kwaadaardige berichten verzenden. Overweeg om aanvullende beveiligingsmaatregelen te implementeren, zoals invoervalidatie in de applicatie die libcurl gebruikt, hoewel dit geen volledige oplossing is. Prioriteer de update als de belangrijkste preventieve maatregel.
Actualice a la versión 7.64.0 o posterior para corregir la vulnerabilidad de lectura fuera de límites en el manejo de mensajes NTLM type-2. Verifique las fuentes oficiales de libcurl para obtener instrucciones de actualización específicas para su sistema operativo y configuración.
Kwetsbaarheidsanalyses en kritieke waarschuwingen direct in uw inbox.
Versies van 7.36.0 tot en met 7.64.0 zijn kwetsbaar voor CVE-2018-16890.
Controleer de geïnstalleerde versie van libcurl op uw systeem. Als deze ouder is dan 7.64.0, is deze kwetsbaar.
Hoewel invoervalidatiemaatregelen kunnen helpen, is het upgraden naar versie 7.64.0 of hoger de meest effectieve oplossing.
Gevoelige informatie zou kunnen worden blootgelegd, inclusief gegevens die in het geheugen zijn opgeslagen die libcurl verwerkt.
NTLM is een authenticatieprotocol dat wordt gebruikt in Windows-netwerken om de identiteiten van gebruikers te verifiëren.
Upload je dependency-bestand en kom direct te weten of deze en andere CVEs jou raken.