Shodan:2026におけるハッカー向け検索エンジンの解説
Shodanは、物理世界のどれだけがオープンインターネットに直接接続されているか、そしてその露出が映画のようなゼロデイ攻撃ではなく、デフォルトパスワードを介してどれだけ頻繁に発生するかをセキュリティ業界に教えた検索エンジンです。最近のサイクルで最も引用されている事例は、ハリウッドの侵害ではありません。それは、2023年11月25日にポート20256のUnitronics PLCに「1111」と入力することで侵害されたペンシルベニア州アリクイッパの水道局コントローラーです。CISAの勧告AA23-335Aは、同じグループCyberAv3ngersが攻撃を続けた後、米国の複数のセクターにわたる少なくとも75の侵害されたPLCを挙げています。Shodanはまた、1994年のビデオゲーム「System Shock」に登場するAIの敵の名前でもあり、この検索エンジンの名前はそこから取られています。このガイドでは、2026年に検索エンジンが実際に何をしているのか、何が露出するのか、そしてデバイスを見つけた後に何が合法で何が違法なのかについて説明します。
Shodanとは何か、1段落で説明すると…
Shodan は、ウェブ ページではなく、インターネットに接続されたデバイスをインデックス化します。これが最も簡潔な一文での説明であり、実際に検索を実行するまでほとんどの人が見落としている部分です。クローラーは、IPv4 空間全体にわたる一般的なサービス ポートの長いリストにアクセスし、それぞれのポートが返すバナーを読み取ります。バージョン文字列、証明書、HTTP ヘッダー、場合によってはログイン画面のスクリーンショットなどです。このメタデータが検索可能になります。ジョン・マザーリーが最初にこのアイデアをスケッチしたのは 2003 年でしたが、一般向けサービスが開始されたのは 2009 年でした。クエリの結果はウェブ ページではなく、フィールドが付加された IP アドレスです。Google はページをランク付けしますが、Shodan はエンドポイントをランク付けします。
名前の由来:System ShockのSHODAN
すべて大文字の SHODAN は、1994 年のサイバーパンク ホラー ゲーム「Sentient Hyper-Optimized Data Access Network」の頭文字をとったものです。このゲームでは、彼女は深宇宙の研究と採掘ステーションを運営する人工知能として登場し、テリー・ブロシウスが、ゲームをプレイした人なら誰もが覚えているあの意図的などもりと無感情な声で演じています。彼女の倫理的な制約はバックストーリーの早い段階で取り払われ、1999 年の System Shock 2 では、彼女は意識を投棄されたモジュールに接続し、恨みを抱いて戻ってきます。批評家は彼女をゲーム史上最強の悪役の一人として常に評価しており、ほとんどの観察者は彼女を Portal の GLaDOS のデザインの祖先とみなしています。System Shock 3 は 2017 年に発表され、その後いくつかの問題のある引き継ぎを経て、Nightdive Studios (すでにオリジナルをリマスターしたチーム) が最近 IP を管理しています。System Shock 2 の脚本を書いたケン・レヴィンは、後に BioShock を制作しました。マザーリーはこの名前を、ある意味意味深い敬意の表れとして借用した。なぜなら、すべてを見通すサイバネティックな存在とは、検索エンジンが最終的にどのような姿へと成長したかということにほぼ合致するからだ。
Shodanの使い方:実際に機能する検索構文
Shodanのウェブインターフェースは、主に自由形式のテキストとキーと値のフィルターを組み合わせた検索クエリを受け付けます。フィルター機能こそが、Shodanを単なる好奇心の対象からツールへと変える鍵となります。
| フィルター | その機能 | 例 |
|---|---|---|
| `国:` | 国コードで制限する | `apache country:US` |
| `ポート:` | サービスポートに制限する | `ポート:22` |
| `org:` | 組織に限定する | `org:"Apple"` |
| `製品:` | 検出された製品でフィルタリング | `product:"Apache httpd"` |
| `バージョン:` | バージョン文字列でフィルタリング | `version:"2.4"` |
| `http.title:` | HTTPページタイトルでフィルタリング | `http.title:"login"` |
| `has_screenshot:true` | キャプチャされたスクリーンショットを含む結果のみ | `port:5900 has_screenshot:true` |
| `ssl.cert.expired:true` | 有効期限切れのTLS証明書 | `ssl.cert.expired:true port:443` |
プランのティアによって、できることが決まります。無料アカウントでは、クエリごとに最初の10件の結果が返されます。登録済みアカウントでは50件です。メンバーシップティアは1回限りの支払いで、月やブラックフライデーセールの時期によって49ドルから69ドルの間で変動します。その上には、商用ユーザー向けの小規模企業、法人、エンタープライズプランがあり、月ごとのクエリクレジットとShodan MonitorやShodan Trendsなどの機能へのアクセスが提供されます。また、有料アカウントなしで特定のIPアドレスの軽量メタデータを返す無料のInternetDB APIもあり、セキュリティワークフローに露出チェックを統合する開発者向けに設計されています。
Shodan はその名声を産業用フィルタで確立しました。`port:502` は Modbus コントローラを検出します。`port:102 product:Siemens` は S7 PLC を検出します。`port:47808` は BACnet ビルディングオートメーションシステムを検出します。パワーユーザー向けのクエリは、約 5 分で多くの情報を取得できます。`product:MongoDB -authentication` は認証されていない MongoDB インスタンスを一覧表示し、`"authentication disabled" "RFB 003.008"` は開いている VNC セッションを一覧表示し、`http.title:"OctoPrint" -title:"Login"` は保護されていない 3D プリンタを返し、`mikrotik streetlight` はデフォルトの RouterOS がまだ実行されている都市の信号機コントローラを検出します。
CLI は、日常的にクエリを実行するプログラマーや開発者にとって主力ツールです。`pip install shodan` でインストールし、`shodan init` でキーを一度設定すれば、`shodan search`、`shodan count`、`shodan host` でほとんどのアドホックな作業がカバーされます。Python ライブラリは、同じ Shodan プラットフォームのサーフェスをプログラムで公開します。Maltego、Metasploit、Recon-ng はすべて Shodan を統合してクエリをより広範なワークフローに連結し、サイバー市場インテリジェンス ツールは SOC ダッシュボード用にその上にレイヤーを構築します。セキュリティ カテゴリとしてのモノのインターネットは、これらのクエリが明らかにする内容によって大きく定義されます。

サイバーセキュリティのためのShodan:レッドチームとブルーチーム
Shodanのクエリは、それぞれ全く異なる目的で、3つのグループによって毎日実行されています。それは、レッドチーム、ブルーチーム、そしてバグバウンティハンターです。
レッドチームやペネトレーションテスターにとって、Shodanはアクティブなスキャンを開始する前に偵察ステップを処理します。ワークフローは、ターゲット組織を`org:""`フィルタにドロップし、外部から既に見えている攻撃対象領域を読み取ることです。このステップは完全に受動的であり、それがポイントです。なぜなら、Shodanは既にスキャンを実行しており、オペレーターはキャッシュされた結果を読み取るだけだからです。BugcrowdやHackerOneでのバグバウンティ調査も同じパターンで行われます。これは、設定ミスのある対象資産が報酬を得るための最速の道となることが多いからです。
ブルーチームにとって、Shodanは防御製品に近いものへと変貌します。Shodan Monitorは登録済みのIPアドレス範囲を継続的に監視し、新しいサービスが公開された場合や既存のサービスがバナーを変更した場合に通知します。そのユースケースは、本格的な商用ASMプラットフォームを構築することなく、攻撃対象領域を管理することです。CISAの勧告では、Shodanで検出可能な脆弱性を、Shodanが警告を発する目的で構築された滞留時間の問題として頻繁に挙げており、バナーとCVEを関連付けることで、防御側がリアルタイムのエクスプロイト可用性チェックに移行できるようにしています。
比較のために付け加えると、Shodanは唯一のエンジンではありません。ミシガン大学からスピンアウトしたCensysは、Shodanの1,237ポートに対し、65,535ポートすべてをスキャンします。新しいサービスを検出する時間も、Shodanの76時間に対し、Censysは約12時間です。中国に拠点を置くZoomEyeは、約3,828ポートをカバーし、その中間に位置します。このようなカバー範囲の差はあるものの、Shodanは依然として開発者ツールと無料プランの使いやすさにおいて優位に立っています。実際に開発者が最初にアクセスするエンジンはShodanなのです。
ここで、法的な側面について簡単に触れておきましょう。これは、経験の浅いペネトレーションテストエンジニアが陥りやすい点です。Shodanクエリを実行することは、米国、EU、英国では合法です。返ってくるバナーを読むことも合法です。米国のコンピュータ詐欺および濫用法は、誰かが許可なくそのバナーの背後にあるデバイスにログインしたり操作したりした瞬間から適用されます。2014年の第3巡回区控訴裁判所におけるAuernheimer判決の覆し、および2022年の第9巡回区控訴裁判所におけるhiQ Labs対LinkedIn判決により、議論はスキャンではなく「許可なしのアクセス」へとシフトしました。これにより、セキュリティ専門家は受動的な偵察を行う余地が広がりました。これは、ログインの許可を与えるものではありません。
ショダンが暴くもの:現実世界の恐怖ツアー
ここでは検証済みの事例のみを取り上げます。最近の最も分かりやすい例は、アリクイッパの事例です。2023年11月25日、攻撃者はペンシルベニア州アリクイッパ市水道局のUnitronics VisionシリーズPLCにTCPポート20256で侵入し、初期設定のパスワード「1111」で認証しました。犯行声明を出した人物はCyberAv3ngersで、CISAはこの組織をIRGCと関連付けています。その後に出された共同勧告AA23-335Aでは、水道、下水、食品・飲料、製造業など、少なくとも75台の米国製PLCが侵害されたことが報告されています。ゼロデイ攻撃は行われておらず、高度なスキルも必要ありませんでした。インターネット上に公開された初期設定のコントローラが、そのままの状態で存在していただけです。
Aliquippaのような見出しの裏には、認証されていないデータベースという、はるかに大規模で静かな背景が存在する。MongoDBの調査やスナップショットでは、その数は35,000から194,000の間で変動しており、ElasticsearchとRedisも同様の規模となっている。繰り返し出現する身代金要求マーカー(インスタンス名が`READ_ME_TO_RECOVER_YOUR_DATA`に変更されている)は、2017年以降、毎年、明確な終わりなく現れ続けている。認証なしでMosquittoを実行しているMQTTブローカーは、繰り返し80,000を超えており、これはオープンに動作しているIoTメッセージング基盤の大部分を占めている。
Industroyer / CrashOverride は2016 年にウクライナの発電所をダウンさせた。厳密には Shodan の話ではないが、発見パターンは同じだ。サービスバナーで公開されている産業制御システムを見つけ、それらが使用するプロトコルを攻撃する。2016 年に Dyn を一時的にオフラインにしたボットネットMirai は、Shodan に頼るのではなく独自のスキャンを実行したが、手法は同じだった。Telnet と SSH のデフォルト認証情報を持つ IoT デバイスを見つけ、それらを群れに加える。次の点が重要だ。Mirai のソースコードは 2016 年 10 月に公開され、根本的な脆弱性 (メーカーがデフォルトパスワードで出荷していること) が構造的に対処されなかったため、亜種はそれ以来 10 年近くにわたって新しいデバイスを勧誘し続けている。
露出した産業用カメラは、おそらくShodanの検索結果の中で最も映画的で、間違いなく最も一貫性のある結果です。`port:554`フィルターと`has_screenshot:true`を組み合わせると、何十万ものウェブカメラやセキュリティカメラのフィードが返され、その多くはインストール時の認証情報がそのまま残っています。スクリーンショットは検索結果自体に表示されます。これが、偶然ホームページにたどり着いた非技術系の読者にとってShodanが不快な評判を得ている理由であり、また、このエンジンがジャーナリズムの世界に進出する理由でもあります。発電所、信号機、デフォルトの認証情報を持つルーターは、より退屈なフィルター(ICSの場合は`port:502`、都市交通ネットワークの場合は`mikrotik streetlight`、匿名FTPの場合は`port:21`)でも同様に表示されます。デバイスレベルでの対策は2013年から変わっていませんが、まさにそれが問題なのです。デフォルトのパスワードを変更し、カメラやPLCをVPNまたはリバースプロキシの背後に配置し、ボックスにパブリックIPアドレスを与えないようにしてください。露出したデバイスへのハッキングが成功した事例はすべて、この同じ見落としに起因しています。
よく誤って引用される例の一つを訂正する必要がある。VerkadaはShodanの事例ではない。2021年3月に15万台の顧客カメラが流出したこの事件は、インターネットに公開されたカメラではなく、スーパー管理者権限が漏洩した設定ミスのあるカスタマーサポートサーバーが原因だった。2024年8月にFTCが科した295万ドルの罰金は、厳密にはCAN-SPAM法違反に対するもので、20年間の監査同意命令にまとめられていた。この事例は、本来関係のないShodanの解説記事のほぼすべてに未だに登場しているため、指摘しておく価値がある。
Shodanは合法か?そしてスキャンの倫理とは?
要するに、答えはイエスです。Shodanクエリを実行することは合法です。Shodanが返すバナーを読むことも合法です。グレーゾーンは、誰かがその結果に基づいて行動を起こした時から始まります。自分のものではない公開されたデバイスを見つけた場合、鍵のかかっていない玄関ドアの場合と同じルールが適用されます。見るのは構いませんが、入るのはいけません。米国では、コンピュータ詐欺および濫用法(CFAA)が実際に取り締まっているのは、許可なく自分の所有していないデバイスにログインすることです。そして、過去10年間のCFAAの判決は、「スキャン」よりも「許可」に焦点を絞ってきました。英国のコンピュータ不正使用法とEUのNIS2フレームワークも、異なる表現ではありますが、同様の結論に達しています。
セキュリティ専門家にとっての実践的な倫理ルールは、Shodanが表示するデバイスはすべて所有者の所有物であると想定することです。脆弱性の開示には、連携した脆弱性開示チャネル、自国のCSIRT、または公開されているsecurity.txtを使用してください。バグバウンティの研究者は、対象外の資産に対してバナーの読み取り以上のテストを行ってはならず、HackerOneやBugcrowdのような評判の良いプラットフォームでは、そのような行為はプログラムから除外されます。これは技術的な問題ではなく、意図と同意の問題です。
注意すべき点が一つあります。受動的な検索であっても、Shodan側には監査ログが記録されます。また、企業法務チームは、たとえクエリ自体が合法であっても、従業員が競合他社のIPアドレス範囲を照会することに異議を唱える場合があります。企業環境における慎重な対応としては、自社の資産と承認された対象のみを照会し、各クエリを実行した理由を記録しておくことが挙げられます。

開発者向けShodan、Censys、ZoomEyeの比較
| エンジン | スキャンされたポート | 新規サービス検出の平均 | 無料プラン | 起源 |
|---|---|---|---|---|
| 初段 | 約1,237 | 約76時間 | 認証されていない結果10件、登録済みの結果50件 | ジョン・マザーリー、2009年 |
| センシス | 65,535人(満席) | 約12時間 | 学術アクセスによる限定的なクエリクレジット | ミシガン大学 |
| ズームアイ | 約3,828 | ミドルレンジ | 登録すれば無料 | Knownsec、中国 |
Shodanは開発者エクスペリエンスとライブラリの品質で優れています。Censysはカバレッジと証明書分析で優れています。ZoomEyeは、一部のアジア太平洋プロトコルのカバレッジにおいて重要です。ほとんどの運用セキュリティワークフローでは、CLIを通じてこれら3つのうち少なくとも2つに問い合わせを行います。
Shodanは多くの懸念を引き起こしていますが、実際には公共インターネットを映し出す鏡のような役割を果たしています。Shodanが明らかにする情報は、Shodanの責任ではなく、デバイス側で行われた設定選択の結果です。2026年の対策は2009年と変わりません。デフォルトのパスワードを変更し、情報公開を減らし、まずは自分のフットプリントを監視し、デバイスを探そうとする人は既に見つけていると考えるべきです。