mcpField
O
OpenOSINT

OpenOSINT

ローカル
openosint.techセキュリティ1.8k6 日前に更新

OpenOSINT について

OpenOSINTは、セキュリティ研究者や分析者向けのOSINT調査エージェントです。自然言語で21種類のツールを連携し、受動的な調査を既定としながら、結果の根拠となるツール呼び出しを示します。

主な機能

  1. 01自然言語によるツール連携
  2. 0221種類の調査ツール
  3. 03受動モードが既定
  4. 04Markdown・PDFレポート
  5. 05REPL、CLI、ブラウザーUI

活用シーン

  1. 01ドメインやIPの露出調査
  2. 02漏えい情報や公開アカウントの確認
  3. 03インフラやDNSレコードの調査

MCP 対応

MCPサーバーは、互換性のあるAIクライアントに調査ツールを公開します。受動的なツールが既定で提供され、能動的なツールには明示的な有効化が必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"sonotommy-openosint": {
"command": "uvx",
"args": [
"openosint"
],
"env": {
"ANTHROPIC_API_KEY": "<ANTHROPIC_API_KEY>",
"HIBP_API_KEY": "<HIBP_API_KEY>",
"IPINFO_TOKEN": "<IPINFO_TOKEN>",
"IP2LOCATION_API_KEY": "<IP2LOCATION_API_KEY>",
"ABUSEIPDB_API_KEY": "<ABUSEIPDB_API_KEY>"
}
}
}
}
起動コマンドuvx openosint
設定が必要な環境変数
ANTHROPIC_API_KEYシークレットAnthropic API key — required for the AI agent REPL
HIBP_API_KEYシークレットHaveIBeenPwned API key for breach detection (search_breach tool)
IPINFO_TOKENシークレットipinfo.io token for higher IP lookup rate limits (search_ip tool)
IP2LOCATION_API_KEYシークレットIP2Location API key for enhanced IP intelligence (search_ip2location tool)
ABUSEIPDB_API_KEYシークレットAbuseIPDB API key for IP abuse reputation checks (search_abuseipdb tool)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiopenosint2.15.2

ツール

20

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
emailstringはい
json_outputbooleanいいえ結果を構造化 JSON として返します。

詳細

mcp-name: io.github.OpenOSINT/openosint

OpenOSINT

OpenOSINT

セキュリティ研究者やアナリスト向けのOSINT(オープンソースインテリジェンス)エージェントです。自然言語インターフェースから利用できる21種類の調査ツールに加え、MCP(Model Context Protocol)サーバーも備えており、MCP対応のAIクライアントから直接操作できます。

REPL、CLI、MCPサーバー、ブラウザーのWeb UIとして利用できます。

ツールの結果は実際の実行から得られ、各調査結果には、その結果を生成したツール呼び出しが表示されます。AIによる要約は検証が必要な手がかりであり、証拠ではありません。

リリース PyPI PyPI ダウンロード数 MITライセンス MCP MCPレジストリ IP2Locationのスポンサー提供 TestMu AIのスポンサー提供

このエンジンを基盤とするホスト版:

  • Monitor:ドメインのメール認証、TLS、セキュリティヘッダー、類似ドメインを定期的に外部からチェックし、状況が悪化した場合にメールで通知します。1ドメインまで無料です。
  • Diligence:英国企業およびLEIを持つすべての企業について、公式登録情報や制裁リストをもとにデューデリジェンスに役立つ情報を提供します。それぞれの情報には出典と取得時刻が示されます。

ドキュメント: https://openosint.tech/docs/

OpenOSINTは、公開情報を受動的に調査するオープンソースエンジンです。ホスト型製品はこのエンジンを基盤としており、以下はすべて無料で、MITライセンスのもとで提供されています。

セルフホスト(無料、MIT)

pip install openosint
# Grade a domain's external exposure A-F (no API key, no AI provider)
openosint exposure example.com

# Interactive AI REPL (default)
openosint

# Web interface
openosint web

ライブデモを試す → — Anthropic/OpenRouter/Ollamaのキーをお持ちください。登録は不要です。

使い方

REPLを起動して任意のターゲットを調査します。エージェントが実行するツールを判断し、調査結果に応じてツールを連鎖的に実行します。

openosint > investigate example.com

  -> search_dns('example.com')
  -> search_whois('example.com')
  -> search_rdap('example.com')

  Report saved -> reports/2026-05-11_14-32-11_report.md

機能

機能詳細
AI ツールの連鎖実行エージェントが調査結果に基づいてツールを選択し、連鎖させます。対象を自然な言葉で説明してください
21 個のモジュール型ツールメール、ユーザー名、漏えい情報、WHOIS、RDAP、IP、サブドメイン、検索演算子、ペーストサイト、電話番号、Shodan、VirusTotal、Censys、IP2Location、AbuseIPDB、GitHub、DNS、GDELT ニュースの地理情報、リアルタイム検索演算子検索、URL スクレイピング、SERP フットプリント
3 種類の AI バックエンドAnthropic Claude(デフォルト)、ローカルの Ollama、または OpenAI 互換エンドポイント(LiteLLM、vLLM、LM Studio など)
ネイティブ MCP サーバー21 個のツールのうち、16 個はパッシブで、デフォルトで有効です。サーバーはデフォルトで 20 個(この 16 個にグラフおよびバッチ処理用ヘルパー 4 個を加えたもの)、--allow-active を指定すると 25 個を一覧表示します(デフォルトでパッシブ)。uvx で実行でき、別途インストールする必要はありません
並列実行--parallel を指定すると、asyncio.gather() を使って関連するツールを並行して実行します
レポート各調査の後に PDF と Markdown を自動保存します(reportlab はオプション)
セッション履歴すべての REPL セッションは ~/.openosint/history/ に保存されます。openosint history で参照できます
Web UIストリーミング出力、ツールカード、ライト/ダークテーマに対応したブラウザベースの AI チャット

OpenOSINT の地球儀ビュー:チャットプロンプトから開始したエージェントの調査結果が、インタラクティブな 3D 地球儀上の点として表示されます。その点をクリックすると次の調査に移り、新しいエンティティがエンティティグラフに表示されます 調査結果は地球儀上にリアルタイムで表示されます。点をクリックすると次の調査に移れます。より高画質な MP4 を見る。

グラフ Web UI のデモ(合成データ):エンティティグラフエクスプローラーに、openosint:github と openosint:whois の各データセットで個別に観測された 2 つの Organization ノードが表示され、スコア 0.83 の破線の same_as 候補エッジで結ばれています。ノードをクリックするとサイドパネルが開き、各ステートメントのデータセット、抽出器、実行 ID、信頼度が表示されます。破線のエッジをクリックすると、人手レビュー用カードが開き、両方のエンティティの項目を比較します。一致する値は緑色、異なる値は琥珀色で表示され、スコアの算出に使用された名前一致機能の説明も表示されます。レビュー担当者が Accept をクリックすると、グラフがその場で更新され、2 つのエンティティがクラスタ化され、エッジが実線の same_as 確認済みエッジになります

決定論的な合成データのデモです。表示されるエンティティはすべて架空のものです。demo/web_demo.py で再生成できます。
エンティティは現在のマッパーで生成されたものではなく、ステートメント層でシードされています。詳しくは demo/README.md をご覧ください。

---

法的免責事項:OpenOSINT は、合法かつ許可された用途に限り使用することを目的としています。 ユーザーは、自身の使用が適用されるすべての法律および規制に準拠していることを確認する責任を単独で負います。 著者は不正使用について一切の責任を負いません。DISCLAIMER.md をご覧ください。

ツール

ツール提供元調査内容
search_emailholeheメールアドレスに紐づくソーシャルアカウント (ノイズが多いため、デフォルトでは無効)
search_usernamesherlock400 以上のプラットフォームでのユーザー名の有無 (ノイズが多いため、デフォルトでは無効)
search_breachHaveIBeenPwned v3 APIデータ侵害による情報漏えいの状況
search_whoispython-whoisドメイン登録者および DNS 情報
search_ipipinfo.io位置情報、ASN、ホスト名
search_domainsublist3rサブドメインの列挙 (ノイズが多いため、デフォルトでは無効)
generate_dorksbuilt-in対象を絞った Google dork URL 12 件(ネットワーク呼び出しなし)
search_pastepsbdmp.wsPastebin のダンプ内の言及
search_phonephoneinfoga通信事業者、国、回線種別 (ネットワーク動作未検証のため、デフォルトでは無効)
search_shodanShodan APIオープンポート、バナー、CVE
search_virustotalVirusTotal API v370 以上のウイルス対策エンジンによる判定
search_ip2locationIP2Location.io APIIP に関する拡張情報:VPN/プロキシ/Tor/データセンターのフラグ (スポンサー提供)
search_censysCensys Search APIインターネットに公開されたインフラストラクチャ、証明書
search_abuseipdbAbuseIPDB v2 APIIP の不正利用レピュテーション:信頼度スコア、報告、国、ISP
search_githubGitHub REST APIプロフィール、リポジトリ、コミットから見つかったメールアドレス、ユーザー名/キーワード検索
search_dnsdnspython (built-in)A/AAAA/MX/NS/TXT/CNAME/SOA レコード、SPF、DMARC、DKIM の分析
search_rdapRDAP (IANA bootstrap, keyless)レジストラ、登録日/有効期限、ネームサーバー、ステータス。ポリシーにより登録者の連絡先は非公開
search_gdelt_geoGDELT 15-minute GKG feed (keyless)地図上に表示した世界各地の最新ニュース:見出し、リンク、場所。GeoJSON 形式で出力
search_dorks_liveBright Data¹ SERP APIdork クエリの Google 検索結果をリアルタイムで取得(タイトル、URL、スニペット)
scrape_urlBright Data Web UnlockerCloudflare/CAPTCHA を回避して任意の URL を取得し、整形済みの Markdown を返します (対象にアクセスするため、デフォルトでは無効)
search_footprintBright Data SERP APIエンティティ種別を考慮した公開検索エンジン上のフットプリント:メールアドレス/ユーザー名/ドメイン/電話番号/氏名を検出し、構造化された結果とエンティティ相関グラフのノード/エッジを返します

ツールごとの詳細なドキュメント、CLI フラグ、出力形式については、openosint.tech をご覧ください。

デフォルトではパッシブ

OpenOSINT は パッシブモード で起動します。エージェントと MCP クライアントに提供されるのは、サードパーティのデータソースを照会するツール、またはローカルで処理を行うツールのみです。対象のインフラストラクチャにアクセスするツールや、ユーザーの IP アドレスから対象について多数のリクエストを送信するツールは、オプトインするまで無効です。呼び出されたときに拒否されるだけではなく、モデルに一切提供されず、MCP クライアントの tools/list にも表示されません。

レベル意味
passiveサードパーティのデータソースを照会するか、ローカルで処理を行います。ご利用のマシンから対象自身のインフラストラクチャへのリクエストは送信しません。通常の DNS ルックアップだけは間接的な例外であり、リゾルバーを経由して対象のネームサーバーに到達します(search_dns を参照)。
touches target対象のインフラストラクチャから確認可能なリクエストを送信します(対象のウェブサーバー、DNS プローブ、または対象の URL を代わりに取得するサービス)。
noisyリクエスト数が多いか、対象について多数のサードパーティサービスにリクエストを送信します。レート制限や WAF によるブロック、アラートが発生する可能性があります。
unverifiedネットワーク動作がトラフィックキャプチャでまだ検証されていません。非パッシブとして扱われます。
inherits複数のツールを呼び出すツールです。現在のモードで許可されている処理のみを実行します。
受動的な利用はプライバシーを守るものではありません。 検索を行うサードパーティーサービスには、検索した内容がすべて知られ、通常は API キーや IP アドレスも知られます。Shodan、HIBP、VirusTotal、Bright Data などのサービスへのクエリは、それらのプロバイダーに見られるものとして扱ってください。

アクティブなツールを有効にするには、明示的な設定が必要です(それぞれノイズレベルが表示されています)。

場所方法
CLI / REPLopenosint --allow-active …
任意のプロセスOPENOSINT_ALLOW_ACTIVE=1
Web UISettings → "Enable active tools"(ループバックのみ)
MCP サーバーuvx --from openosint openosint-mcp --allow-active(または、インストール済みの場合は openosint-mcp --allow-active)、もしくはクライアントの env ブロックで OPENOSINT_ALLOW_ACTIVE=1 を設定

一般公開されているインスタンスやデモ用インスタンスでは、設定にかかわらずアクティブなツールを有効にできません。無効なツールがリクエストされた場合は、有効化方法を示す構造化された disabled_in_passive_mode の結果を返します。

ツール呼び出しの上限。 各ユーザーリクエストには、OPENOSINT_MAX_TOOL_CALLS による上限があります(デフォルトは 15 回の呼び出し。新しいメッセージごとにリセットされます)。investigate_multi ではすべての対象で上限を共有します(OPENOSINT_MAX_TOOL_CALLS_MULTI。デフォルトは 30 回)。上限に達すると、明示的なメッセージを表示して調査を停止します。ツールを自ら実行する MCP クライアントにはサーバーによる上限は適用されません。上限が適用されるのは investigate_multi のみです。

ツールレベルデフォルト実際に送信される内容と送信先
generate_dorksパッシブオンGoogle 検索 URL をローカルで生成します。何も送信しません。
graph_exportパッシブオンローカルのグラフデータベースのみを読み取ります。
graph_neighborsパッシブオンローカルのグラフデータベースのみを読み取ります。
graph_review_candidatesパッシブオンローカルのグラフデータベースのみを読み取ります。
investigate_graph継承オンシードからツールを連鎖実行します。パッシブモードではパッシブなツールのみを使用します。
investigate_multi継承オン共通のツール呼び出し上限のもと、ターゲットごとにエージェントを1つ実行します。アクティブモードを有効にしていない場合はパッシブです。
scrape_urlターゲットにアクセスオフBright Data が URL を取得するため、ターゲットのサーバーにはリクエストが記録されます(あなたの IP ではなく、Bright Data の IP から送信されます)。
search_abuseipdbパッシブオンapi.abuseipdb.com へのリクエストを1回送信します。
search_breachパッシブオンhaveibeenpwned.com へのリクエストを1回送信します。
search_censysパッシブオンCensys API を使用します。Censys がすでに保持しているデータを返します。
search_dnsパッシブオンレコードの検索は DNS リゾルバー経由で行われます。ターゲットのネームサーバーには、あなたではなくリゾルバーが見えます。アクティブな部分: DKIM セレクターのプローブ(列挙)は、アクティブなツールを有効にした場合にのみ実行されます。
search_domain高負荷オフsublist3r はあなたの IP から複数の検索エンジンやアグリゲーターにアクセスします。CAPTCHA やブロックが発生することを想定してください。
search_dorks_liveパッシブオンBright Data 経由で Google の検索結果を取得します。ターゲットはこれら2つのサービスに送信されます。
search_email高負荷オフholehe は、あなたの IP からメールアドレスを使って多数のサイトの登録・パスワードリセットのフローを調べます。アカウント所有者に通知されたり、セキュリティアラートが発生したりする可能性があります。
search_footprintパッシブオンBright Data 経由で最大3件の Google 検索を行います。ターゲットはこれら2つのサービスに送信されます。
search_gdelt_geoパッシブオンGDELT の公開ニュースフィードをダウンロードし、ローカルで絞り込みます。検索語があなたのマシンの外に送信されることはありません。
search_githubパッシブオンapi.github.com に数回リクエストを送信します。
search_ipパッシブオンipinfo.io にリクエストを1回送信します。
search_ip2locationパッシブオンapi.ip2location.io にリクエストを1回送信します。
search_pasteパッシブオンpsbdmp.ws にリクエストを1回送信します。
search_phone未検証オフphoneinfoga を実行します。ネットワーク経由で送信される内容は、トラフィックをキャプチャして検証されていません。
search_rdapパッシブオンIANA とレジストリの RDAP サーバーに問い合わせます。ターゲットには問い合わせません。
search_shodanパッシブオンShodan API を使用します。Shodan の既存インデックスを読み取り、新たなスキャンは要求しません。
search_username高負荷オフsherlock はあなたの IP から数百のサイトにリクエストを送信します。レート制限や WAF によるブロックが発生することを想定してください。
search_virustotalパッシブオンIP、ドメイン、ハッシュの検索では、VirusTotal の既存データを読み取ります。URL の送信は別のアクティブモードで、デフォルトではオフです。このモードでは VirusTotal が URL を取得し、その URL が VirusTotal コミュニティに公開されます。
search_virustotal (URL submission)ターゲットにアクセスオフVirusTotal が送信された URL を取得し、その URL が VirusTotal コミュニティに公開されるため、調査内容が明らかになる可能性があります。
search_whoisパッシブオンレジストリ/レジストラの WHOIS サーバーに問い合わせます。ターゲットには問い合わせません。

この表は、各ツールがコードに基づいて何を行うかを示しています。リモートサービスや、holehe、sherlock、sublist3r、phoneinfoga などのサードパーティ製バイナリがリクエストをどのように処理するかを保証するものではありません。

search_email

holehe を使用して、メールアドレスに関連付けられたオンラインサービスを列挙します。高負荷なため、デフォルトではオフです。使用するには holehe バイナリのインストールと --allow-active(または OPENOSINT_ALLOW_ACTIVE=1)が必要です。

openosint --allow-active email [email protected]
[+] Spotify        https://open.spotify.com/user/target
[+] WordPress      https://wordpress.com/target
[+] Gravatar       https://gravatar.com/target
[+] Office365      email used
search_username

sherlock を使用して、400以上のプラットフォームからユーザー名を検索します。

openosint username johndoe99
[+] GitHub         https://github.com/johndoe99
[+] Twitter        https://twitter.com/johndoe99
[+] Reddit         https://reddit.com/user/johndoe99
search_breach

HaveIBeenPwned v3 API を使ってデータ漏えいの有無を確認します。HIBP_API_KEY が必要です。

[+] LinkedIn (2016-05-05) — leaked: Email addresses, Passwords
[+] Adobe (2013-10-04) — leaked: Email addresses, Password hints
search_whois

python-whois を使って WHOIS データを取得します。

[+] Registrar: ICANN
[+] Created: 1995-08-14
[+] Expires: 2024-08-13
[+] Name Servers: A.IANA-SERVERS.NET
search_ip

ipinfo.io を使って位置情報と ASN データを取得します。無料枠は月 50,000 件です。

[+] Hostname: dns.google
[+] Org: AS15169 Google LLC
[+] City: Mountain View, CA, US
search_domain

sublist3r を使ってサブドメインを列挙します。

[+] mail.example.com
[+] dev.example.com
[+] api.example.com
generate_dorks

任意のターゲットに対して、対象を絞った Google dork の URL を 12 件生成します。ネットワークへの接続は行いません。

[+] "johndoe" site:linkedin.com
    https://www.google.com/search?q=%22johndoe%22+site%3Alinkedin.com
[+] "johndoe" leaked OR breach OR dump
    https://www.google.com/search?q=%22johndoe%22+leaked+OR+breach+OR+dump
search_paste

psbdmp.ws を使って Pastebin のダンプを検索します。

[+] https://pastebin.com/aB1cD2eF (2023-04-12)
[+] https://pastebin.com/xY3zA4bC (2022-11-08)
search_phone

phoneinfoga を使って電話番号に関する情報を収集します。E.164 形式を使用してください。

[+] Country: United States
[+] Carrier: AT&T
[+] Line type: Mobile
search_shodan

IPv4 を入力するとホストを検索します(開いているポート、組織、CVE)。それ以外のクエリでは、バナーやキーワードを検索します。SHODAN_API_KEY が必要です。

openosint shodan 8.8.8.8
openosint shodan "apache port:80 country:DE"
[+] Org: Google LLC  |  Open ports: 53, 443
search_virustotal

IP、ドメイン、URL、またはファイルハッシュを VirusTotal の 70 以上のエンジンで確認します。入力の種類を自動判別します。VIRUSTOTAL_API_KEY が必要です。

openosint virustotal 8.8.8.8
openosint virustotal example.com
openosint virustotal 44d88612fea8a8f36de82e1278abb02f
[VirusTotal] Malicious: 0 / Harmless: 72
search_ip2location

IP2Location.io に問い合わせ、位置情報、ISP、ASN などの詳細な IP 情報を取得します。Security Plan では、VPN/プロキシ/Tor/データセンターの検出も利用できます。スポンサー提供の連携機能です。IP2LOCATION_API_KEY が必要です。

openosint ip2location 8.8.8.8
[IP2Location] City: Mountain View, CA, US  |  ISP: Google LLC
[IP2Location] VPN: No  |  Proxy: No  |  TOR: No  |  Datacenter: Yes
search_censys

IPv4 ではホスト情報(開いているポート、サービス、ASN)を表示します。ドメインでは証明書を検索します(SAN、発行者)。CENSYS_API_ID と CENSYS_SECRET が必要です。

openosint censys 8.8.8.8
openosint censys example.com
[Censys] Open Ports: 53, 443, 853  |  ASN: AS15169 Google LLC
search_abuseipdb

AbuseIPDB v2 で IP を確認します。不正利用の信頼度スコア、報告総数、国、ISP、最終報告日時を返します。ABUSEIPDB_API_KEY が必要です。

openosint abuseipdb 198.51.100.1
[AbuseIPDB] Abuse Confidence Score: 87%  |  Total Reports: 143
⚠️  HIGH ABUSE CONFIDENCE — flagged by AbuseIPDB

abuseConfidenceScore が 50% を超えると警告が表示されます。

search_github

GitHub REST API に問い合わせます。ユーザー名を指定すると、プロフィール、リポジトリ、コミットから検出されたメールアドレスを返します。キーワードを指定すると、ユーザー/リポジトリを検索します。GITHUB_TOKEN を指定すると、レート制限が 60 req/h から 5000 req/h に引き上げられます。

openosint github johndoe99
[GitHub] Repos: 42  |  Followers: 128
[GitHub] Commit email: [email protected]
search_dns

dnspython を使って A/AAAA/MX/NS/TXT/CNAME/SOA レコードを照会し、SPF、DMARC、DKIM の設定を分析します(外部 API は使用しません)。

openosint dns example.com
[DNS] A: 93.184.216.34
[DNS] MX: mail.example.com (priority 10)
[DNS] SPF: v=spf1 include:_spf.google.com ~all
search_rdap

RDAP を通じて、ドメインのレジストラ、登録日と有効期限、ネームサーバー、ステータスコードを照会します。RDAP は WHOIS に代わる機械可読形式のプロトコルです。API キーは不要です。IANA ブートストラップレジストリにどのサーバーが TLD を管理しているかを問い合わせてから、そのサーバーに照会します。レジストリのポリシーにより登録者の連絡先情報は伏せられており、返されることはありません。

[+] Registrar: RESERVED-Internet Assigned Numbers Authority
[+] Registered: 1995-08-14T04:00:00Z
[+] Name servers: elliott.ns.cloudflare.com, hera.ns.cloudflare.com
search_gdelt_geo

世界中の最新の地理情報付きニュースです。旧 GDELT GEO 2.0 API は廃止されたため(HTTP 404 を返します)、このツールは GDELT の15分ごとの GKG 記事フィード(data.gdeltproject.org、キー不要、アカウント不要)を読み込み、直近6時間分の記事をメモリに保持します。各記事には、見出し、リンク、言及されている場所が含まれます。クエリは見出しと URL に対して照合され(引用符で囲んだフレーズと OR が使用でき、* はすべてを意味します)、結果は地球儀上で場所ごとにグループ化されます。国レベルの言及は除外されるため、点は国の中心ではなく、都市や地域を示します。

ツールを初めて使用するまでデータはダウンロードされないため、地球儀を開かないローカルインストールでは GDELT ファイルを取得しません。最初の検索では最新の15分間のファイルのみを読み込み、そのデータから結果を返します。古いファイルはバックグラウンドで読み込まれ、結果と地球儀には、たとえば News: last 15 min — older articles still loading のように、どこまでさかのぼったデータかが表示されます。その後の上流へのアクセスは、検索回数にかかわらず15分ごとに小さなファイルを1つ取得するだけです。

GDELT geolocated news for 'ukraine': 53 location(s), 471 article mention(s). Coverage: the last 6 h.

[+] Kyiv, Kyyiv, Ukraine (50.4333, 30.5167) — 38 article(s)

地球儀上でエリアを選択(Shift を押しながらドラッグ)すると、その範囲内だけを検索できます。エラー(フィードの停止、ファイルが大きすぎる、またはファイルが破損している場合)では、[service_unavailable] search_gdelt_geo という結果を1件返し、空のレイヤーの代わりに地球儀に通知を表示します。

変数デフォルト用途
OPENOSINT_GDELT_WINDOW_HOURS6記事を保持する期間(1~24時間)です。6時間分を保持すると、記事数は約23,000件になり、メモリを約65 MB使用します。
OPENOSINT_GDELT_MAX_ARTICLES30000保存する記事数の上限です。古い記事から削除されます。
OPENOSINT_GDELT_USE_PROXYoffGDELT のダウンロードを OPENOSINT_PROXY_URL 経由にします(フィードは公開されているため、デフォルトでは経由しません)。

クレジットと利用条件。 ニュースデータ:The GDELT Project。GDELT の利用規約には、「GDELT Project が公開するすべてのデータセットは、あらゆる種類の学術、商用、政府用途において、料金なしで無制限かつ制約なく利用できます。」および「データを利用または再配布する場合は、GDELT Project を引用し、このウェブサイト(https://www.gdeltproject.org/)へのリンクを含める必要があります。」と記載されています(2026-10-06 に引用)。地球儀の地図クレジットには GDELT の表記が維持されます。見出しとリンクはサードパーティのニュースサイトから取得され、プレーンテキストで表示されます。

search_dorks_live

Bright Data SERP API¹ を介して Google のドーキング検索をリアルタイムで実行し、構造化された結果(タイトル、URL、スニペット)を返します。デフォルトでは1回の実行につき5件のドークを実行し、それぞれが個別の課金対象 API 呼び出しになります。BRIGHTDATA_API_KEY と BRIGHTDATA_SERP_ZONE が必要です。

openosint search-dorks-live "john doe" --max-dorks 3
[+] Dork: "john doe" site:linkedin.com
    Title:   John Doe | LinkedIn
    URL:     https://www.linkedin.com/in/john-doe-12345
scrape_url

Bright Data Web Unlocker¹ を介して任意の公開 URL を取得し、Cloudflare/CAPTCHA を回避します。読みやすい Markdown を返します。BRIGHTDATA_API_KEY と BRIGHTDATA_UNLOCKER_ZONE が必要です。

openosint scrape https://example.com
[Web Unlocker] Remote status: 200
# Example Domain
This domain is for use in illustrative examples in documents.
search_footprint

Bright Data SERP API¹ を介して、対象の公開検索エンジン上のフットプリントを収集します。エンティティの種類(メールアドレス、ユーザー名、ドメイン、電話番号、氏名)を検出し、種類に応じた Google クエリを実行します。構造化された結果に加え、検出されたドメインやプロフィールのエンティティ相関グラフのノードとエッジを返します。BRIGHTDATA_API_KEY と BRIGHTDATA_SERP_ZONE が必要です。

openosint footprint johndoe99

Graph モジュール(オプション)

追記型の FollowTheMoney エンティティグラフ(ステートメントレベルの来歴、追記専用ストア、非破壊的な same_as 重複排除、手動レビューキュー)は、上記のツールと並行して動作し、それらには一切変更を加えません。ストア、/graph ページ、/api/graph/* ルート、graph_neighbors/graph_review_candidates MCP ツールは、コンパイラーも追加パッケージも不要で、通常の uvx openosint web インストールで利用できます。graph エクストラ(pip install "openosint[graph]"。PyICU をビルドします)を追加すると、本物の FollowTheMoney ライブラリが利用可能になり、graph_export と .ftm エクスポートが使えます。graph-dedup エクストラ(Python 3.11 以降)を追加すると、same_as のスコアリングが利用可能になります。エクストラなしの場合、ID はベンダー提供のコピーによって生成されます。CI テストで FollowTheMoney のものとバイト単位で一致することが証明されているため、graph.db はどちらの場合も読み込めます。Web UI もエージェントもこのストアには書き込みません。ストアは Python API を通じてデータを追加します(完全なガイドと実例については docs/graph.md を参照してください)。メイン UI の GRAPH タブは、現在のチャットを表示する独立したクライアント側のビューです。

.ftm エクスポートが ftm validate を通過するところも含め、同じワークフローを最初から最後まで docs/graph.md のターミナルデモで確認できます。Web UI の手順は、この README の冒頭にあるデモをご覧ください。


外部公開レポート(ベータ)

openosint exposure は、外部から 1 つのドメインをチェックし、A〜F の評価を付けます。これは特定時点の結果です。組織レベルでメール認証、TLS、ドメイン登録、セキュリティヘッダーをチェックし、オプションで類似ドメインも確認します。メール、登録情報、類似ドメインのチェックはパッシブ(DNS と RDAP のみ)です。TLS とセキュリティヘッダーのチェックでは、対象の 443 番ポートに 1 回接続します。AI プロバイダーや API キーは不要です。

openosint exposure example.com                       # terminal summary and grade
openosint exposure example.com --json                # structured JSON
openosint exposure example.com --report out.html --lang it   # self-contained HTML report (it or en)
openosint exposure example.com --lookalikes          # also look for registered typo/homoglyph/TLD-swap domains
openosint exposure example.com --resolver 1.1.1.1    # recursive resolver for lookups outside the domain's own nameservers
openosint exposure example.com --checks email,registration   # passive checks only: never contacts the target

--checks には email、registration、tls、http_headers のいずれかを指定できます(デフォルト:4 項目すべて)。一部だけを選択した場合、評価は行われません。一部のチェック結果だけで完全な結果のように見える評価を付けないため、レポートには評価文字もスコアも含まれません。Python では run_exposure("example.com", checks=PASSIVE_CHECKS) を使います(どちらの名前も openosint.exposure.api からインポートします)。レポートの not_run には、実施されなかった項目が記載されます。

毎週実行し、履歴を残して、評価が下がったときにメールを受け取りたいですか? OpenOSINT Monitor が代わりに実行します。ドメイン 1 つなら無料です。

チェック項目通信レベル接続先
メール認証(SPF、DMARC、DKIM、MX)パッシブDNS のみ
ドメイン登録情報(登録期間、期限、DNSSEC)パッシブRDAP レジストリー。対象ドメインには接続しません
類似ドメイン(--lookalikes)パッシブDNS のみ。類似ドメインの Web サーバーには一切接続しません
TLS 証明書とプロトコル対象に接続対象の 443 番ポートとの TLS ハンドシェイク(ドメインと www)
セキュリティヘッダー対象に接続https://DOMAIN/ への HTTPS GET を 1 回実行します(リダイレクトは追跡されます)

ポートスキャン、ログイン、個人データの収集は行いません。この評価は認証ではなく、NIS2 やその他のコンプライアンスへの準拠を証明するものでもありません。類似ドメインは DNS のみで検出され、評価には一切含まれません。

この機能はベータ版です。チェック項目、スコアリング、レポート形式はリリース間で変更される場合があります。HTML レポートのフッターには report_version が表示されます。


インターフェース

Web UI
uvx openosint web
# or: pip install openosint && openosint web
# Opens http://localhost:8080 automatically

ブラウザーで利用する AI チャットです。ツール出力のストリーミング、インラインの結果カード、ライト/ダークテーマの切り替えに対応しています。Ollama または OpenAI 互換エンドポイントを利用したローカル推論に対応しており、Anthropic API キーは不要です。

サーバーと通信できるホストおよびサイトについて。 ループバックにバインドした場合、サーバーがリクエストに応答するのは、Host が 127.0.0.1、localhost、または ::1 の場合のみです。ブラウザーからのすべての /api/* リクエストは、UI と同一オリジンから送信される必要があります。クロスサイトリクエストは拒否されます(Origin を送信しないスクリプトや curl は影響を受けません)。

変数使用する場合
OPENOSINT_ALLOWED_HOSTSLAN 名、Docker ホスト名、リバースプロキシなど、別の名前で UI にアクセスする場合です。例:OPENOSINT_ALLOWED_HOSTS=osint.lan,localhost。カンマ区切りで、host または host:port を指定します。ループバック以外にバインドする場合(--allow-remote、Docker)、この設定がある場合にのみ Host チェックが実行されるため、その場合は設定してください。
OPENOSINT_ALLOWED_ORIGINS別のオリジンにあるフロントエンドから API を呼び出す場合です。例:OPENOSINT_ALLOWED_ORIGINS=http://localhost:3000。カンマ区切りで指定します。
OpenOSINT Web UI — ライブのエンティティ相関グラフのデモ:openosint.techを調査

ライブデモを試す → — Anthropic/OpenRouter/Ollama のキーを持ち込めます。登録は不要です。

# Fully local (no API key) — requires Ollama runtime: https://ollama.com
ollama pull llama3.2
openosint web
# Settings -> Ollama (local) -> model: llama3.2

# OpenAI-compatible endpoint (LiteLLM, vLLM, LM Studio, ...)
export OPENAI_BASE_URL="http://localhost:4000/v1"
openosint web
# Settings -> OpenAI API

破壊的変更(v2.28以降):キーの使用可否は環境変数ではなく、バインドアドレスに従うようになりました。 127.0.0.1/localhost(デフォルト)にバインドする場合は、変更ありません。.env 内のキーはこれまでどおり機能します。それ以外のインターフェース(すでに --allow-remote が必要な --host 0.0.0.0)にバインドする場合、Web UI はリクエストの処理に 環境変数のキーを使用しません。すべての呼び出し元がそれぞれ独自のキーを指定する必要があり、侵害データの検索 (search_breach)は完全に無効になります。これは、OPENOSINT_DEMO_MODE を含むすべての環境 変数に関係なく適用されます。この変数で制限を追加することはできますが、解除することはできません。独自のキーを使って Web UI を LAN 上に公開し、呼び出し元ごとの認証を前段に設けていなかった場合、そのアクセス方法は利用できなくなりました。

リバースプロキシの背後で実行していますか? ループバックアドレス(127.0.0.1)へのバインドが意味するのは、 OS がこのマシンからの接続を受け付けたということだけです。手前の何か(nginx、Caddy、Docker/K8s のサイドカー、 トンネル)がリクエストを別の場所から転送している場合、誰がこのサービスにアクセスできるかは示しません。デフォルトでは、 プロキシ転送ヘッダー(X-Forwarded-For、X-Forwarded-Proto、 X-Forwarded-Host、Forwarded、CF-Connecting-IP)を含むリクエストは、 ループバック以外へのバインドと同じように扱われます。ローカルのキーは使用されず、侵害データの検索は ブロックされ、その理由が呼び出し元に通知されます。意図的にリバースプロキシ経由でこのサービスを提供し、 そのプロキシが中継するリクエストに対して通常のローカルインスタンスと同じように動作させたい場合は、 OPENOSINT_TRUSTED_PROXY=true を設定してください。 これは既存の TRUSTED_PROXY とは別の変数です(既存の変数は、レート制限のバケットにどの IP を割り当てるかだけに影響します。リスクが低く、すでに適用範囲が緩やかな設定で、一部のセルフホスト利用者はすでに有効にしています)。 ここでそのフラグを再利用すると、既存のレート制限のみの設定が、確認なしに認証情報を使ったアクセスも許可する設定へと変わってしまいます。 そのため、OPENOSINT_TRUSTED_PROXY には明示的なオプトインが必要です。この設定を有効にしても、転送ヘッダーの内容が 無条件に信頼されるわけではありません。内部で矛盾する値(たとえば、1 つのリクエストに互いに一致しない X-Forwarded-Proto の値が 2 つ含まれている場合)は、引き続きパブリックとして扱われます。OPENOSINT_TRUSTED_PROXY=true を設定することは、リバースプロキシがこのインスタンスへ中継する相手に対して、認証情報を使った検索を提供すると選択することを意味します。ホスト型サービスの運営者が利用者に対して負うのと同じく、その検索に関する管理責任はあなたにあります。プロキシが中継する相手の範囲が意図より広い場合は、このサービスの前段に適切な認証を設けてください。

インタラクティブ REPL

引数を指定せずに openosint を実行すると、AI を活用した REPL が起動します。

OpenOSINT のターミナル REPL のデモ

REPL コマンド:

コマンド説明
<target>メールアドレス、ユーザー名、ドメイン、IP、名前など、任意のターゲットを調査します
clear会話メモリをリセットします
save最後のレポートを reports/ に保存します
tools利用可能なツールとそのステータスを一覧表示します
config現在の設定を表示します
history保存済みセッションを参照します
helpすべてのコマンドを表示します
exit / Ctrl-D終了します

すべてのセッションは ~/.openosint/history/ に自動保存されます。openosint history で参照できます。

OpenAI 互換バックエンドを使う REPL/CLI の場合:

pip install "openosint[openai]"
openosint --provider openai \
  --openai-base-url http://localhost:4000/v1 \
  --openai-model gpt-4o-mini
ライブドキュメント

ツールごとの詳しいリファレンス、CLI フラグ、設定オプションは openosint.tech をご覧ください。

openosint.tech ドキュメントの紹介
MCP サーバー

別途インストールすることなく、OpenOSINT を任意の MCP 対応 AI クライアントに公開できます。 uv をインストールする必要があります。uvx が必要に応じて openosint を取得して実行します。デフォルトではサーバーに 20 個のエントリー(16 個のパッシブツールと、4 個のグラフおよびバッチ用ヘルパー)が表示され、--allow-active を指定すると 25 個になります(デフォルトではパッシブを参照)。

各クライアントが実行するコマンドは共通です:

uvx --from openosint openosint-mcp   # passive tools only (20 listed)

GUI クライアント(Claude Desktop、Cursor)は、uvx を含まない最小限の PATH で起動することがよくあります。サーバーが起動しない場合は、"uvx" を which uvx(macOS/Linux)または where uvx(Windows)で確認した絶対パスに置き換えてください。

Claude Code:

claude mcp add openosint -- uvx --from openosint openosint-mcp
claude mcp list

API キーを追加します(-e フラグは -- の前に指定します)。

claude mcp add openosint -e SHODAN_API_KEY=your-key -e HIBP_API_KEY=your-key -- uvx --from openosint openosint-mcp

任意、アクティブツールを有効化します: openosint-mcp の後に --allow-active を追加するか、-e OPENOSINT_ALLOW_ACTIVE=1 を追加します。ノイズが多く、ターゲットに接触するツールが公開されます(表示数は 20 個から 25 個に増えます)。最初にノイズ表を確認してください。

Claude Desktop — claude_desktop_config.json を編集し、アプリを再起動します。

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "openosint": {
      "command": "uvx",
      "args": ["--from", "openosint", "openosint-mcp"],
      "env": {
        "SHODAN_API_KEY": "your-key",
        "HIBP_API_KEY": "your-key"
      }
    }
  }
}

任意、アクティブツールを有効化します: args に "--allow-active" を追加するか、env に "OPENOSINT_ALLOW_ACTIVE": "1" を追加します。ノイズが多く、ターゲットに接触するツールが公開されます(表示数は 20 個から 25 個に増えます)。最初にノイズ表を確認してください。

Cursor — 同じブロックを ~/.cursor/mcp.json(グローバル)または .cursor/mcp.json(プロジェクトごと)に追加します。上記のアクティブツールに関する任意の変更も適用できます。

{
  "mcpServers": {
    "openosint": {
      "command": "uvx",
      "args": ["--from", "openosint", "openosint-mcp"],
      "env": { "SHODAN_API_KEY": "your-key" }
    }
  }
}

API キーはクライアントの env ブロックに記述します。MCP ホストはプロジェクトとは無関係な cwd でサーバーを起動するため、.env ファイルは確実には読み込まれません。使用する場合は、同じ env ブロックに "OPENOSINT_ENV_FILE": "/absolute/path/to/.env" を設定してください。

デフォルトではサーバーにはパッシブツールのみが表示されるため、クライアントの LLM からノイズの多いツールは見えません。各ツールの説明にはノイズレベルが記載されています。--from openosint==2.36.1 でリリースを固定できます。ソースチェックアウトから実行する場合:"command": "python", "args": ["-m", "openosint.mcp_server"]。

Claude Code 経由のエージェント利用:

$ claude
> Investigate [email protected]. Trace any username found
  across other platforms and compile a full report.

インストール

クイックスタート — 1 つのコマンドで Web UI を起動

uv を一度インストールします。OpenOSINT は独立した環境で実行されるため、Python のセットアップは不要です。

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows (PowerShell)
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

次に OpenOSINT を起動します(uvx が見つからない場合は、先に新しいターミナルを開いてください)。

uvx openosint web

次のように表示されます。

[*] OpenOSINT x.y.z web server
[*] App  → http://127.0.0.1:8080/
[*] Data → /home/you/.openosint

ブラウザーが自動的に開きます。開かない場合は、http://127.0.0.1:8080/ を開いてください。起動時に .env ファイルや API キーは不要です。キー不要のツールはすぐに使えます。AI チャットにはプロバイダーのキー(ANTHROPIC_API_KEY)またはローカルの Ollama が必要です。

目的操作
別のポートを使うuvx openosint web --port 8081(8080 が使用中の場合、OpenOSINT は終了し、その旨を通知します)
ブラウザーを開かないuvx openosint web --no-browser
データの保存場所を確認するグラフデータベースとセッション履歴は ~/.openosint/(Windows では %USERPROFILE%\.openosint)に保存されます。OPENOSINT_HOME=/path で場所を変更できます。OPENOSINT_GRAPH_DB は引き続き graph.db のみを上書きします。
レポートの保存場所を確認するCLI と REPL のレポートは、openosint を実行したディレクトリの ./reports/ に書き込まれます。Web UI はレポートを作成しません。
エンティティグラフストアを使うコンパイラーは不要で、uvx openosint web だけで利用できます。/graph ページ、/api/graph/*、graph_neighbors / graph_review_candidates MCP ツールを使用できます。graph_export(.ftm)には graph エクストラが必要です。これにより PyICU がビルドされるため、事前に libicu と C++ コンパイラーが必要です(Ubuntu:sudo apt install libicu-dev pkg-config g++、macOS:brew install icu4c pkg-config を実行し、export PKG_CONFIG_PATH="$(brew --prefix icu4c)/lib/pkgconfig" を設定)。その後、uvx --from "openosint[graph]" openosint web を実行してください。または、これらが含まれている Docker を使用してください。ストアは空の状態で起動します。UI ではなく、Python API を通じてデータが追加されます。
代替手段
# pip (Python 3.10+)
pip install openosint
openosint web

# Updating
pip install --upgrade openosint

# From source
git clone https://github.com/OpenOSINT/OpenOSINT.git
cd OpenOSINT
pip install -e .

外部バイナリー(PATH に含まれている必要があります):

バイナリー用途インストール
holeheメールアカウントの列挙pip install holehe
sherlockユーザー名の列挙(400 以上のプラットフォーム)pip install sherlock-project
sublist3rサブドメインの列挙pip install sublist3r
phoneinfoga電話番号の情報収集バイナリーをダウンロード

バイナリーが見つからない場合、対応するツールは内容を説明するエラーを返します。それ以外のツールはすべて引き続き動作します。

任意の Python パッケージ:

パッケージ用途インストール
ollamaローカル LLM バックエンド(API キー不要)pip install "openosint[ollama]"(* Ollama ランタイム も必要)
openaiOpenAI 互換バックエンドpip install "openosint[openai]"
shodanShodan API クライアントpip install "openosint[shodan]"
reportlabPDF レポートのエクスポートpip install "openosint[pdf]"
censysCensys API クライアントpip install "openosint[censys]"

設定

最も簡単な方法: Web UI を開きます。ローカルにインストールした場合、Settings と初回起動パネルでは、デフォルトでキーがこのコンピューターに保存されます(「Save on this computer」)。「Use only for this browser session」は、キーをタブ内にのみ保持する追加の選択肢です。公開デモでは、キーはブラウザー内に保持されます。キーはデータディレクトリの config.env(~/.openosint/config.env、または $OPENOSINT_HOME/config.env)に書き込まれ、インストール済みパッケージ内には保存されません。OS が対応している場合、ユーザーのみがアクセスできる権限(0600)が設定されます。値がログに記録されたり、ブラウザーに送り返されたりすることはありません。UI に表示されるのは、設定済みのキーと各値の取得元のみです。

優先順位(高い順):

  1. 実際の環境変数(保存済みの値で上書きすることはできません。UI にもその旨が表示されます)
  2. データディレクトリ内の config.env
  3. 従来の .env(以下の場所) 既存の .env は引き続き使用できます。パッケージのルートにあるファイル(ソースチェックアウトまたは Docker イメージ)が読み込まれる場合、そのファイルに含まれる既知の設定は一度だけ config.env にコピーされ、キー名は表示しますが値は決して表示しない旨の通知が stderr に出力されます。古いファイルはそのまま残り、優先順位が低くなります。

自分で管理するファイルを使う場合は、.env.example を .env にコピーしてキーを設定します。.env は openosint を実行するディレクトリから読み込まれます(git が .git を見つけるように上方向へ検索します)。特定の「プロジェクトルート」に置く必要はなく、通常の pip install でもソースチェックアウトから実行する場合と同じように動作します。OPENOSINT_ENV_FILE=/path/to/.env を設定すると、代わりに明示したファイルを指定できます(任意の作業ディレクトリでホストから起動される MCP サーバーで便利です)。実際の環境変数は、常に .env の値より優先されます。

以下の Required は、openosint 自体ではなく、該当するツールの実行に必要であることを意味します。アプリは起動し、キー不要のすべてのツールは設定なしで動作します。

変数ツール必須用途
ANTHROPIC_API_KEYAI エージェント(REPL/Web UI)Ollama または OpenAI 互換エンドポイントを使用する場合を除き必須Anthropic API キー
ANTHROPIC_MODELAI エージェント任意リクエストするモデル名(デフォルト:claude-sonnet-5)。非推奨の OPENOSINT_MODEL を置き換えます。
OPENAI_BASE_URLAI エージェント任意OpenAI 互換エンドポイントのベース URL(例:http://localhost:4000/v1)
OPENAI_API_KEYAI エージェント任意エンドポイントの API キー(ローカルサーバーでは無視される場合があります)
OPENAI_MODELAI エージェント任意リクエストするモデル名(デフォルト:gpt-4o-mini)
OPENOSINT_GDELT_WINDOW_HOURSsearch_gdelt_geo任意メモリに保持するニュースの時間数(デフォルト 6、最大 24)。search_gdelt_geo を参照してください。
OPENOSINT_GDELT_MAX_ARTICLESsearch_gdelt_geo任意保存する記事数の上限(デフォルト 30000。最も古い記事から削除されます)
OPENOSINT_ENV_FILEすべて任意上記のディレクトリ検索を上書きする、.env ファイルの明示的なパス
OPENOSINT_SETUP_TOKENWeb UI任意ループバック上にない場合に、ブラウザーからキーを保存できるようにします(Docker)。X-Setup-Token として送信してください。UI に入力欄があります。未設定の場合、ループバック以外のブラウザーからの保存は無効です。失敗した試行は制限されます。
HIBP_API_KEYsearch_breachこのツールには必須HaveIBeenPwned v3 — 取得
IPINFO_TOKENsearch_ip任意なくても動作します。設定すると ipinfo.io のレート制限が緩和されます
SHODAN_API_KEYsearch_shodanこのツールには必須Shodan API — 取得
VIRUSTOTAL_API_KEYsearch_virustotalこのツールには必須VirusTotal API v3 — 取得
IP2LOCATION_API_KEYsearch_ip2locationこのツールには必須IP2Location.io — 取得 (スポンサー提供)
CENSYS_API_ID + CENSYS_SECRETsearch_censysこのツールには必須Censys — 取得
ABUSEIPDB_API_KEYsearch_abuseipdbこのツールには必須AbuseIPDB v2 — 取得
GITHUB_TOKENsearch_github任意なくても動作します(60 req/h)。設定すると上限が 5000 req/h になります — 取得
BRIGHTDATA_API_KEYsearch_dorks_live、scrape_url、search_footprintこれらのツールには必須Bright Data — 取得¹(無料枠:月 5,000 req)
BRIGHTDATA_SERP_ZONEsearch_dorks_live、search_footprintこれらのツールには必須お使いの Bright Data SERP ゾーン名(例:serp_api1)
BRIGHTDATA_UNLOCKER_ZONEscrape_urlこのツールには必須お使いの Bright Data Web Unlocker ゾーン名(例:web_unlocker1)
キーがまったくない新規インストールでも、次の機能は動作します:generate_dorks、
search_dns、search_whois、search_rdap、search_paste、search_ip
(レート制限あり)、search_github(レート制限あり)、search_gdelt_geo。

search_email、search_username、search_domain、search_phone もキーは不要ですが、 デフォルトでは無効になっています。利用するには --allow-active と外部バイナリ (holehe、sherlock、sublist3r、phoneinfoga)が必要です。

CLI リファレンス

フラグ/サブコマンド説明
openosint対話型 AI REPL(デフォルト)
openosint web [--port N] [--no-browser]ブラウザー UI を起動
openosint exposure DOMAINドメインの外部露出度を A~F で評価(外部露出レポートを参照)
openosint --allow-active email ADDRESS [-t N]メールアドレスを直接スキャン(通知が多いため、デフォルトでは無効)
openosint --allow-active username HANDLE [-t N]ユーザー名を直接スキャン(通知が多いため、デフォルトでは無効)
openosint shodan QUERY [-t N]Shodan を検索
openosint virustotal TARGET [-t N]VirusTotal を検索
openosint censys TARGET [-t N]Censys を検索
openosint ip2location IP [-t N]IP2Location を検索
openosint abuseipdb IP [-t N]AbuseIPDB のレピュテーションを確認
openosint github QUERY [-t N]GitHub のプロフィール/リポジトリ/メールアドレスを発見
openosint dns DOMAIN [-t N]DNS レコードとメールセキュリティを分析
openosint search-dorks-live TARGET [--max-dorks N] [-t N]Bright Data 経由で Google の検索演算子によるライブ検索結果を取得¹
openosint scrape URL [-t N]Bright Data Web Unlocker 経由で URL を取得
openosint footprint TARGET [--max-queries N] [-t N]Bright Data 経由で SERP フットプリントを取得
openosint multi TARGETS複数のターゲットを並列調査(最大 10 件)
openosint exposure DOMAIN [--lookalikes] [--report FILE.html] [--lang it|en] [--resolver IP]外部露出レポートを A~F で評価(ベータ版)
openosint playbook RECIPE TARGET決定論的な調査プレイブックを実行(AI 不使用)
openosint history [--all] [open N] [clear]REPL セッション履歴を表示/管理
openosint proxy-test設定済みの上流プロキシを検証
openosint sponsors現在のスポンサーと注目の連携サービスを一覧表示
openosint shellデフォルトの REPL を明示的に指定する別名
--allow-activeアクティブなツールを有効化(通知が多い、またはターゲットに接触します)。デフォルトでは無効です。OPENOSINT_ALLOW_ACTIVE=1 と同じです
-v, --verbosestderr へのデバッグログ出力を有効化
-t, --timeout Nサブプロセスのタイムアウト(秒)を上書き
--api-key KEYAnthropic API キー(環境変数より優先)
--parallel関連するツールを並行して実行
--json結果を構造化 JSON として出力
--provider {anthropic,ollama,openai}AI プロバイダー(デフォルト:anthropic)
--ollama-model MODELOllama のモデル名(デフォルト:llama3.2)
--ollama-host URLOllama サーバーの URL(デフォルト:http://localhost:11434)
--openai-base-url URLOpenAI 互換エンドポイントのベース URL(環境変数:OPENAI_BASE_URL)
--openai-model MODELエンドポイントにリクエストするモデル(デフォルト:gpt-4o-mini、環境変数:OPENAI_MODEL)
--openai-api-key KEYエンドポイントの API キー(環境変数:OPENAI_API_KEY)
--no-pdfPDF の自動生成を無効化

Docker

# Build and run
docker compose up --build

# One-off command
docker compose run --rm openosint exposure example.com --json

.env は任意です。キーがなくても、ウェブ UI は http://localhost:8080 で起動します。現在キーを設定するには、docker-compose.yml の environment:(または同じディレクトリにある .env)にキーを記載するか、データボリューム内に .env(/data/.env)を配置してください。レポートは ./reports/ に保存され、グラフデータベースとセッション履歴は openosint-data ボリューム(コンテナ内の /data。OPENOSINT_HOME 経由)に保存されます。イメージにはグラフ表示機能が含まれています。

Docker でブラウザーからキーを保存する場合。 ブラウザーはループバックではなく Docker ネットワーク経由でコンテナに接続するため、UI はデフォルトではキーを保存できず、その理由を表示します(暗黙に失敗するのではなく、理由を表示します)。キーを compose の環境変数または .env に設定するか、トークンを設定して UI の サーバーにキーを保存 パネルに入力してください。OPENOSINT_SETUP_TOKEN=choose-a-long-random-string docker compose up と実行します。保存したキーは openosint-data ボリューム内の /data/config.env に保存され、再起動後も保持されます。トークンが誤っている場合は、試行が制限されます。

ポートは 127.0.0.1 のみで公開され、Host チェックは有効です(compose ファイルでは OPENOSINT_ALLOWED_HOSTS のデフォルト値は localhost,127.0.0.1 です。別の名前で UI にアクセスする場合は追加してください)。意図的に他のマシンからアクセスできるようにするには、OPENOSINT_BIND=0.0.0.0 docker compose up を実行します。この場合、インスタンスは制限モードで実行されます(サーバーに保存されたキーは使用しません)。セキュリティに関する注意: UI のセットアップエンドポイントは API キーを受け取り、保存します。そのため、信頼できるネットワーク上で、信頼できるファイアウォールまたはリバースプロキシの背後でのみ実行してください。

警告:OPENOSINT_PUBLISHED_BIND。 docker-compose.yml では、サーバーにポートの公開先アドレスを伝えるため、この値を OPENOSINT_BIND と同じ値に設定しています。ループバックを正確に指定した値(127.0.0.1、localhost、::1)を設定すると、コンテナの 0.0.0.0 バインドによって通常は有効になる制限が解除されます。ポートが他のインターフェースでも公開されている場合は、自分でこの値をループバックに設定したり、compose のポートマッピングを変更してこの値と異なる設定にしたりしないでください。

インテグレーション

サービスURLツールティア認証
IP2Location.iohttps://www.ip2location.iosearch_ip2location注目(スポンサー提供)API キー — 無料プラン
AbuseIPDBhttps://www.abuseipdb.comsearch_abuseipdbコミュニティAPI キー — 無料プラン
Censyshttps://censys.iosearch_censysコミュニティAPI キー — 無料プラン
GitHubhttps://github.comsearch_githubコミュニティトークンは任意
HaveIBeenPwnedhttps://haveibeenpwned.comsearch_breachコミュニティAPI キー — 有料
holehehttps://github.com/megadose/holehesearch_emailコミュニティなし — ローカルバイナリ
ipinfo.iohttps://ipinfo.iosearch_ipコミュニティトークンは任意
phoneinfogahttps://github.com/sundowndev/phoneinfogasearch_phoneコミュニティなし — ローカルバイナリ
psbdmp.wshttps://psbdmp.wssearch_pasteコミュニティなし
sherlockhttps://github.com/sherlock-project/sherlocksearch_usernameコミュニティなし — ローカルバイナリ
Shodanhttps://shodan.iosearch_shodanコミュニティAPI キー — 無料プラン
sublist3rhttps://github.com/aboul3la/Sublist3rsearch_domainコミュニティなし — ローカルバイナリ
VirusTotalhttps://www.virustotal.comsearch_virustotalコミュニティAPI キー — 無料プラン
WHOIS (IANA)https://www.iana.org/whoissearch_whoisコミュニティなし
DNS (system resolver)—search_dnsコミュニティなし
Google Searchhttps://www.google.comgenerate_dorksコミュニティなし

制限事項

  • 許可された用途に限ります。 OpenOSINT は、公開情報および準公開情報のソースを検索します。 認証を回避したり、システムを悪用したり、閲覧する権限のない情報にアクセスしたりすることはありません。 検索する各ソースについて、法令および利用規約を遵守する責任はユーザーにあります。 DISCLAIMER.md をご覧ください。
  • 集約結果の完全性は保証されません。 各ツールは、上流のソースが現時点で返す情報を報告します。 否定的な結果(侵害が見つからない、アカウントが見つからない)は、ソースが一致する情報を報告しなかったことを意味するだけで、情報漏えいが存在しないことを意味するものではありません。
  • ほとんどのツールは、ユーザーが管理しないサードパーティーのサービスに依存します。 21 個のツールのうち 9 個は API キーが必須であり、各プロバイダーの稼働状況、レート制限、料金の影響を受けます(Shodan、VirusTotal、Censys、AbuseIPDB、IP2Location、HaveIBeenPwned、および 3 つの Bright Data¹ 提供のツール)。 無料プランでは利用できる範囲が限られています。頻繁に利用する場合は、OpenOSINT ではなくプロバイダーの有料プランが必要です。
  • ローカルのバイナリはサンドボックス化されていないサブプロセスとして実行されます。 holehe、sherlock、sublist3r、phoneinfoga は、マシン上で外部プロセスとして実行されます。 ご自身で最新の状態に保ってください。OpenOSINT はこれらにパッチを適用したり、審査したりしません。
  • エンティティグラフモジュール(openosint[graph])は補助的なものであり、確定情報ではありません。 same_as リンクは、人間による確認を前提としたスコア付きの候補であり、検証済みの本人確認結果ではありません。docs/graph.md をご覧ください。
  • AI の出力は手がかりであり、証拠ではありません。 エージェントが呼び出せるのは上記のツールに限られます(デフォルトでは、受動的なツールのみです)。ツールの結果は実際の実行に基づいており、その結果を生成したツール呼び出しとともに表示されます。ただし、モデルが結果を誤読したり、誤った対象に結び付けたり、重視しすぎたりすることがあり、対象によってはツールの選択が不適切または不完全な場合もあります。結論に基づいて行動する前に、生のツール出力を確認してください。

サポートと商用利用

OpenOSINT は無料で、MIT ライセンスのもとで公開されています。サポートしたり、ホスト版または契約版を購入したりする方法として、以下をご利用いただけます(いずれも任意です)。

  • ホスト版: OpenOSINT Monitor(1 ドメインまで無料) · OpenOSINT Diligence。
  • スポンサー: Open Collective · SPONSORSHIP.md にプランとメディアキットを掲載しています · [email protected]。現在のスポンサーは以下に掲載しています。
  • 商用ライセンスとサポート: 調達向けのベンダー契約、保証、補償、SLA、または優先サポートを年間 €300 から提供しています。ソフトウェア自体の購入は不要です。COMMERCIAL.md または [email protected] をご覧ください。
注目の連携

IP2Location.io のロゴ

IP2Location.io — search_ip2location を提供 · 連携ガイド

強化された IP ジオロケーション、ISP、VPN/プロキシ/Tor、データセンターの検出

TestMu AI のロゴ

TestMu AI

TestMu AI(旧 LambdaTest)は、現代のエンジニアリングチーム向けに構築された AI ネイティブなテストクラウドプラットフォームです。自律的なテストの作成や高速実行から、AI エージェント、チャットボット、音声アシスタントのテストまで、あらゆるニーズに対応します。

公開中:侵害/漏えいした認証情報データ · メール/ID 検索 · レジデンシャルプロキシ — SPONSORSHIP.md をご覧ください。

貢献

イシューやプルリクエストを歓迎します。開発ワークフロー、連携登録チェックリスト、コーディング規約については、CONTRIBUTING.md をご覧ください。貢献する前に DISCLAIMER.md をお読みください。

デモ GIF/MP4 の再生成
export OPENOSINT_DEMO_KEY=sk-ant-...   # your Anthropic key — never committed
openosint web &                        # start the web server on :8080
make demo                              # record -> encode -> write docs/assets/demo-web-graph.*
git add docs/assets/demo-web-graph.*

前提条件とパイプラインの詳細については、scripts/record-demo/README.md をご覧ください。

メンテナー

Tommaso Bertocchi

コントリビューター

コントリビューター貢献内容
@consociovenv/uv-tool のバイナリー解決の修正 — 別途アクティベーションしなくても、同時にインストールされたツールが見つかるようになりました(#6)

ライセンス

OpenOSINT は MIT License のもとで公開されているオープンソースです。個人利用、商用利用、学術利用、クローズドソースでの利用を含め、あらゆる用途で無料で利用できます。


¹ この README の Bright Data リンクはアフィリエイト/紹介リンクです。これらのリンクから登録すると、追加費用なしで OpenOSINT に紹介料が支払われます。

認可されたセキュリティ調査のみにご利用ください。DISCLAIMER.md をご覧ください。

OpenOSINT v2.36.1 — 2026年10月

スター履歴

スター履歴グラフ

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。