
プロジェクトの背景: このプロジェクトは、オフェンシブセキュリティ、並行処理、分散アーキテクチャの概念を示すポートフォリオ作品です。
オフェンシブセキュリティの世界に飛び込んだ初期の頃、私は Shodan のような主要な検索エンジンが何百万ものデバイスから情報をインデックス化する方法に常に魅了されていました。この概念が頭の中で回り続け、自分でシミュレートすることでその背後にあるエンジニアリングを理解する必要がありました。
Kimi はその好奇心の結果です。これは、外部攻撃対象領域の露出の分析を優先するように設計された継続的な偵察スキャナーです。インターネットに接続されたサービスから情報を収集するために、大規模なポート指向のスキャンを実行します。
私の目標は効率的なアーキテクチャを作成することでした。スレッドとキュー の実装は、スキャンサイクルあたりのパフォーマンスを最大化し、大規模なIP範囲の実行時間を大幅に短縮するように設計されました。
Kimi は重要な分野における概念実証として機能します。
並行処理: Python での スレッドとキュー の使用により、最大約500の同時ネットワークI/O操作を調整します。
疎結合アーキテクチャ: 分散システム(エンジン → API → DB)の設計により、スキャンの実行とデータの永続化を分離します。
ネットワーキング: TCP/UDPハンドシェイク と正確なタイムアウト管理のための低レベルソケットプログラミング。
NoSQLデータベース: 本質的に可変で非構造化されたスキャン結果を保存するための MongoDB の実装。
今日 Kimi を再訪することで、私の初期の作品に現代のエンジニアリングと倫理的な視点を適用できます。
技術的な進化: 最大の課題は Python での threading を習得することでした。今日では、最もスケーラブルな解決策は エンジンを非同期プログラミング(asyncio)に移行 して GIL のオーバーヘッドを回避し、並行処理をさらに拡大することだと認識しています。
倫理的な成熟: 最も重要な教訓は 職業的責任 です。このプロジェクトは好奇心主導の実験からデモンストレーションツールへと進化しました。Kimi は管理されたネットワークでの倫理的なテストに厳密に限定されており、法的で責任あるセキュリティ慣行への私のコミットメントを示しています。
システムは エンジン(スキャナー) と API(永続化) に分かれています。
MongoDB は主要な取り込みストアとして機能します。アーキテクチャは Elasticsearch / Kibana (ELK) との統合と互換性があるように設計されており、収集したデータの全文検索機能と分析的可視化を可能にします。
| シナリオ | コマンド例 | 説明 |
|---|---|---|
| 高速スキャン | python3 engine.py -r 192.168.0.0,192.168.0.255 -t 150 --top-ports | 150スレッドを使用して範囲をスキャンします。 |
デプロイ: プロジェクトはDockerで完全にコンテナ化されています。
ライセンス: Apache 2.0。
連絡先: [email protected]
法的免責事項: Kimi は教育目的および技術デモンストレーションのみのために提供されています。管理された環境以外での使用は、ユーザーの単独責任となります。
| カスタムCIDR | python3 engine.py -r 192.168.0.0/24 -t 350 -C 80 443 21 | 350スレッドを使用して特定のポートをスキャンします。 |