ChromeAlone:ステルスブラウザ・インプラントがセッションを窃取し、YubiKey をフィッシング

Image

ChromeAlone は、Cobalt Strike や Meterpreter のような従来型インプラントの代わりとして使用できるブラウザ・インプラントです。このリポジトリは、管理コンソールの生成、インフラのデプロイ、そしてターゲット上で実行するための PowerShell サイドローダースクリプトを作成する、シンプルなビルドプロセスを提供します。

インストール後、各 ChromeAlone インプラントは次の機能を提供します:

  • ホスト上での SOCKS TCP プロキシの提供
  • ブラウザセッションの窃取および認証情報の取得
  • Chrome からホスト上で実行ファイルを起動
  • YubiKey や Titan Security Key のような物理セキュリティトークン向け WebAuthn リクエストのフィッシング
  • Chromium の組み込み機能のみで実装された、EDR 耐性のあるホスト上での永続化手法

オペレーター向け手順

ChromeAlone がロードされると、output/client/index.html を開くことで、接続されている任意のホストを確認できます。この Web アプリは、デプロイ済みの BATTLEPLAN リレーインスタンスに接続するよう事前設定されています。デフォルトでは、リレーはファイアウォール設定により、サーバーをデプロイした IP からの 1080~1181 番ポートへの制御アクセスのみを許可しています。これを変更したい場合は、EC2 インスタンスのネットワーク設定を更新し、追加のマシンを許可する必要があります。

ほとんどのコマンドは WebUI から実行できます。例:

  • 履歴と Cookie のダンプ(Quick Commands セクション経由。Execute Command セクションでターゲットエージェントを選択する必要があります)
  • 認証情報の取得(Captured Data タブに表示されます)
  • WebAuthn リクエストの強制(Execute Command セクション経由)
  • ファイルシステムの読み取り(File Browser タブ経由)
  • シェルコマンドの実行(Interactive Shell タブ経由)

主な例外は SOCKS プロキシです。感染した各ホストにはサーバー用の一意の SOCKS ポートが割り当てられており、これは Agent Information セクションで、各エージェントの Port フィールドとして確認できます。割り当てられたポートと、output/client/config.js に保存されている admin 認証情報を組み合わせることで、ホスト固有の SOCKS プロキシを構成できます。

例えば、あるエージェントのポートが 1081、ドメインが chrome.alone、ユーザー名が admin(これは常に同じ)、パスワードが thisisnotarealpassword だとします。以下は使用例です:

proxychains -q socks5 admin:[email protected]:1081 curl http://ifconfig.me
xfreerdp /cert:ignore /v:<target RDP host> /u:<target RDP username> /proxy:socks5://admin:[email protected]:1081
curl -x socks5h://chrome.alone:1081 -u "admin:thisisnotarealpassword" http://ifconfig.me

インストール

翻訳元: https://meterpreter.org/chromealone-stealthy-browser-implant-steals-sessions-and-phishes-for-yubikeys/

ソース: meterpreter.org