PyJWT bis 1.5.0 PEM Encoded Public Key symmetric/asymmetric invalid_strings erweiterte Rechte

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

Zusammenfassunginfo

Es wurde eine kritische Schwachstelle in PyJWT bis 1.5.0 entdeckt. Hierbei geht es um die Funktion invalid_strings der Datei symmetric/asymmetric der Komponente PEM Encoded Public Key Handler. Durch Beeinflussen mit unbekannten Daten kann eine erweiterte Rechte-Schwachstelle ausgenutzt werden. Die Verwundbarkeit wird unter CVE-2017-11424 geführt. Die Umsetzung des Angriffs kann dabei über das Netzwerk erfolgen. Es ist soweit kein Exploit verfügbar. Als bestmögliche Massnahme wird das Einspielen eines Upgrades empfohlen.

Detailsinfo

In PyJWT bis 1.5.0 wurde eine Schwachstelle gefunden. Sie wurde als kritisch eingestuft. Hierbei betrifft es die Funktion invalid_strings der Datei symmetric/asymmetric der Komponente PEM Encoded Public Key Handler. Durch Beeinflussen mit einer unbekannten Eingabe kann eine erweiterte Rechte-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-284. Auswirkungen hat dies auf Vertraulichkeit, Integrität und Verfügbarkeit. Die Zusammenfassung von CVE lautet:

In PyJWT 1.5.0 and below the `invalid_strings` check in `HMACAlgorithm.prepare_key` does not account for all PEM encoded public keys. Specifically, the PKCS1 PEM encoded format would be allowed because it is prefaced with the string `-----BEGIN RSA PUBLIC KEY-----` which is not accounted for. This enables symmetric/asymmetric key confusion attacks against users using the PKCS1 PEM encoded public keys, which would allow an attacker to craft JWTs from scratch.

Gefunden wurde das Problem am 18.07.2017. Die Schwachstelle wurde am 24.08.2017 (GitHub Repository) öffentlich gemacht. Bereitgestellt wird das Advisory unter github.com. Die Verwundbarkeit wird seit dem 18.07.2017 als CVE-2017-11424 geführt. Der Angriff kann über das Netzwerk angegangen werden. Um eine Ausnutzung durchzusetzen, muss keine spezifische Authentisierung umgesetzt werden. Technische Details sind bekannt, ein verfügbarer Exploit hingegen nicht. Als Angriffstechnik weist das MITRE ATT&CK Projekt die ID T1068 aus.

Mindestens 37 Tage galt die Schwachstelle als nicht öffentlicher Zero-Day. Während dieser Zeit erzielte er wohl etwa $0-$5k auf dem Schwarzmarkt. Für den Vulnerability Scanner Nessus wurde am 20.09.2017 ein Plugin mit der ID 103331 (Debian DSA-3979-1 : pyjwt - security update) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann. Es wird der Family Debian Local Security Checks zugeordnet und im Kontext l ausgeführt. Der kommerzielle Vulnerability Scanner Qualys bietet das Plugin 276895 (Fedora Security Update for python-jwt (FEDORA-2017-b9f07dfaca)) zur Prüfung der Schwachstelle an.

Ein Aktualisieren vermag dieses Problem zu lösen. Das Erscheinen einer Gegenmassnahme geschah 4 Wochen nach der Veröffentlichung der Schwachstelle. Die Entwickler haben demnach noch im Rahmen gehandelt.

Unter anderem wird der Fehler auch in der Verwundbarkeitsdatenbank von Tenable (103331) dokumentiert. If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Produktinfo

Name

Version

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 7.4
VulDB Meta Temp Score: 6.9

VulDB Base Score: 7.3
VulDB Temp Score: 6.4
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-284 / CWE-266
CAPEC: 🔍
ATT&CK: 🔍

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔍
Status: Nicht definiert

EPSS Score: 🔍
EPSS Percentile: 🔍

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Nessus ID: 103331
Nessus Name: Debian DSA-3979-1 : pyjwt - security update
Nessus Datei: 🔍
Nessus Risiko: 🔍
Nessus Family: 🔍
Nessus Context: 🔍

OpenVAS ID: 53377
OpenVAS Name: Debian Security Advisory DSA 3979-1 (pyjwt - security update)
OpenVAS Datei: 🔍
OpenVAS Family: 🔍

Qualys ID: 🔍
Qualys Name: 🔍

Threat Intelligenceinfo

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

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

Reaktionszeit: 🔍
0-Day Time: 🔍
Exposure Time: 🔍

Patch: github.com

Timelineinfo

18.07.2017 🔍
18.07.2017 +0 Tage 🔍
24.08.2017 +37 Tage 🔍
24.08.2017 +0 Tage 🔍
25.08.2017 +1 Tage 🔍
19.09.2017 +25 Tage 🔍
20.09.2017 +1 Tage 🔍
16.12.2022 +1913 Tage 🔍

Quelleninfo

Advisory: github.com
Status: Nicht definiert
Bestätigung: 🔍

CVE: CVE-2017-11424 (🔍)
GCVE (CVE): GCVE-0-2017-11424
GCVE (VulDB): GCVE-100-105709

OVAL: 🔍

Eintraginfo

Erstellt: 25.08.2017 08:45
Aktualisierung: 16.12.2022 14:38
Anpassungen: 25.08.2017 08:45 (68), 10.11.2019 08:32 (10), 16.12.2022 14:38 (4)
Komplett: 🔍
Cache ID: 216::103

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

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

Want to stay up to date on a daily basis?

Enable the mail alert feature now!