OpenOSINT/OpenOSINT
AI-powered OSINT agent with interactive REPL, MCP server, and CLI. 20 tools. Works with Claude, GPT-4, or local models. For authorized security research only.
OpenOSINT – AI駆動のOSINTアシスタント
概要 – OpenOSINTは、セルフホスト型のMITライセンスのPythonパッケージで、21の公開情報インテリジェンス(OSINT)ユーティリティを自然言語インターフェースの背後にラップします。LLM(Claude、Ollama、またはOpenAI互換モデル)は、どのツールを実行するかを決定する「エージェント」として機能し、ツールを実行し、結果を簡潔な調査レポートに連鎖させます。同じツールセットには、以下を介してアクセスできます:
- 対話型REPL(
openosint)、 - CLI(
openosint email …)、 - ブラウザベースのチャットUI(
openosint web)、または - 任意のMCP互換クライアントが呼び出すことができる Model Context Protocol(MCP) サーバー。
主な機能
| 機能 | 詳細 |
|---|---|
| AI駆動のツール連鎖 | ターゲットを平易な英語で説明するだけで、LLMが関連するOSINTツールを選択し、実行し、結果をまとめ上げます。 |
| 21のモジュラーツール | メール、ユーザー名、漏洩、WHOIS、IP、サブドメイン、DNS、ドーク、ライブドーク検索、ペーストビン、電話、Shodan、VirusTotal、Censys、IP2Location、AbuseIPDB、GitHub、RDAP、GDELT地理ニュース、URLスクレイピング、フットプリント抽出。 |
| 3つのAIバックエンド | Anthropic Claude(デフォルト)、ローカルOllama、または任意のOpenAI互換エンドポイント(LiteLLM、vLLM、LM Studioなど)。 |
| MCPサーバー | パッシブツール(デフォルトで20個)をオープンソースのModel Context Protocolを介して公開します。openosint-mcpで起動できます。 |
| パッシブデフォルトモード | サードパーティのAPIを照会するか、ローカルで計算するツールのみが提供されます。ターゲットのインフラストラクチャに接触する「アクティブ」ツールは、明示的に有効にしない限り非表示になります(--allow-active)。 |
| 並列実行 | --parallelは、asyncio.gather()を使用して独立したツールを同時に実行します。 |
| 自動レポート | 各調査の後、Markdown(およびオプションでPDF)レポートがreports/の下に保存されます。 |
| セッション履歴 | REPLセッションは~/.openosint/history/に保存され、openosint historyでリスト表示できます。 |
| ウェブUI | ストリーミングLLM出力、ツールカード、ライト/ダークテーマを備えたブラウザベースのチャット。 |
| クラウドオプション | 同じツールが従量課金制のApify Actorsとして提供されます。ライブデモはhttps://demo.openosint.techで利用可能です。 |
開始方法
# パッケージをインストール(Python 3.9+)
pip install openosint
# デフォルトのAI REPLを開始(Anthropicキーがある場合はClaudeが使用されます)
openosint
# またはウェブUIを起動
openosint web
# AIなしで単一のツールを実行
openosint email target@example.com
使用予定のサービス(例:HaveIBeenPwned、Shodan、VirusTotal、IP2Location、Bright Dataなど)のAPIキーが必要です。キーは、ツールごとのドキュメントに記載されているように、環境変数を介して渡されます。
ツールレベルの概要(抜粋)
search_email– holeheを使用して、メールにリンクされたソーシャルアカウントを一覧表示します(ノイズが多く、デフォルトではオフ)。search_username– sherlockを使用して、400以上のサイトでユーザー名をプローブします(ノイズが多く、デフォルトではオフ)。search_breach– HaveIBeenPwnedに漏洩露出を照会します。search_whois–python-whoisを介してWHOISデータを取得します。search_ip– ipinfo.ioを介したIP地理位置情報。search_dns–dnspythonを使用したDNSレコード検索。DKIMプロービングはアクティブモードでのみ有効です。search_shodan、search_virustotal、search_censys、search_abuseipdb– それぞれのAPIに対する読み取り専用ルックアップ。search_dorks_live/search_footprint– Bright Dataを介したGoogle SERPクエリ(パッシブですが、ターゲットのクエリはBright Dataに送信されます)。scrape_url– Bright DataのWeb Unlockerを介してURLをフェッチします(ターゲットに接触するため、デフォルトでは無効)。
安全性と制限
- パッシブモードは、誤ってターゲットのサーバーにヒットしないように保護します。アクティブツールは明示的に有効にする必要があります。
- 暴走を防ぐため、各調査は15回のツール呼び出し(
investigate_multiでは30回)に制限されています。 - すべてのサードパーティAPI呼び出しは、それぞれのプロバイダーに表示されます。READMEは、「パッシブはプライベートではない」と強調しています。
- 法的免責事項:許可を得たターゲットに対してのみ使用してください。
インストールとライセンス
- PyPIからインストール可能(
pip install openosint)。 - MITライセンス(
LICENSEを参照)。 - プロジェクトは、別途インストールせずに
uvxで実行できるMCPサーバーバイナリ(openosint-mcp)も公開しています。
結論 – OpenOSINTは、セキュリティアナリストが自然言語を通じて一連の公開情報ツールを駆動できる、本格的でオープンソースのAI拡張OSINTプラットフォームです。LLMベースのオーケストレーション、柔軟なMCP API、セルフホストおよびクラウドホストの両方の実行パスを組み合わせており、自動インテリジェンスワークフローの有用な構成要素となっています。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト