4 innovative Wege, auf denen Cyberangreifer nach Sicherheitslücken jagen

Cyber Security News

David “moose” Wolpoff, Mitbegründer und CTO bei Randori, spricht über weniger bekannte Hacking-Pfade, darunter ungelöste “Fixme”-Flags in Entwickler-Supportgruppen.

Blue Teamer befinden sich im ständigen Kampf gegen Hacker – gesichtslose Gegner, deren Hartnäckigkeit unendlich erscheinen kann. Aber diese Akteure haben Prozesse, die denen von Unternehmen ähneln, auch wenn ihre Prozesse gefälscht sind.

Angreifer suchen den Weg des geringsten Widerstands: Sich mit möglichst wenig Aufwand Zugang verschaffen, so wenig Lärm wie möglich machen und möglichst wenige Exploits verwenden.

Sobald sie ein verlockendes Objekt identifiziert haben, das sie ausnutzen wollen, setzen Angreifer Techniken ein, um eine Schwachstelle zu finden. Einige können Angreifern schneller zum Erfolg verhelfen, andere brauchen mehr Zeit. Das Finden und Ausnutzen eines Bugs kann von ein paar Stunden bis zu mehreren Monaten oder sogar länger dauern. Einige Angreifer verwenden bewährte Methoden, aber die kreativsten in der Gruppe finden Wege, Systeme über unerwartete Vektoren auszunutzen. Interne Sicherheitsteams müssen verstehen, welche Teile ihrer Angriffsoberfläche für Angreifer am verlockendsten sind, um effektive Verteidigungsstrategien zu entwickeln.

Die Sichtweise eines Angreifers auf die Fehlerjagd kann dabei helfen, zu verstehen, wie Verteidiger ihre wertvollen Ressourcen schützen können, was mit vier gängigen Methoden beginnt.

Finden von CVE-Doppelgängern

Ähnlich wie Sicherheitsteams, die mit Alarmmüdigkeit konfrontiert sind, sehen sich Angreifer mit einer Flut von Schwachstelleninformationen konfrontiert, von denen nur ein Teil für ihre Zwecke von Bedeutung ist. Angreifer können als Ausgangspunkt Schwachstellen mit ihren Zielen abgleichen, aber CVEs mit hohem Schweregrad sind nicht immer ergiebig (sie sind öffentlich bekannt und werden wahrscheinlich von Sicherheitsteams gut überwacht). Bekannte CVEs sind jedoch hervorragende Ausgangspunkte, um ähnliche Fehler zu entdecken, die sich im Code verstecken. Denken Sie an den Software-Entwicklungszyklus. Code, der in Ihrem Unternehmen eingesetzt wird, kann wiederverwendet und recycelt werden und so in Ihre Umgebung eindringen. Wenn Sie eine Sicherheitslücke für Code patchen, der sich gerade in der Entwicklung befindet, aber nicht für andere Versionen, haben Sie eine Variante dieses Fehlers ungepatcht gelassen. Für Angreifer ist die Überprüfung von Open-Source-Code eine einfache Möglichkeit, Schwachstellen zu finden und einen relativ unbewachten Weg in ein Netzwerk zu finden.

Ungelöste Entwicklerhinweise

Das Lesen von Quellcode kann für Angreifer ein wenig wie das Ausgraben einer Schatzkarte sein. Ein Ort, an dem ich oft tief hängende Früchte finde, sind die Notizen, die sich Entwickler gegenseitig hinterlassen, und die an einem bestimmten Punkt im Softwareentwicklungszyklus hinterlassen werden. Während der Erstellung von Software gehen die Entwickler den Code durch und markieren bekannte fehlerhafte Bereiche. Aber Entwickler bewegen sich schnell, und können diese Notizen ungelöst lassen. Ich weiß, dass ich auf Gold gestoßen bin, wenn ich Tags von Entwicklern in ihrem Code gefunden habe, auf denen “FIXME” oder “RBF” (remove before flight) steht. Tags wie diese markieren potentiell ausnutzbare, ungepatchte Sicherheitslücken. Ich habe einmal einen Fehler in einer Funktion mit der Aufschrift “FIXME: buffer overflow possible here. NICHT SO AUSLIEFERN.” Sie wurde tatsächlich so ausgeliefert, wie sie war, und wir haben diesen Fehler mit Leichtigkeit ausgenutzt.

SOS-Flags in Support-Foren

Einmal, als ich nach einer Stelle suchte, die ich auf dem Perimeter eines Ziels ausnutzen konnte, bemerkte mein Team, dass das Unternehmen eine neue Appliance testete – und das IT-Team des Unternehmens hatte mehrere Fragen in einem generischen Support-Forum mit ihren Firmen-E-Mail-Adressen veröffentlicht. Die Anlage schien leicht zu knacken zu sein. Nach einer schnellen Google-Suche stellten wir fest, dass es sich bei der Appliance um ein teures Produkt eines bekannten Herstellers von Telefonieausrüstung handelte. Wir stöberten in Support-Foren und fanden einen Teil eines Firmware-Updates, das online gepostet wurde und drei Fehler enthielt.

In diesem Fall befand sich ein Fehler in der URL-Pfad-Parsing-Funktion, die es uns ermöglichte, die Authentifizierung zu umgehen. Ein anderer ermöglichte es uns, Codepfade zu erreichen, ohne Systemadministrator zu sein, was uns die Möglichkeit gab, Dateien hoch- und herunterzuladen. Der letzte war ein beliebiger File-Leak-Bug, der uns jede Datei im Dateisystem der Anwendung lesen ließ. In jedem Kapitel waren diese Exploits öffentlich zugängliche Informationen, die jeweils den Schlüssel zum nächsten enthielten. Angreifer lieben es, den Fußspuren Ihrer Teammitglieder außerhalb der Mauern Ihres Netzwerks zu folgen, um Spuren von Informationen zu finden, die zu einem Exploit führen könnten.

Spearfuzzing

Eine zeitaufwändigere und weniger befriedigende Taktik, um Bugs zu finden, ist Fuzzing. Ich wurde einmal damit beauftragt, in eine Firma einzubrechen, also begann ich an einer relativ einfachen Stelle – der Login-Seite für die Mitarbeiter. Ich fing an, blindlings herumzustochern, gab als Benutzernamen “a” ein und bekam den Zugang verweigert. Ich tippte zwei ‘a’ ein… wieder Zugriff verweigert. Dann versuchte ich, 1000 “a” einzugeben, und das Portal hörte auf, mit mir zu sprechen. Eine Minute später war das System wieder online und ich versuchte es sofort wieder. Sobald das Anmeldeportal offline ging, wusste ich, dass ich einen Fehler gefunden hatte.

Fuzzing mag wie ein einfacher Weg erscheinen, jede Schwachstelle in einem Netzwerk zu finden, aber für Angreifer ist es eine Taktik, die selten von alleine funktioniert. Und wenn ein Angreifer gegen ein laufendes System fuzzt, wird er mit ziemlicher Sicherheit einen Systemadministrator verraten. Ich bevorzuge das, was ich “Speer-Fuzzing” nenne: Das Ergänzen des Prozesses mit einem menschlichen Forschungselement. Die Verwendung von Wissen aus der realen Welt, um die Angriffsfläche einzugrenzen und herauszufinden, wo man graben muss, spart eine Menge Zeit.

Verteidiger sind ständig damit beschäftigt, Angreifern das Eindringen zu erschweren, aber Hacker denken einfach nicht wie Verteidiger. Hacker sind an den persönlichen Zeit- und Arbeitsaufwand gebunden, aber nicht an Unternehmensrichtlinien oder Tools. Für Unternehmen ist die Anpassung an die Hackerlogik und das Verständnis, was ein Ziel verlockend macht, der erste Schritt zur offensiven Verteidigung. Beginnen Sie damit, die potenziellen Auswirkungen eines kompromittierten Assets und die Wahrscheinlichkeit eines erfolgreichen Hacks zu verstehen. Dies grenzt das Verständnis der Angriffsfläche ein, die am kritischsten zu verteidigen ist. Dies ermöglicht es Verteidigern, die vorhandenen Ausfallsicherheiten und die CVEs zu berücksichtigen, die tatsächlich von Bedeutung sein könnten. Das Verständnis der Hacker-Perspektive eröffnet Unternehmen die Möglichkeit, Resilienz über die traditionellen Best Practices hinaus aufzubauen, um eine mehrschichtige Verteidigungsstrategie zu entwickeln und hartnäckige Hacker in Schach zu halten.

David “Elch” Wolpoff ist Mitbegründer und CTO bei Randori.

Weitere Einblicke der InfoSec Insider-Community von Threatpost finden Sie auf unserer Microsite.

Einige Teile dieses Artikels stammen aus:
threatpost.com