
EvilNekoは、コンテナのオーケストレーションを自動化し、レッドチーム向けにブラウザ・イン・ザ・ブラウザ(BITB)攻撃を運用可能にするプロジェクトです。Mr. d0x氏の研究に触発され、EvilNoVNCプロジェクトのアイデアを発展させたものです。
このプロジェクトの目標は、既存のオープンソースツールを改良し、単一のユーザー/セッションではなく複数のターゲット向けにインフラをスケールできるツールを構築することです。EvilNekoは、レッドチームにBITBテクニックを現実的にエミュレートする方法を提供し、ブルーチームがこれらのテクニックを検出する方法を見つけるのを支援します。
このツールは、nekoプロジェクトを使用して、WebRTC経由で操作できるブラウザを含むコンテナを作成します。設定に少し変更を加えるだけで、これらを使用してブラウザ・イン・ザ・ブラウザテクニックをエミュレートできます。
EvilNekoには現在独自のペイロードは含まれていないため、自分で用意する必要があります。Mythicエージェントを使用した例を見たい場合は、私のブログを参照してください。
EvilNekoは悪意のある目的のためのものではなく、テストの同意を得た環境に対する認可されたテストを目的としています。
EvilNekoはLinuxまたはMacOSで動作し、docker、docker-compose、flask、NGINXがインストールされている必要があります。
前述のとおり、展開済みのChrome拡張機能の形式で独自のペイロードを用意し、lures/extensionに配置する必要があります。
必要なサービスがインストールされたら、EvilNekoリポジトリをクローンしてEvilNeko.pyを実行します:
python EvilNeko.py
次に、公開ホスティングする場合はドメインを設定します。これは主に、ターゲットに送信するリンクを把握しやすくするためのもので、テスト用のデフォルトは127.0.0.1です:
EvilNeko> set_domain <your domain>
次に、nekoコンテナに開かせたいURLを設定します:
EvilNeko> set_url login.microsoft.com
次に、ターゲットに送信するコンテナを複数作成できます:
EvilNeko> create_lure 2
最後に、各ターゲットへのトラフィックをこれらのコンテナに適切にルーティングするFlaskおよびNGINXハンドラーを起動します:
EvilNeko> start_handler
コンテナを破棄するには、UUIDを渡すか"all"を使用します:
EvilNeko> destroy_lure all
終了すると、すべてのコンテナが破棄され、ハンドラーが停止します。