注: Docker イメージは今後数週間以内にリリースされる予定です。
Spidex は継続的な偵察スキャナーであり、ネットワークへの暴露を証明することを優先します。大規模なポート指向のスキャンを実行し、インターネットに接続されているすべてのデバイスから情報を収集します。
このエンジンは、引数として受け取った IP アドレスを大規模に分析する役割を果たします。開いているポート、地理的位置、Web テクノロジー、バナーなど、各ターゲットに関する公開情報を収集します。
また、実行時間、検出されたデバイス、開始/終了日を含む、スキャン サイクルごとのレポートも保存されます。
スレッドとキューを実装すると、スキャン中のパフォーマンスが向上します。このようにして、リクエストは並行して送信され、各サイクルの実行時間が大幅に短縮されます。現在、スレッド数は 450/500 に制限されています。
options:
-h, --help show this help message and exit
-r RANGE, --range RANGE
Start IPv4 address
-t THREADS, --threads THREADS
Number of threads [Default: 50]
-f, FILE, --file File path with IPv4 ranges
-ti TIMEOUT, --timeout TIMEOUT
Socket timeout [Default: 0.5]
-p, --top-ports Scan only 20 most used ports
-a, --all-ports Scan 1000 most used ports
-c CUSTOM [CUSTOM ...], --custom-ports CUSTOM [CUSTOM ...]
Scan custom ports directly from terminal
-l, --logs Add a log file, useful in debugging
デフォルトでは、最も使用されているポートを含む単一の IPv4 アドレス範囲のみをスキャンします。
python3 engine.py -r 192.168.0.0,192.168.0.255 -t 150 --top-ports
複数の IPv4 アドレス範囲と秒単位のソケット タイムアウトを含むテキスト ファイルからスキャンします。
python3 engine.py -m ranges.csv -t 200 -ti 5 --all-ports
CIDR、カスタム ポート、およびログ オプションを使用してスキャンします。
python3 engine.py -r 192.168.0.0/255 -t 350 -C 80 21 22 --logs
これは、検索エンジンから送信された結果を保存し、その結果に対してあらゆる操作を実行できる Flask アプリケーションで構成されています。データベースとして MongoDB を使用します。データが構造化されていないため、理想的です。
方法 | ルート | 説明 |
---|---|---|
役職 | API/送信/デバイス | 単一の結果を送信する |
得る | API/デバイス | すべての結果を取得する |
得る | API/デバイス/IP | IPアドレスによる単一の結果の取得 |
消去 | API/削除/デバイス/IP | 1 つ削除 |
役職 | API/送信/レポート | レポートスキャンを送信する |
得る | API/レポート | すべてのレポートを取得する |
両方のコンポーネントのデプロイメントは、インストールを容易にし、依存関係による環境の汚染を避けるために Docker を使用して実行されます。イメージは DockerHub からダウンロードできます。
基本的なデプロイの場合、Docker Compose ファイルで各イメージの環境変数を設定します。
MONGO_INITDB_ROOT_USERNAME: USERNAME
MONGO_INITDB_ROOT_PASSWORD: PASSWORD
DB_SERVER_NAME: MONGODB_SERVER
DB_USERNAME: MONGODB_USER
DB_PASSWORD: MONGODB_PASSWORD
SERVER_ADDRESS: API_SERVER
Elasticsearch と Kibana を統合すると、グラフィカル インターフェイスを使用してデータを効率的に視覚化し、操作できるようになります。
現在、プロジェクトにはデータを自動的に挿入する方法がありません。ただし、Mongo-to-elastic-dump などのツールを使用すると、スキャン サイクルが完了した後にローカル マシンに興味深いグラフを生成できます。
アイデアや将来の機能がある場合は、このプロジェクトを引き続き素晴らしいものにするために、お気軽に参加してください。
このプロジェクトは教育および倫理テストのみを目的として作成されています。事前の相互同意なしに、ターゲットを攻撃するためにこのソフトウェアを使用することは違法です。適用されるすべての地方法、州法、および連邦法に従うのはエンド ユーザーの責任です。開発者は、このプログラムによって引き起こされた誤用または損害に対して一切の責任を負いません。
アパッチ2.0