Perl 5.8.9 UTF-8 regexec.c erweiterte Rechte

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
6.7$0-$5k0.00

Zusammenfassunginfo

In Perl 5.8.9 wurde eine problematische Schwachstelle ausgemacht. Es geht hierbei um eine nicht näher spezifizierte Funktion der Datei regexec.c der Komponente UTF-8 Handler. Die Manipulation führt zu erweiterte Rechte. Die Identifikation der Schwachstelle wird mit CVE-2015-8853 vorgenommen. Der Angriff kann über das Netzwerk erfolgen. Ferner existiert ein Exploit. Es empfiehlt sich, einen Patch einzuspielen, um dieses Problem zu beheben.

Detailsinfo

In Perl 5.8.9 (Programming Language Software) wurde eine Schwachstelle entdeckt. Sie wurde als kritisch eingestuft. Betroffen ist ein unbekannter Teil der Datei regexec.c der Komponente UTF-8 Handler. Mittels Manipulieren mit einer unbekannten Eingabe kann eine erweiterte Rechte-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-20. Das hat Auswirkungen auf die Verfügbarkeit. CVE fasst zusammen:

The (1) S_reghop3, (2) S_reghop4, and (3) S_reghopmaybe3 functions in regexec.c in Perl before 5.24.0 allow context-dependent attackers to cause a denial of service (infinite loop) via crafted utf-8 data, as demonstrated by "a\x80."

Die Schwachstelle wurde am 20.04.2016 durch Karl Williamson als Patch #123562 in Form eines bestätigten Mailinglist Posts (oss-sec) an die Öffentlichkeit getragen. Das Advisory kann von seclists.org heruntergeladen werden. Die Veröffentlichung wurde in Zusammenarbeit mit dem Hersteller durchgeführt. Eine eindeutige Identifikation der Schwachstelle wird seit dem 20.04.2016 mit CVE-2015-8853 vorgenommen. Sie ist leicht auszunutzen. Die Umsetzung des Angriffs kann dabei über das Netzwerk erfolgen. Um eine Ausnutzung durchzusetzen, muss keine spezifische Authentisierung umgesetzt werden. Es sind sowohl technische Details als auch ein öffentlicher Exploit zur Schwachstelle bekannt. Der folgende Code generiert das Problem:

if (UTF8_IS_CONTINUED(*s)) {
   while (s > lim && UTF8_IS_CONTINUATION(*s))
      s--;
(...)
Das Advisory weist darauf hin:
The regex engine got into an infinite loop because of the malformation. It is trying to back-up over a sequence of UTF-8 continuation bytes. But the character just before the sequence should be a start byte. If not, there is a malformation. I added a test to croak if that isn't the case so that it doesn't just infinitely loop. I did this also in the similar areas of regexec.c.

Ein öffentlicher Exploit wurde durch Karl Williamson umgesetzt und schon vor und nicht nach dem Advisory veröffentlicht. Der Download des Exploits kann von perl5.git.perl.org geschehen. Er wird als proof-of-concept gehandelt. Für den Vulnerability Scanner Nessus wurde am 09.05.2016 ein Plugin mit der ID 90956 (Fedora 22 : perl-5.20.3-330.fc22 (2016-5a9313e4b4)) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann. Es wird der Family Fedora Local Security Checks zugeordnet und im Kontext l ausgeführt. Der kommerzielle Vulnerability Scanner Qualys bietet das Plugin 296002 (Solaris 11.3 Support Repository Update (SRU) 9.4.0 Missing) zur Prüfung der Schwachstelle an. Der durch den Exploit genutzte Code gestaltet sich wie folgt:

my $code='
   BEGIN{require q(test.pl);}
   use Encode qw(_utf8_on);
   my $malformed = "a\x80\n";
   _utf8_on($malformed);
   watchdog(3);
   $malformed =~ /(\n\r|\r)$/;
   print q(No infinite loop here!);
';

Die Schwachstelle lässt sich durch das Einspielen eines Patches beheben. Dieser kann von perl5.git.perl.org bezogen werden. Das Erscheinen einer Gegenmassnahme geschah schon vor und nicht nach der Veröffentlichung der Schwachstelle. Die Entwickler haben offensichtlich vorab reagiert. Die Schwachstelle wird durch folgenden Code angegangen:

if (! UTF8_IS_START(*s)) {
   dTHX;
   Perl_croak(aTHX_ "Malformed UTF-8 character (fatal)");
}

Unter anderem wird der Fehler auch in den Datenbanken von X-Force (112536), Tenable (90956) und SecurityFocus (BID 86707†) dokumentiert. Die Einträge VDB-74783, VDB-78889, VDB-80607 und VDB-80673 sind sehr ähnlich. VulDB is the best source for vulnerability data and more expert information about this specific topic.

Produktinfo

Typ

Name

Version

Lizenz

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 7.5
VulDB Meta Temp Score: 7.1

VulDB Base Score: 7.5
VulDB Temp Score: 6.7
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

NVD Base Score: 7.5
NVD Vector: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Zuverlässigkeit: 🔍

NVD Base Score: 🔍

Exploitinginfo

Klasse: Erweiterte Rechte
CWE: CWE-20
CAPEC: 🔍
ATT&CK: 🔍

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔍
Zugang: öffentlich
Status: Proof-of-Concept
Autor: Karl Williamson
Download: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Nessus ID: 90956
Nessus Name: Fedora 22 : perl-5.20.3-330.fc22 (2016-5a9313e4b4)
Nessus Datei: 🔍
Nessus Risiko: 🔍
Nessus Family: 🔍
Nessus Context: 🔍

OpenVAS ID: 864555
OpenVAS Name: Fedora Update for perl FEDORA-2016-5
OpenVAS Datei: 🔍
OpenVAS Family: 🔍

Qualys ID: 🔍
Qualys Name: 🔍

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Patch
Status: 🔍

0-Day Time: 🔍

Patch: perl5.git.perl.org

Timelineinfo

16.09.2015 🔍
16.09.2015 +0 Tage 🔍
20.04.2016 +217 Tage 🔍
20.04.2016 +0 Tage 🔍
20.04.2016 +0 Tage 🔍
25.04.2016 +5 Tage 🔍
09.05.2016 +14 Tage 🔍
25.05.2016 +16 Tage 🔍
22.03.2019 +1031 Tage 🔍

Quelleninfo

Advisory: Patch #123562
Person: Karl Williamson
Status: Bestätigt
Bestätigung: 🔍
Koordiniert: 🔍

CVE: CVE-2015-8853 (🔍)
GCVE (CVE): GCVE-0-2015-8853
GCVE (VulDB): GCVE-100-82792
X-Force: 112536 - Perl UTF8 inputs denial of service
SecurityFocus: 86707 - Perl CVE-2015-8853 Denial of Service Vulnerability

scip Labs: https://www.scip.ch/?labs.20161013
Siehe auch: 🔍

Eintraginfo

Erstellt: 25.04.2016 15:33
Aktualisierung: 22.03.2019 14:17
Anpassungen: 25.04.2016 15:33 (84), 22.03.2019 14:17 (11)
Komplett: 🔍
Cache ID: 216::103

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Interested in the pricing of exploits?

See the underground prices here!