Dev News Daily ENDE

Metasploit-Modul für ein ausgenutztes GitLab-Dateileseloch

Die Metasploit-Ausgabe dieser Woche bringt fünf neue Module, ein überarbeitetes Modul, eine Funktion und neun Fehlerkorrekturen - und einen Punkt, bei dem das Team den Leser auffordert, das Lesen abzubrechen und zu handeln. Selbst gehostetes GitLab hat ein unauthentifiziertes, beliebiges Dateileseloch, das in der Praxis ausgenutzt wird, betroffen sind Versionen von 18.7 bis zu den behobenen Releases. Rapid7 formuliert es ohne relativierenden Nebensatz: keine Zugangsdaten nötig, Angriffe beobachtet, sofort patchen.

Die zweite Neuerung verdient Aufmerksamkeit, auch wenn nichts brennt. Metasploit hat nun native Module im mitm6-Stil für DHCPv6 und IPv6 Router Advertisement, um DNS zu übernehmen - also DNS-Server eines Windows-Netzes zu werden, indem man auf dem IPv6-Stack antwortet, der nie konfiguriert, nie genutzt und eben auch nie abgeschaltet wurde. Windows akzeptiert einen neuen DNS-Server von dem, der einen anbietet. Bisher war das eine Aufgabe für externe Werkzeuge; jetzt steckt es im Framework, das ohnehin überall installiert ist.

Der Wochenbericht kommt aus Belgien, wo das Team auf einer Konferenz war; einer von ihnen, @jburgess-r7, stellte 0day-Forschung vor.

Metasploit-Modul für ein ausgenutztes GitLab-Dateileseloch
Metasploit-Modul für ein ausgenutztes GitLab-Dateileseloch — Dev News Daily

Was das bedeutet

Der GitLab-Fehler gehört zur unangenehmsten Klasse, die es für einen selbst gehosteten Dienst gibt: unauthentifiziert, im langweiligen Sinne nur lesend und in der Praxis verheerend - und nun mit einem Modul im verbreitetsten Exploitation-Framework überhaupt. Die Spanne zwischen "öffentliches Modul" und "opportunistischem Scannen" ist kurz, und beliebiges Dateilesen auf einem GitLab-Host endet nicht beim Quellcode: es reicht an CI-Konfiguration, an Tokens auf der Platte und an alles, dem der Runner vertraut wurde. Wer die Instanz im eigenen Haus und in diesem Versionsbereich betreibt, hat hier den einzigen Punkt mit Frist.

Die IPv6-Module sind eher strukturell als dringend zu betrachten, weil sie eine Konfiguration angreifen, die niemand vorgenommen hat. Alle Regeln darüber, wer in einer Windows-Umgebung DNS-Server sein darf, sind in der Regel für IPv4 geschrieben; der v6-Stack ist standardmäßig aktiv, unbeobachtet weil ungenutzt, und nimmt Anweisungen von einem Fremden im Segment bereitwillig an. Das ist dasselbe Fehlermuster wie bei einer nicht validierten Schutzmaßnahme an anderer Stelle dieser Woche: die sichtbare Hälfte war eingerichtet, und die Hälfte, auf die keiner sah, war die entscheidende. Es lohnt zu prüfen, ob die IPv6-Lage im eigenen Netz "bewusst konfiguriert" oder "vorhanden, weil mitgeliefert" lautet - die zweite Antwort ist nun ein Modul davon entfernt, jemand anderes DNS zu sein.