Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
demiguise — HTA-Verschlüsselungstool für RedTeams | Kitploit
Tools/GitHubGitHub/nccgroup/demiguise
Phishing-ToolsPayload-GenerierungIDS/IPS-UmgehungWebanwendungs-ExploitationRed Teaming
GitHubnccgroup/demiguise

demiguise

HTA-Verschlüsselungstool für RedTeams

Repository anzeigen
1.4k2467vor 4 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

Demiguise - HTA-Verschlüsselungstool

Als Open Source veröffentlicht von NCC Group Plc - http://www.nccgroup.trust/

Entwickelt von Richard Warren, richard [punkt] warren [at] nccgroup [punkt] trust

http://www.github.com/nccgroup/demiguise

Veröffentlicht unter AGPL, siehe LICENSE für weitere Informationen

Was macht es?

Ziel dieses Projekts ist es, .html-Dateien zu generieren, die eine verschlüsselte HTA-Datei enthalten. Die Idee ist, dass Ihr Ziel beim Besuch der Seite den Schlüssel abruft und die HTA dynamisch im Browser entschlüsselt und direkt an den Benutzer weitergeleitet wird. Dies ist eine Umgehungstechnik, um die von einigen Sicherheitsappliances implementierte Inhalts-/Dateityp-Inspektion zu umgehen. Dieses Tool ist nicht dafür ausgelegt, großartige HTA-Inhalte zu erstellen. Es gibt viele andere Tools/Techniken, die Ihnen dabei helfen können. Wobei es Ihnen helfen kann, ist, Ihre HTA überhaupt erst in eine Umgebung zu bringen und (wenn Sie Umgebungsschlüssel verwenden) zu vermeiden, dass sie in einer Sandbox ausgeführt wird.

Wie macht es das?

Dies wird erreicht, indem die HTA-Datei mit RC4 verschlüsselt wird und dann navigator.msSaveBlob verwendet wird, um die Datei zur Laufzeit zu "speichern" – anstatt die HTA direkt vom Server abzurufen. Das bedeutet, dass es zu keinem Zeitpunkt eine HTTP-Anfrage/-Antwort gibt, die Ihre HTA-Datei im Klartext enthält – der Proxy sieht lediglich eine text/html-Datei mit Ihrem verschlüsselten Blob. In der neuesten Version von Edge führt dies dazu, dass der Benutzer aufgefordert wird, die HTA "auszuführen".

Obwohl dies nicht das Hauptziel dieses Tools ist, gibt es ein paar Payload-Optionen für die zugrunde liegende HTA. Jede Option verwendet unterschiedliche Techniken, die zuvor von Matt Nelson, Matthew Demaske, Ryan Hanson und Etienne Stalmans dokumentiert wurden. Der Vorteil dieser Techniken ist, dass Ihr Code nicht als Kindprozess von mshta.exe ausgeführt wird. Wie bereits erwähnt, ist der Inhalt der HTA nicht das Hauptziel dieses Tools. Ich empfehle Ihnen, das HTA-Template zu ändern, um Ihren eigenen Code einzufügen :)

Wie führe ich es aus?

Führen Sie die Datei demiguise.py aus und geben Sie Ihren Verschlüsselungsschlüssel, den Payload-Typ, den Ausgabedateinamen und den Befehl an, den die HTA ausführen soll.

Beispiel: python demiguise.py -k hello -c "notepad.exe" -p Outlook.Application -o test.hta

Umgebungsschlüssel

Um Sandboxen zu umgehen, sollten Sie Ihren Schlüssel nicht direkt in die HTA einbetten. Stattdessen sollten Sie diesen dynamisch aus der Umgebung des Ziels beziehen. Ein Beispiel hierfür könnte die Verwendung der externen IP-Adresse des Clients als Schlüssel sein. Der Vorteil ist, dass die HTA nicht entschlüsselt wird, wenn der Code in einer Sandbox eines Drittanbieters ausgeführt wird. Tatsächlich wird nicht einmal der Dateiname entschlüsselt, sodass niemand weiß, was Ihr Payload ist/macht :)

Einige Beispiele für Umgebungsschlüssel sind in examples/externalip.js und examples/virginkey.js angegeben.

Bonus

Da das Tool eine HTML-Datei mit JavaScript ausgibt, können Sie dieses JS einfach überall hosten, wo Sie möchten. Das bedeutet, dass Sie, wenn die Website Ihres Kunden anfällig für Reflected-XSS ist, dies nutzen können, um Ihre HTA-Datei von ihrer (hochvertrauenswürdigen) Domain auszuliefern.

Außerdem blockiert Outlook .html-Anhänge standardmäßig nicht, und einige andere Anwendungen auch nicht – lassen Sie Ihrer Fantasie freien Lauf! :)

Erkennung

Derzeit wird es auf VT nicht erkannt:

https://www.virustotal.com/en/file/24b86ee6210b2abc446021feacfe25502b60403455aa24a32c80b2e7b0f81a70/analysis/1499880541/

Verteidigung

Obwohl Verschleierungstechniken schwer zu signieren sein können, besteht eine Möglichkeit, sich gegen HTA-Angriffe zu verteidigen, darin, zu verhindern, dass die HTA selbst überhaupt ausgeführt werden kann. Dies kann entweder durch die Verwendung von Software Restriction Policy (SRP), Device Guard (unter Windows 10 und Server 2016) oder durch Ändern des Standard-Dateihandlers für .hta-Dateien erreicht werden.

Bitte beachten Sie, dass diese Änderungen möglicherweise die Ausführung von Software beeinträchtigen können, die auf HTA-Ausführung angewiesen ist. Daher wird empfohlen, eine Änderung in Ihrer eigenen Umgebung vollständig zu testen.

Verwendung von SRP:

Ändern des Standard-Dateihandlers:

root@kitploit:~
ftype htafile=%SystemRoot%\system32\NOTEPAD.EXE %1

Rückgängig machen (x64):

root@kitploit:~
ftype htafile=C:\Windows\SysWOW64\mshta.exe "%1" {1E460BD7-F1C3-4B2E-88BF-4E770A288AF5}%U{1E460BD7-F1C3-4B2E-88BF-4E770A288AF5} %*

FAQ

  • Wird das nicht auf die Festplatte geschrieben?
    • Tests in der neuesten Version von Edge zeigen, dass dies nur in der gleichen Weise "auf die Festplatte geschrieben" wird wie bei der Auslieferung einer regulären HTA. Es landet ohnehin als temporäre Datei auf der Festplatte.
  • Warum sollte ich das verwenden, wenn ich bereits eine Sandbox-Erkennung für $produkt habe, indem ich den Domain-Beitrittsstatus, Drucker usw. überprüfe?
    • Das Ziel des Tools ist es, von vornherein die Ausführung in einer Sandbox zu vermeiden. Wenn Sie Ihre Schlüssel klug wählen, wird die HTA nicht einmal korrekt entschlüsselt, und $produkt wird nicht einmal wissen, dass es sich um eine HTA-Datei handelt – das bedeutet, sie kann von der Sandbox nicht ausgeführt werden.
  • Wie finde ich eine Umgebungsschlüsselquelle, ohne zuerst Zugriff auf das Zielnetzwerk zu haben?
    • Dies bleibt als Übung für den Leser, aber dies kann oft durch gute OSINT-Aktivitäten entdeckt werden. Wenn Sie Fingerprinting-Kampagnen durchführen, schauen Sie sich WebFEET und BeEF zur Inspiration an.

Grüße / Vorarbeiten

  • Matt Nelson - WbemScripting.SWbemLocator & ShellBrowserWindow COM-Ausführungstechniken
  • Matthew Demaske - WbemScripting.SWbemLocator COM-Ausführung PoC
  • Ryan Hanson - Excel.Application.RegisterXLL COM-Ausführungstechnik
  • Etienne Stalmans - Outlook.Application.CreateObject COM-Ausführungstechnik
  • Brandon Arvanaghi und Chris Truncer's CheckPlease-Tool.
  • Das Empire Project
Tool herunterladen