
Offensives Lua.
Offensive Lua ist eine umfassende Sammlung von offensiven Sicherheits- und Red-Team-Skripten, geschrieben in Lua mit FFI (Foreign Function Interface). Diese Skripte nutzen die Leistungsfähigkeit und Flexibilität von LuaJIT unter Microsoft Windows, um fortgeschrittene Penetrationstests und Red-Team-Operationen durchzuführen.
Lua ist eine außergewöhnliche Wahl für Post-Exploitation- und offensive Sicherheitsskripte, dank mehrerer strategischer Vorteile:
Der OffensiveLuaEmbedded.exe-Interpreter bietet erweiterte Debugging- und Ausführungsfunktionen, die für Red-Team-Operationen und die Entwicklung offensiver Sicherheitslösungen unerlässlich sind. Diese Funktionen ermöglichen es Operateuren, Skriptverhalten zu analysieren, die Leistung zu optimieren, Probleme in feindlichen Umgebungen zu beheben und Umgehungstechniken zu entwickeln:
Warum erweitertes Debugging verwenden?
Offensive LuaJIT Debugger
Usage: OffensiveLuaEmbedded.exe [options] <script.lua> [args...]
Options:
--interactive, -i Enable interactive debugging mode.
--dump-bytecode, -d Create .lbin bytecode file with hexdump.
--trace, -t Trace every executed line.
--count, -c Track instruction samples.
--memory, -m Print memory summary after execution.
--vm, -v Instrument VM with timing and diagnostics.
--version Show version information.
--help, -h Show this help message.
Um beispielsweise alle Anmeldeinformationen aus Ihrem aktuellen Ausführungskontext im Microsoft-Passwort-Tresor auszulesen, führen Sie Folgendes aus:
.\OffensiveLuaEmbedded.exe vaultdump.lua
Dies demonstriert die Leistungsfähigkeit von Offensive Lua – mit einem einzigen Befehl können Sie den Windows-Anmeldeinformationsspeicher auslesen und gespeicherte Passwörter, Tokens und Authentifizierungsdaten extrahieren. Das Skript nutzt Windows-APIs über FFI, um auf den Passwort-Tresor zuzugreifen, den Anwendungen zur sicheren Speicherung von Benutzeranmeldeinformationen verwenden.
Ein Beispielprojekt für Visual Studio 2022, das zum Einbetten von LuaJIT in eine Binärdatei für die Ausführung von Skripten verwendet werden kann. Sie müssen die Git-Submodule auschecken, um den neuesten LuaJIT-Zweig zu erhalten.
Wichtig: Lesen Sie die Kommentare im gesamten Quellcode, um die Nuancen und Fallstricke der Einbettung zu verstehen und zu vermeiden. Die Kommentare enthalten kritische Implementierungsdetails und Best Practices für eine erfolgreiche LuaJIT-Einbettung.
Sie können mehr über Hacker House und Offensive Lua auf unserer Website erfahren:
Diese Dateien sind unter der 3-Klausel-BSD-Lizenz verfügbar.
| Dateiname | Beschreibung |
|---|
| bin2hex.lua | Konvertiert eine Binärdatei in Hex für binrun.lua |
| binrun.lua | Schreibt ein Hex einer EXE an einen zufälligen Ort und führt es aus |
| bindshell.lua | Bindet eine Shell auf TCP-Port 5000 |
| ComputerDefaultsUACBypass.lua | Umgeht UAC-Einschränkungen über ms-settings |
| console.lua | Beispiel für eine Konsolen-App |
| downloadexec.lua | Download & Ausführung über HTTP |
| downloadexec_UACbypass.lua | Download & UAC-Bypass & Ausführung über HTTP |
| efspotato.lua | Unvollständiges efspotato |
| eventcode.lua | Beispiel für einen Windows-Ereignishandler |
| filewrite.lua | Schreibt eine Datei |
| howami.lua | Immer whoami.exe, nie howami.lua |
| keyboard_capture.lua | Erfasst Tastatureingaben und Tastenanschläge |
| listprocess.lua | Listet laufende Prozesse auf |
| memorysearch.lua | Durchsucht den Speicher nach Passwörtern |
| memorysearch_stringdump.lua | Extrahiert Strings aus dem Prozessspeicher |
| messagebox.lua | MessageBox-Beispiel |
| microphone_capture.lua | Nimmt Mikrofon-Audio auf |
| OffensiveLuaEmbedded.exe | Eingebetteter LuaJIT-Interpreter mit Debugging-Funktionen |
| regread.lua | Liest aus der Registrierung |
| regwrite.lua | Schreibt in die Registrierung |
| regwritedel.lua | Schreibt und löscht in der Registrierung |
| rickroll.lua | Öffnet einen Browser mit einer URL |
| runcmd.lua | Führt einen Befehl per popen aus |
| runcmd2.lua | Führt einen Befehl per os.execute aus |
| runswhide.lua | Führt einen Befehl über CreateProcess mit SW_HIDE aus |
| screenshot.lua | Erfasst einen Desktop-Screenshot |
| screenshot_withhiddenwindows.lua | Erfasst einen Screenshot inklusive verborgener Fenster |
| uac_bypass_bluetooth_win10.lua | Umgeht UAC über Bluetooth unter Windows 10 |
| vaultdump.lua | Extrahiert Windows-Anmeldeinformationsverwaltung und Passwort-Tresor |
| webcam_picture_directshow.lua | Erfasst Webcam-Bild mit DirectShow |
| webcam_picture_simple.lua | Erfasst Webcam-Bild mit einfacher Methode |
| webcam_video_directshow.lua | Nimmmt Webcam-Video mit DirectShow auf |
| webcam_video_simple.lua | Nimmmt Webcam-Video mit einfacher Methode auf |