
ClickFix(ClearFake)ソーシャルエンジニアリング訓練のための軽量なセルフホスト型シミュレーションツール。現実的なルアーと無害なペイロードでクリップボードインジェクション攻撃を安全にシミュレートします。
「ClickFix」型ソーシャルエンジニアリング攻撃のための、軽量で自己完結型のシミュレーションツール。
このツールは、許可されたセキュリティ意識向上トレーニング専用です。 明示的な許可なくこのツールを使用してシステムやユーザーを標的にすることは、違法かつ非倫理的です。作者は本ソフトウェアの不正使用について一切の責任を負いません。
ClickFix(「ClearFake」または「Fake Update」とも呼ばれる)は、攻撃者が被害者を欺いて、偽のエラーを「修正」するために悪意のあるコマンド(通常はWindowsのファイル名を指定して実行ダイアログ)を手動で実行させるソーシャルエンジニアリング手法です。ユーザー自身が実行を開始するため、この手法は従来のセキュリティ対策をしばしば迂回します。
ClickFix トレーニングツールを使用すると、セキュリティチームはこれらの攻撃を安全にシミュレートして、従業員を訓練できます。
主な機能:
リポジトリをクローン:
git clone https://github.com/boredchilada/clickfix-simulator-2025.git
cd clickfix-simulator-2025
コンテナを起動:
docker-compose up -d
ツールにアクセス:
https://localhost/admin(ユーザー: admin、パスワード: changeme_please)https://localhost/s/teams_error?uid=test_user前提条件: Python 3.8+、pip、openssl(証明書用)。
依存関係をインストール:
python -m venv venv
source venv/bin/activate # またはWindowsでは venv\Scripts\activate
pip install -r requirements.txt
データベースを初期化:
flask init-db
証明書を生成(クリップボードAPIに必須):
mkdir certs
openssl req -x509 -newkey rsa:4096 -nodes -keyout certs/key.pem -out certs/cert.pem -days 365 -subj "/CN=localhost"
サーバーを実行:
python run.py
このツールはFlask(Python)で構築されており、データ保存にはSQLiteを使用しています。
run.py: メインのアプリケーションロジック、ルート、ペイロード生成。cloner.py: Webサイトをクローンしてトラップを注入するユーティリティ。templates/:
lures/: 全画面攻撃テンプレート。traps/: クローンサイトに注入されるHTMLフラグメント(ポップアップ/オーバーレイ)。scenarios/: クローンサイトの保存場所。static/: CSS、JS、画像。ユーザーが修正ボタンをクリックしたりペイロードを実行したりしたときにリアルタイムでアラートを受け取るには、WEBHOOK_URL環境変数を設定します。
対応形式: Slack、Discord、Microsoft Teams(Incoming Webhook)。
environment:
- WEBHOOK_URL=https://hooks.slack.com/services/T000/B000/XXXX
URLに?t=<trap_name>を追加することで、任意のキャンペーンのデフォルトトラップを上書きできます。
例: https://training.local/s/teams_error?uid=john&t=cloudflare
デフォルトでは、このツールはSQLite(training_log.db)を使用します。大規模なキャンペーンや負荷分散されたデプロイメントでは、SQLALCHEMY_DATABASE_URIを設定することでPostgreSQLやMySQLに切り替えることができます。
environment:
- SQLALCHEMY_DATABASE_URI=postgresql://user:pass@db_host:5432/clickfix
navigator.clipboard.writeText() APIはセキュアコンテキスト(HTTPSまたはlocalhost)を必要とします。このツールはネットワーク上の平文HTTPでは動作しません。docker-compose.ymlまたは.envでデフォルトの認証情報を変更してください。貢献を歓迎します! ガイドラインについてはCONTRIBUTING.mdをお読みください。
このプロジェクトはMITライセンスの下でライセンスされています。詳細はLICENSEファイルを参照してください。