
Offensive Lua.
Offensive Lua は、FFI(Foreign Function Interface)を使用して Lua で記述されたオフェンシブセキュリティおよびレッドチームスクリプトの包括的なコレクションです。これらのスクリプトは、Microsoft Windows 上の LuaJIT のパワーと柔軟性を活用して、高度なペネトレーションテストやレッドチーム運用を実行します。
Lua は、いくつかの戦略的利点により、ポストエクスプロイテーションおよびオフェンシブセキュリティスクリプティングに優れた選択肢です:
| Filename | Description |
|---|---|
| bin2hex.lua | バイナリを hex に変換して binrun.lua で使用する |
| binrun.lua | EXE の hex をランダムな場所に書き込み、実行する |
| bindshell.lua | TCP ポート 5000 でシェルをバインドする |
| ComputerDefaultsUACBypass.lua | ms-settings を介して UAC 制限をバイパスする |
| console.lua | コンソールアプリの例 |
| downloadexec.lua | HTTP 経由でダウンロードして実行する |
| downloadexec_UACbypass.lua | HTTP 経由でダウンロード、UAC バイパス、実行する |
| efspotato.lua | 不完全な efspotato |
| eventcode.lua | Windows イベントハンドラの例 |
| filewrite.lua | ファイルを書き込む |
| howami.lua | 常に whoami.exe、決して howami.lua ではない |
| keyboard_capture.lua | キーボード入力とキーストロークをキャプチャする |
| listprocess.lua | 実行中のプロセスを一覧表示する |
| memorysearch.lua | パスワードをメモリ内で検索する |
| memorysearch_stringdump.lua | プロセスメモリから文字列をダンプする |
| messagebox.lua | MessageBox の例 |
| microphone_capture.lua | マイクオーディオをキャプチャする |
| OffensiveLuaEmbedded.exe | デバッグ機能を備えた組み込み LuaJIT インタプリタ |
| regread.lua | レジストリから読み取る |
| regwrite.lua | レジストリに書き込む |
| regwritedel.lua | レジストリへの書き込みと削除 |
| rickroll.lua | URL でブラウザを開く |
| runcmd.lua | popen でコマンドを実行する |
| runcmd2.lua | os.execute でコマンドを実行する |
| runswhide.lua |
OffensiveLuaEmbedded.exe インタプリタは、レッドチーム運用およびオフェンシブセキュリティ開発に不可欠な高度なデバッグおよび実行機能を提供します。これらの機能により、オペレーターはスクリプトの動作を分析し、パフォーマンスを最適化し、敵対的な環境での問題をトラブルシューティングし、回避技術を開発できます:
Why Use Advanced Debugging?
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.
たとえば、現在の実行コンテキストから Microsoft Password Vault のすべての資格情報を読み取るには、次のコマンドを実行します:
.\OffensiveLuaEmbedded.exe vaultdump.lua
これは Offensive Lua のパワーを示しています。単一のコマンドで、Windows 資格情報ストアをダンプし、保存されたパスワード、トークン、認証データを抽出できます。このスクリプトは、FFI を介して Windows API を活用し、アプリケーションがユーザー資格情報を安全に保存するために使用する Password Vault にアクセスします。
LuaJIT をバイナリに埋め込んでスクリプトを実行するために使用できる、Visual Studio 2022 プロジェクトの例です。最新の LuaJIT ブランチを取得するには、git サブモジュールをチェックアウトする必要があります。
重要: ソースコード全体のコメントを読んで、埋め込みのニュアンスと回避すべき落とし穴を理解してください。コメントには、LuaJIT の埋め込みを成功させるための重要な実装詳細とベストプラクティスが含まれています。
Hacker House と Offensive Lua の詳細については、当社のウェブサイトをご覧ください:
これらのファイルは、3条項BSDライセンスの下で利用可能です。
| SW_HIDE で CreateProcess を介してコマンドを実行する |
| screenshot.lua | デスクトップのスクリーンショットをキャプチャする |
| screenshot_withhiddenwindows.lua | 非表示ウィンドウを含むスクリーンショットをキャプチャする |
| uac_bypass_bluetooth_win10.lua | Windows10 で Bluetooth を介して UAC をバイパスする |
| vaultdump.lua | Windows 資格情報マネージャーとパスワードボールトをダンプする |
| webcam_picture_directshow.lua | DirectShow を使用してウェブカメラの画像をキャプチャする |
| webcam_picture_simple.lua | シンプルな方法でウェブカメラの画像をキャプチャする |
| webcam_video_directshow.lua | DirectShow を使用してウェブカメラのビデオを録画する |
| webcam_video_simple.lua | シンプルな方法でウェブカメラのビデオを録画する |