CVE-2022-24693
Beschreibung
Baicells Nova436Q- und Neutrino 430-Geräte mit Firmware bis QRTB 2.7.8 haben fest codierte Anmeldeinformationen, die leicht zu entdecken sind und von entfernten Angreifern zur Authentifizierung per SSH verwendet werden können. (Die Anmeldeinformationen werden in der Firmware gespeichert, verschlüsselt mit der crypt-Funktion.)
CVSS-Score
CVSS 9.8
Schwachstellenart
CWE-284: Unzureichende Zugriffskontrolle
Produkthersteller
BaiCells
Betroffene Produktcodebasis
- NOVA436Q - QRTB 2.7.8 (Wahrscheinlich alle Builds vor 2.9.x)
- NEUTRINO430 - QRTB 2.7.8 (Wahrscheinlich alle Builds vor 2.9.x)
Betroffene Komponente
Benutzernamen und Passwörter sind in der Firmware statisch, mit crypt() verschlüsselt und daher knackbar.
Angriffsart
Remote
Auswirkung: Codeausführung
Ja
Auswirkung: Denial of Service
Ja
Auswirkung: Privilegieneskalation
Ja
Ja
Angriffsvektoren
Ab Werk hat die Firmware statische Benutzernamen und Passwörter.
Referenzen
Hat der Hersteller die Schwachstelle bestätigt oder anerkannt?
Ja: https://community.na.baicells.com/t/important-security-notice-for-nova-436q-430-neutrino-430/1729
Entdecker
Luke Jenkins
Zeitplan
- 2021-12-07 - E-Mail an Baicells mit der Bitte, eine Richtlinie zur Offenlegung von Schwachstellen zu veröffentlichen.
- 2021-12-08 - E-Mail-Diskussion mit Baicells, einschließlich eines Entwurfs einer Richtlinie zur Offenlegung von Schwachstellen und einer Quelle für PGP-Schlüssel für einen Ansprechpartner.
- 2021-12-08 - PGP-verschlüsselte E-Mail mit Details zur Schwachstelle an den Ansprechpartner gesendet.
- 2022-02-08 - Benachrichtigung von Baicells erhalten, dass sie das Problem in ihrem kommenden QRTB 2.9-Software-Release behoben haben.
- 2022-03-22 - Baicells bittet darum, die Klartext-Passwörter nicht auf dieser Seite aufzuführen.
- 2022-03-23 - E-Mail-Antwort an Baicells, in der darauf hingewiesen wird, dass das Weglassen des Passworts lediglich eine Illusion von Sicherheit schaffen würde.
- 2022-03-28 - Baicells veröffentlicht QRTB 2.9.10 Softwareversion mit Fix für dieses Problem.
- 2022-03-28 - Diese Seite, die zuvor leer war, wurde geändert, um Details der Schwachstelle aufzunehmen.
- 2022-03-28 - Anfrage an Mitre gesendet, mit der Bitte, CVE-2022-24693 zu veröffentlichen.
- 2022-03-28 - E-Mail von Baicells mit der Bitte, die Klartext-Passwörter von dieser Seite zu entfernen.
- 2022-03-28 - Antwort an Baicells, Ablehnung ihrer Anfrage basierend auf der Offenlegungsfrist.
- 2022-03-29 - E-Mail-Benachrichtigung vom CVE-Zuteilungsteam von Mitre, dass die Anfrage zur Veröffentlichung von CVE-2022-24693 eingegangen und bearbeitet wurde.
- 2022-03-29 - Telefonanruf von der UETN-Führung mit der Bitte, Baicells' Anfrage nachzukommen.
- 2022-03-29 - E-Mail an Baicells mit der Mitteilung, dass ihrer Bitte, die Passwörter von der Hauptseite zu entfernen, entsprochen wird, die Passwörter jedoch weiterhin im Git-Verlauf und über archive.org verfügbar sein werden.
- 2022-03-29 - Klartext-Passwörter wurden auf dieser Seite unkenntlich gemacht.
- 2022-03-30 - E-Mail von Baicells, dass sie einen Hinweis auf diese Schwachstelle auf ihrer Website veröffentlichen und damit beginnen, Kunden zu benachrichtigen.
- 2022-03-30 - E-Mail von Baicells an eine Kunden-E-Mail-Liste, die vor der Sicherheitsschwachstelle warnt und auf diesen Hinweis sowie auf die behobene Software verweist.
Details:
- Benutzer
admin Passwort Baicells gespeichert mit dem Unix-crypt()-DES-Algorithmus.
- Undokumentierter und nicht konfigurierbarer Benutzer
anonymous Passwort pqmz325 gespeichert mit dem Unix-crypt()-DES-Algorithmus.
- Undokumentierter, nicht konfigurierbarer (aber anscheinend für SSH nicht nutzbarer) Benutzer
root Passwort qpa;10@) gespeichert mit dem Unix-crypt()-DES-Algorithmus. Der Hersteller behauptet, dass dies gerätespezifisch sei, wurde aber nicht bestätigt.
Wie reproduziert man
- Firmware von der Website des Herstellers herunterladen, kein Login erforderlich. Als Kunde liebe ich das; aber aus Sicherheitssicht ist es wichtig zu verstehen, wie einfach es für einen Bösewicht ist, an die Firmware zu gelangen.
- Führen Sie binwalk auf dem Firmware-Image aus, einem Tool, das alle in der Firmware enthaltenen Dateien extrahiert. Entnehmen Sie die Benutzernamen und Passwort-Hashes aus /etc/passwd und /etc/shadow.
- Verwenden Sie hashcat, um die Hashes zu knacken. Neben der Auslegung für über 30 Jahre alte CPUs begrenzt die Unix-crypt()-Funktion, die diese Passwörter "schützt", diese auch auf 8 Zeichen. Passwörter sind geknackt.
- Die Anmeldeinformationen für den anonymen Benutzer können verwendet werden, um per SSH auf das Gerät zuzugreifen. Ich erspare Ihnen die Mühe eines Portscans oder des Durchsuchens der Konfigurationsdateien aus Schritt 2, dropbear hört auf Port 27149.
Anmerkungen
Dies ist mein erstes veröffentlichtes CVE, also bitte entschuldigen Sie (oder Pull Request) etwaige Fehler.
Danke an die Leute von UETN für die Unterstützung und Rückendeckung bei diesem Fall.
Auch ein Dankeschön an die Mitarbeiter von Baicells NA für die Zusammenarbeit bei der Behebung dieses Problems.