
自動化されたWebスクリーンショットツール。偵察用途で、サイトのビジュアル、サーバーヘッダーを取得し、デフォルト認証情報を識別します。NmapやNessus XMLを含む複数の入力形式に対応。
EyeWitness はウェブサイトのスクリーンショットを撮影し、サーバーヘッダー情報を提供し、既知のデフォルト認証情報を特定するために設計されています。今後はChromiumブラウザを採用し、信頼性の向上とインストールの容易化を実現しました。
EyeWitnessはすべてのインストールでPython仮想環境を使用するようになりました。これにより以下が実現されます:
eyewitness-venv/ディレクトリを削除するだけで全て削除eyewitness-venv/ディレクトリに分離されたPythonEyeWitness/
├── eyewitness-venv/ # 🔒 仮想環境(分離されたPythonパッケージ)
│ ├── bin/activate # Linux/macOS 有効化スクリプト
│ └── Scripts/activate.bat # Windows 有効化スクリプト
├── Python/
│ └── EyeWitness.py # 📜 メインスクリプト(仮想環境内で実行)
└── setup/ # セットアップスクリプトと要件
🔥 新機能: EyeWitnessはPython仮想環境を使用することで、全プラットフォームで競合ゼロ、確実なインストールを実現!
注意: Dockerサポートは現在開発中です。当面は以下のネイティブインストールオプションをご利用ください。
Python仮想環境を使用した自動セットアップ:
# 1. PowerShellを管理者として開く
# 2. EyeWitnessディレクトリに移動
cd path\to\EyeWitness\setup
# 3. セットアップスクリプトを実行(仮想環境を作成)
.\setup.ps1
# 4. 仮想環境を有効化してインストールをテスト
cd ..
eyewitness-venv\Scripts\activate.bat
python Python\EyeWitness.py --single https://example.com
インストールされるもの:
Python仮想環境を使用した本番環境対応セットアップ:
# 1. セットアップディレクトリに移動
cd EyeWitness/setup
# 2. セットアップスクリプトを実行(仮想環境を作成)
sudo ./setup.sh
# 3. 仮想環境を有効化してインストールをテスト
cd ..
source eyewitness-venv/bin/activate
python Python/EyeWitness.py --single https://example.com
インストールされるもの:
🎯 メリット:
サポートされているLinuxディストリビューション:
HomebrewベースのPython仮想環境セットアップ:
# 1. HomebrewでChromeをインストール
brew install --cask google-chrome
# 2. セットアップディレクトリに移動してセットアップを実行
cd EyeWitness/setup
sudo ./setup.sh
# 3. 仮想環境を有効化してインストールをテスト
cd ..
source eyewitness-venv/bin/activate
python Python/EyeWitness.py --single https://example.com
インストールされるもの:
セットアップスクリプトを実行後、仮想環境を有効化してEyeWitnessを実行します:
🐧 Linux/macOS:
# 1. 仮想環境を有効化
source eyewitness-venv/bin/activate
# 2. EyeWitnessを実行(分離環境内で実行中)
python Python/EyeWitness.py --single https://example.com
python Python/EyeWitness.py -f urls.txt
python Python/EyeWitness.py -x nmap_scan.xml
python Python/EyeWitness.py -f urls.txt -d /path/to/output
# 3. 終了したら仮想環境を無効化
deactivate
🪟 Windows:
# 1. 仮想環境を有効化
eyewitness-venv\Scripts\activate.bat
# 2. EyeWitnessを実行(分離環境内で実行中)
python Python\EyeWitness.py --single https://example.com
python Python\EyeWitness.py -f urls.txt
python Python\EyeWitness.py -x nmap_scan.xml
python Python\EyeWitness.py -f urls.txt -d C:\path\to\output
# 3. 終了したら仮想環境を無効化
deactivate
# 最初に仮想環境を有効化
source eyewitness-venv/bin/activate # Linux/macOS
eyewitness-venv\Scripts\activate.bat # Windows
# サンプル設定ファイルを作成
python Python/EyeWitness.py --create-config
# 設定ファイルを使用
python Python/EyeWitness.py -f urls.txt --config ~/.eyewitness/config.json
# 最初に仮想環境を有効化
source eyewitness-venv/bin/activate # Linux/macOS
eyewitness-venv\Scripts\activate.bat # Windows
# スクリーンショットを撮らずにURLを検証
python Python/EyeWitness.py -f urls.txt --validate-urls
# 検証をスキップ(注意して使用)
python Python/EyeWitness.py -f urls.txt --skip-validation
# 最初に仮想環境を有効化
source eyewitness-venv/bin/activate # Linux/macOS
eyewitness-venv\Scripts\activate.bat # Windows
# システムに応じてスレッド数を調整(デフォルト: 自動検出)
python Python/EyeWitness.py -f urls.txt --threads 5
# 低速接続向けにタイムアウトを増やす
python Python/EyeWitness.py -f urls.txt --timeout 30
# 遅延とジッターを追加
python Python/EyeWitness.py -f urls.txt --delay 2 --jitter 5
# プロキシを使用
python Python/EyeWitness.py -f urls.txt --proxy-ip 127.0.0.1 --proxy-port 8080
# カスタム出力ディレクトリ
python Python/EyeWitness.py -f urls.txt -d /path/to/output
# 以前のスキャンを再開
python Python/EyeWitness.py --resume /path/to/output/ew.db
EyeWitnessはシステムリソースを自動検出し、それに応じて調整します:
好みの設定を保存する設定ファイルを作成します:
{
"threads": 10,
"timeout": 30,
"delay": 0,
"jitter": 0,
"user_agent": "Custom User Agent",
"proxy_ip": "127.0.0.1",
"proxy_port": 8080,
"output_dir": "./sessions",
"prepend_https": false,
"show_selenium": false,
"resolve": false,
"skip_validation": false,
"results_per_page": 25,
"max_retries": 2
}
Chromium/ChromeDriverが見つからない:
sudo ./setup.sh(setup/ディレクトリ内).\setup.ps1(setup\ディレクトリ内、管理者として実行)sudo ./setup.sh(setup/ディレクトリ内、brew install --cask google-chromeの後)仮想環境の問題:
接続タイムアウト:
--timeout 60高いメモリ使用量:
--threads 5権限エラー:
すべてのエラーには、具体的なトラブルシューティング手順が含まれています。例:
EyeWitnessが生成するもの:
report.html - スクリーンショット付きメインレポートscreens/ - スクリーンショット画像source/ - ページのソースコードew.db - 再開機能のためのSQLiteデータベースvenvモジュールサポート付き、ほとんどのPythonインストールに標準搭載)📝 注意: セットアップスクリプトがすべての依存関係を自動的に処理します。必要なのはPython 3.7以上と管理者権限のみです。
このフォークには大幅な近代化が含まれています:
E-Mail: GetOffensive [@] redsiege [dot] com
EyeWitnessはGNU General Public License v3.0の下でライセンスされています。