Infrastruktureindringung über RTF
Inhaltsverzeichnis:
Lassen Sie uns zu einem Angriffsstadium übergehen, das als „Delivery“ innerhalb der Lockheed Martin Cyber Kill Chain bekannt ist.Über diese Phase lässt sich viel sagen, aber heute werde ich einfach die Analyse einer Probe teilen, die ich kürzlich zur Analyse erhalten habe. Die Probe erregte meine Aufmerksamkeit aufgrund ihrer Einfachheit auf der einen Seite und ihrer Raffinesse auf der anderen. Wir können den Autoren definitiv keinen Mangel an Einfallsreichtum und Vorstellungskraft vorwerfen.
Lass uns anfangen.
Hier sehen wir eine Standard-E-Mail mit einer angehängten Word-Datei:
Eine der Websites warnt vor einem solchen E-Mail-Betrug (Email-Betrug), und bietet weitere Details:
Lassen Sie uns einen genaueren Blick auf die Feinheiten dieser Intrusion-Methode werfen und wie das Öffnen einer einzigen E-Mail katastrophale Folgen für Ihr Unternehmen haben könnte.Zuerst liefern wir diese Datei in unser improvisiertes Labor, wo wir sie im Detail analysieren werden. Als erster Schritt müssen wir das Dokument auf vorhandene Makros überprüfen. Wir können verschiedene Toolkits nutzen, um diese Operation durchzuführen, und heute verwenden wir OLETOOLS, das OLEVBA, Werkzeug für die folgenden Operationen enthält:
- Erkennen von VBA-Makros in MS Office 97-2003 und 2007+ Dateien
- Extrahieren des VBA-Makro-Quellcodes
- Erkennen von autoausführbaren Makros
- Erkennen verdächtiger VBA-Schlüsselwörter, die häufig von Malware verwendet werden
- Entschlüsseln und Dekodieren von mit Hex/Base64/StrReverse/Dridex verschleierten Zeichenfolgen
- Extraktion von IOCs/Mustern von Interesse wie IP-Adressen, URLs, E-Mail-Adressen und ausführbare Dateinamen
- Scan mehrerer Dateien und Probensammlungen (Wildcards, rekursiv)
- Triage-Modus für eine Zusammenfassungsansicht mehrerer Dateien
- Scannen von Malware-Beispielen in kennwortgeschützten Zip-Archiven
- Python API zur Verwendung von oleVBA aus Ihren Anwendungen
olevba.py 750786446.doc > macros.txt
Als Ergebnis wird die Datei macros.txt
erstellt, die alle Makros aus dem untersuchten Dokument enthält.
Sehen wir uns an, was dieses Word-Dokument verbirgt:Natürlich wird kein vernünftiger Programmierer Funktionen und Variablen in einer solchen Weise benennen, es sei denn, sie versuchen, ihre Ziele zu verschleiern.
Hier ist eine schematische Darstellung der Operationen dieser Makros, damit Sie diese Menge an Symbolen besser verstehen können:
Jetzt sehen wir klar, dass 90 % der angezeigten Operationen Müll sind, erstellt, um einen Analysten zu verwirren und die Makro-Forschung zu verkomplizieren. Wenn wir das Schema von «überschüssigen» Operationen befreien, erhalten wir ein klares Bild davon, wie ein solches Makro funktioniert.
Also, was versucht das Makro in Wirklichkeit zu tun?
- Sobald die DOC-Datei geöffnet wird, findet das Makro den Standort des temporären Ordners über Umgebungsvariablen. Dann speichert es sich selbst in diesem Ordner als RTF unter dem Namen BYFE.RTF.
- Danach wiederholt es die gleiche Operation, aber unter Verwendung eines anderen Namens – JWUD.RTF. Dieser Vorgang ist nötig, um die Datei BYFE.RTF für weitere Operationen freizugeben, da, solange Microsoft Word sie „hält“, niemand auf diese Datei außer im „Nur-Lese“-Modus zugreifen kann. Bald werden wir sehen, dass das Makro besondere Pläne für diese Datei hat.
- In diesem Stadium führt das Makro die Datei BYFE.RTF im „unsichtbaren“ Modus aus.
Hier muss ich unser Thema verlassen und Ihnen über ein besonderes Merkmal von RTF-Dateien erzählen:
Sie können jeder RTF-Datei ein beliebiges Objekt anhängen, sogar Musik oder ausführbare Dateien. Wenn ein Benutzer eine Datei mit einem solchen Objekt öffnet, wird das Objekt in den Temp-Ordner extrahiert. Und es wird solange dort sein, wie es an die RTF-Datei angehängt ist, bis das Dokument geschlossen wird. Das Wichtigste ist, dass es von irgendetwas von außen verwendet werden kann.
Lassen Sie uns ein Experiment durchführen:- Wir erstellen eine RTF-Datei
- Dann fügen wir den Standardrechner (
calc.exe
) als Objekt hinzu:
- Lassen Sie uns dieses Dokument schließen und den Ordner %temp% öffnen
- Jetzt leeren wir den Ordner und öffnen mit Microsoft Word unser
test.rtf
:
- Lassen Sie uns den Rechner ausführen, um seine Funktionsfähigkeit zu beweisen:
- Wenn die RTF-Datei geschlossen wird, verschwindet calc.exe spurlos
- Wir erstellen eine RTF-Datei
- Jetzt verstehen wir, warum Angreifer RTF-Dateien verwenden und warum sie eine 2-sekündige Pause benötigen. Sie brauchen diese Zeit, um ihr „Objekt“ in unseren Temp-Ordner zu platzieren.
- Danach wird ein Objekt ausgeführt (wie wir es mit einem Rechner getan haben) und wie wir später sehen werden, lautet der Name unseres Objektes
s3.tmp
:
Angreifer benötigen eine 3-sekündige Pause, damit das „Objekt“ seine Aufgaben abschließen kann. In unserem Fall handelt es sich bei diesem „Objekt“ um einen Downloader/Dropper, dessen Aufgaben Kommunikations von einem Kontrollzentrum und der Erhalt weiterer Anweisungen sind. In unserem Beispiel kommunizierte es mit54.225.64.111
–hxxp://api.ipify.org:80/
. Auf der VirusTotal-Website können wir einige ungewöhnliche Aktivitäten an dieser IP-Adresse sehen, die Ende April – Anfang Mai 2016 begannen.https://www.virustotal.com/ru/ip-address/54.225.64.111/information/
- Schließlich, die letzte Phase. Das Makro schließt die RTF-Datei, was das Verschwinden des Droppers verursacht. Der Auftrag ist abgeschlossen. Die Intrusion ist beendet. Alle Spuren sind verwischt.
Fazit:
- Immer mehr „Sandboxes“ für die Unternehmensperimeter werden in der Lage, E-Mails zu durchsuchen und solche Anhänge zu dekonstruieren, um bösartige Aktivitäten zu erkennen und das Risiko von Angriffen zu verringern.
- Eine manuelle und detaillierte Analyse von Spam, der von Spamfiltern erwischt wird (Malware-Reverse-Engineering), ist sehr wichtig. Dies kann Ihnen helfen, wichtige IOCs zu finden, die in Regeln für Überwachungssysteme verwendet werden können, um Fälle solcher E-Mails zu verfolgen, die das Firmennetz durchdrungen haben. In unserem Beispiel wäre dies eine IP-Adresse. Um Ihre Organisation zu sichern, müssen Sie sie auf Firewalls blockieren und alle Verbindungsversuche überwachen. Dies ermöglicht es Ihnen, kompromittierte Arbeitsstationen zu entdecken und die Infrastrukturwartung zu starten. Außerdem kann es schützen, wenn Ihr Spamfilter eine E-Mail mit Malware übersieht und ein Benutzer sie öffnet – Ihre Firewalls werden bereit sein, jegliche Kommunikation zwischen der Malware und ihrem Kontrollzentrum zu blockieren.
- Ein Dropper ist in der Regel für das Unternehmens-Antivirus „unsichtbar“. Wenn Sie ein entdecktes Beispiel an den Antivirus-Anbieter senden, können sie es zu ihren Signaturen hinzufügen, um kompromittierte Arbeitsstationen aufzudecken.
Ich hoffe, dieser Artikel ist nützlich und ich warte auf Ihr Feedback.