Bufferoverloop in OpenSSL wordt misbruikt bij het verifiëren van X.509-certificaten

Er is een corrigerende release van de OpenSSL cryptografische bibliotheek 3.0.7 gepubliceerd, die twee kwetsbaarheden verhelpt. Beide problemen worden veroorzaakt door bufferoverflows in de e-mailveldvalidatiecode in X.509-certificaten en kunnen mogelijk leiden tot code-uitvoering bij het verwerken van een speciaal ontworpen certificaat. Op het moment van publicatie van de oplossing hadden de OpenSSL-ontwikkelaars geen enkel bewijs vastgelegd van de aanwezigheid van een werkende exploit die zou kunnen leiden tot de uitvoering van de code van de aanvaller.

Ondanks het feit dat in de pre-releaseaankondiging van de nieuwe release de aanwezigheid van een kritiek probleem werd vermeld, werd in de uitgebrachte update de status van de kwetsbaarheid teruggebracht tot het niveau van een gevaarlijke, maar niet kritische kwetsbaarheid. In overeenstemming met de regels die in het project zijn aangenomen, wordt het gevaarsniveau verminderd als het probleem zich in atypische configuraties manifesteert of als de kans op misbruik van de kwetsbaarheid in de praktijk laag is.

In dit geval werd het ernstniveau verlaagd omdat uit een gedetailleerde analyse van de kwetsbaarheid door verschillende organisaties bleek dat de mogelijkheid om code uit te voeren tijdens exploitatie werd geblokkeerd door stack-overflow-beveiligingsmechanismen die op veel platforms worden gebruikt. Bovendien resulteert de rasterindeling die in sommige Linux-distributies wordt gebruikt erin dat de 4 bytes die buiten de grenzen vallen, worden gesuperponeerd op de volgende buffer op de stapel, die nog niet in gebruik is. Het is echter mogelijk dat er platforms zijn die kunnen worden uitgebuit om code uit te voeren.

Problemen geïdentificeerd:

  • CVE-2022-3602 - een kwetsbaarheid, aanvankelijk gepresenteerd als kritiek, leidt tot een bufferoverflow van 4 bytes bij het controleren van een veld met een speciaal ontworpen e-mailadres in een X.509-certificaat. In een TLS-client kan het beveiligingslek worden misbruikt door verbinding te maken met een server die wordt beheerd door de aanvaller. Op een TLS-server kan het beveiligingslek worden misbruikt als clientauthenticatie met behulp van certificaten wordt gebruikt. In dit geval doet de kwetsbaarheid zich voor in de fase na verificatie van de vertrouwensketen die aan het certificaat is gekoppeld, d.w.z. Voor de aanval is het nodig dat de certificeringsinstantie het kwaadaardige certificaat van de aanvaller verifieert.
  • CVE-2022-3786 is een andere vector voor het misbruiken van de CVE-2022-3602-kwetsbaarheid, geïdentificeerd tijdens de analyse van het probleem. De verschillen komen neer op de mogelijkheid om een ​​buffer op de stapel te laten overlopen door een willekeurig aantal bytes die de “.” (dat wil zeggen dat de aanvaller geen controle heeft over de inhoud van de overflow en dat het probleem alleen kan worden gebruikt om de applicatie te laten crashen).

De kwetsbaarheden komen alleen voor in de OpenSSL 3.0.x-tak (de bug werd geïntroduceerd in de Unicode-conversiecode (punycode) toegevoegd aan de 3.0.x-tak). Releases van OpenSSL 1.1.1, evenals de OpenSSL-forkbibliotheken LibreSSL en BoringSSL, hebben geen last van dit probleem. Tegelijkertijd werd de OpenSSL 1.1.1s-update uitgebracht, die alleen oplossingen voor niet-beveiligingsproblemen bevat.

De OpenSSL 3.0-tak wordt gebruikt in distributies zoals Ubuntu 22.04, CentOS Stream 9, RHEL 9, OpenMandriva 4.2, Gentoo, Fedora 36, ​​Debian Testing/Unstable. Gebruikers van deze systemen wordt aangeraden zo snel mogelijk updates te installeren (Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch). In SUSE Linux Enterprise 15 SP4 en openSUSE Leap 15.4 zijn pakketten met OpenSSL 3.0 optioneel beschikbaar, systeempakketten gebruiken de vertakking 1.1.1. Debian 1, Arch Linux, Void Linux, Ubuntu 11, Slackware, ALT Linux, RHEL 20.04, OpenWrt, Alpine Linux 8 en FreeBSD blijven op de OpenSSL 3.16.x-takken.

Bron: opennet.ru

Voeg een reactie