Während die PCs und Server in Firmennetzen gut abgesichert und über Firewalls zum Internet verbunden sind, hängt das Fax-Gerät gerne im selben Netzwerk und ist direkt über die Telefonleitung vernetzt. Genau diese Unachtsamkeit machen sich die Forscher von Check Point bei Faxploit (CVE-2018-5924 und CVE-2018-5925) zunutze.
Hierzu benötigen sie nur die Faxnummer. Diese Information ist häufig auf Websites, Visitenkarten und Briefköpfen zu finden. Die Hacker haben Faxploit an 154 HP All-in-One-Geräten ausprobiert, die sich per bösartigem Fax hijacken lassen. Das Problem betrifft aber wahrscheinlich alle modernen Fax-Geräte und auch Online-Fax-Dienste, wie fax2email, da es sich um ein Problem beim standardisierten Fax-Protokoll handelt. Faxgeräte sind meist Multifunktionsgeräte, die auch Dokumente speichern. Dadurch lassen sich Dokumente verändern sowie kopieren. Dies ist insbesondere dadurch brisant, da Faxe häufig als sichere Kommunikationswege gelten - im Gegensatz zu E-Mails.
Ferner sind die Geräte häufig im selben Netz wie beispielsweise Mitarbeiter-PCs, wodurch sie als Einfallstor dienen und andere Rechner ebenfalls gekapert werden können. Was zunächst die Auswirkung reduziert, ist Netzsegmentierung, also Multifunktionsgerät in einem anderen Segment belassen. So kann nur das Multifunktionsgerät gehijackt werden. Zudem gibt es für die HP-Geräte bereits Patches. Falls Fax nicht mehr benötigt wird, kann auch das Kabel gezogen werden.
Im Video wird Faxploit gut und einfach erklärt:
Die Forscher fanden beim Multifunktionsgerät über IDA (ein netter Disassembler and Debugger) eine gSOAP library mit dem Devil's Ivy Bug, der durch ein großes XML-File (2GB) über den TCP Port 53048 einen Stack-Based Buffer Overflow auslöst. Darüber kann wiederum volle Kontrolle über das Gerät gewonnen werden. Jedoch dauert es länger diese Datenmengen zu senden. Einzelne Zeichen (0x00 -0x19 und '?':0x3F) sind verboten und Drucker sind normalerweise Embedded Devices, deren CPUs mehrere Caches besitzt.
Das T.30 Protokoll, welches Fax spezifiziert, versendet Seiten, während in der zweiten Phase des Protokolls Parameter, wie Seitenhöhe und -breite übergeben werden. In der dritten Phase werden die Datenzeilen transportiert. Am Ende kommt ein .tiff File heraus, welches die IFD Tags enthält, die beim Handshake als Metadaten übertragen wurden. Die Datenzeilen werden einfach übernommen. Es gibt mehrere Schwachstellen im Code, der die IFD Tags parst, in diesem Fall durch den Drucker selbst. Einzig die Komprimierung wird auf den Inhalt angewendet. Daher muss die Komprimierung für den Angreifer bekannt sein. Wenn das Multifunktionsgerät farbige Faxe, also JPEGs, unterstützt, hat der Angreifer volle Kontrolle über den Inhalt. Die Forscher haben sich daraufhin Parsing-Markers angeschaut und die folgenden beiden Schwachstellen gefunden:
CVE-2018-5925 – Buffer-Overflow While Parsing COM Markers
According to the standard, a COM marker (0xFFFE) is a variable-sized text field representing a text comment. This was our first candidate for finding a parsing vulnerability.
CVE-2018-5924 – Stack-Based Buffer-Overflow while Parsing DHT Markers
Since the first vulnerability was located in a marker that shouldn’t be supported by standard-compliant implementations, we chose to keep on looking for vulnerabilities in additional markers. The DHT marker (0xFFC4) Define a special Huffman Table that should be used when decoding the data frames of the file.
Letztere wurde implementiert. Wer den Angriffsvektor genauer verstehen will, kann die Informationen hier nachlesen.