Google Dorking:サイバーセキュリティ専門家のための概要

Security Stephen Watts

重要なポイント

  1. Google Dorkingは、高度な検索演算子を使用して、意図せず公開されている情報を発見する手法です。サイバーセキュリティの専門家にとっては、一般公開されているWebサイトの脆弱性を特定する効果的なツールでもあります。
  2. Google Dorkingは合法的な手法ですが、機密データや保護されていないデータベース、非公開文書の漏えいといったリスクも伴います。そのため、ウェブサイトの適切な設定やセキュリティ対策が特に重要です。
  3. こうしたリスクを軽減するには、機密データへの一般アクセスの制限、robots.txtやnoindexタグの適切な使用、定期的な監査の実施、データセキュリティに関する従業員教育、システムの継続的アップデートなどの対策が必要です。

Google Dorkingは「Googleハッキング」という別名でも知られており、高度な検索クエリーを使用して通常の検索クエリーでは見つけづらいインターネット上の情報を発見するテクニックです。Googleの検索アルゴリズムの機能を活用して、検索結果の範囲内で特定の文字列を見つけ出すというものです。「ハッキング」という言葉が持つ違法な意味合いとは逆に、Google Dorking自体は合法です。ただし、検索結果に含まれるファイルにアクセスすることは合法でない場合もあります。また、セキュリティの専門家がこの方法でシステムの脆弱性を特定することもよくあります。

このブログ記事によって、Webサイトの脆弱性を公にしかねない検索タイプをサイト運営者ご自身に理解いただき、セキュリティの問題を特定し修正できるようになっていただければ幸いです。

Google Dorkingの仕組み

Google Dorkingとは、高度な検索演算子をキーワードや文字列と組み合わせて使用し、特定の情報を探すようGoogleの検索アルゴリズムに指示する手法です。特定の種類のファイルを探したい場合や、1つのWebサイト内に限定して検索したい場合のほか、Webページのタイトルに含まれるキーワードを探したい場合や、特定のURLにリンクしているページを探したい場合に有効です。Google Dorkingの核心は、Googleがインデックスした膨大なWebページを活用することです。

ここで注意したいのは、Google Dorkingで見つかる結果はすべて一般にアクセス可能なドキュメントに記載されており、それらはすでにGoogleが発見してインデックスしているという点です。こうしたファイルの中に機密情報が含まれていたとすれば、リスクを生みだしたのはサイトの所有者であり、その問題を解決する責任は彼らが負うのです。

Google Dorkingの基本的な手法

以下に挙げた種類の検索は、複数を組み合わせて使うこともできます。SEOの専門家やその他Googleのパワーユーザーが、合法的な目的のためにこれらを広く使用しています。これによって、より高度なGoogle検索結果を得られるようになります。

Googleの高度な検索演算子について、いくつか基本的な例を挙げてみましょう。

site検索

Filetype検索

悪意のある人物やボットがこれらの演算子を巧妙に組み合わせると、機密情報やWebサイトのインフラに関する詳細情報などが見つかってしまうおそれがあります。

たとえば基本的な例として、「intitle:"index of" inurl:ftp」を検索すると、公開FTPサーバーを見つけることができます。このクエリーに少し手を加え、ドキュメント内にある特定の単語に絞りこむこともできます。たとえば 「intitle:"index of" inurl:ftp intext:confidential」 ということです。

初歩的な例をもう1つ挙げるなら、「filetype:txt inurl:"email.txt"」と検索すると、メールアドレス一覧がテキスト形式で表示されます。

これを 「site:」 検索と組み合わせると、特定のWebサイトからクローラーによって意図せずインデックスされた情報が見つかります。

こうした検索では、特定のテクノロジーやCMSシステムで使われるデフォルトのフレーズやパスも利用できます。たとえば 「"Index of" inurl:phpmyadmin」 や、「"SquirrelMail version" "By the SquirrelMail development Team"」といったものです。

Google Dorkingの危険性

Google Dorkingは合法的な目的で使用するのに効果的なツールですが、意図せず公開されている機密情報を明らかにする可能性もあり、プライバシーの侵害やサイバー攻撃といったリスクも引き起こします。また、保護されていないデータベースやサーバーの認証情報、非公開のドキュメントなどを露出させることにより、データ漏えい、なりすまし、その他のサイバー犯罪につながる場合もあります。ユーザーは、プライバシー関連法規やGoogleの利用規約に違反しないよう、法的および倫理的な境界線を理解する必要があります。

Googleの利用規約に違反しているにもかかわらず、手作業で逐一確認することなく、大量の検索を個人が瞬時に実行できるボットや自動化ツールは、数多く出回っています。ある人物が一般的なGoogle Dorksの膨大なリストを作成し、特定のサイトを標的に自動化ツールを使って実行することで、問題のある検索結果をすべて一気に収集することも可能です。

Google Dorkingによるリスクの軽減

Google Dorkingから情報を守るには、技術的対策と行動的対策を組み合わせて実行します。これにより、検索エンジンを通じて機密情報に簡単にアクセスできないようにするのです。ベストプラクティスをいくつかご紹介しましょう。

  1. 機密情報への一般アクセスを制限する:機密文書、非公開データベース、管理者用インターフェイスなどの機密データに対しては、適切な認証がないとアクセスできないよう確実に設定します。具体的には、パスワードによる保護やIPホワイトリストなどのアクセス制御を通じて行います。問題を解決するうえで、これは間違いなく最善の方法です。
  2. robots.txtファイルを適切に設定するrobots.txtファイルは、サイトのページやセクションのうちスキャンやインデックスをすべきでないものを、Webクローラーに指示するために使われます。このファイルを正しく設定すれば、機密のディレクトリやファイルが検索エンジンの結果に表示されることを防止できます。ただし、この対策ですと、悪意あるクローラーや個人がファイルにアクセスすることは防げません。実際、robots.txtファイルに特定の公開ディレクトリを追加すると、悪意ある行動者に意図せず手がかりを与えてしまうおそれがあります。筆者によるSearch Engine Journalの記事「How to Address Security Risks with Robots.txt Files」(英語)をご覧ください。
  3. 「NoIndex」や「NoFollow」タグを挿入する:Webページを検索エンジンにインデックスされたくない場合は、こうしたHTMLタグをページに挿入します。「NoIndex」タグはそのページをインデックスしないこと、「NoFollow」タグはそのページ上にあるリンクをたどらないことを、検索エンジンに指示します。
  4. Webサイトの定期的な監査と監視:Webサイトを定期的に監査し、潜在的な脆弱性を特定し修復します。Webログの監視は、Google Dorkingを使った試みの可能性がある異常な検索パターンの検出にも役立ちます。Webサイトに対して悪用されるおそれのあるGoogle Dorksコマンドのリストを作成し、それらの検索を実行すると何が見つかるのかを確認します。それによって、不用意に露出しているファイルを修正または保護しましょう。
  5. ファイルやディレクトリ権限の保護:Webサーバーにあるファイルやディレクトリ権限が、不正アクセスを防ぐよう適切に設定されていることを確認します。機密ファイルの保存場所は、一般アクセスが可能なディレクトリにしてはいけません。
  6. 従業員の教育と研修:Google Dorkingに関連するリスクに対して従業員の意識を高め、データセキュリティのベストプラクティスを学ぶ研修を実施する必要があります。内容としてはたとえば、機密情報の安全な取り扱い方法を学んだり、データがオンラインでどのようなかたちで不用意に露出する可能性があるのかについて意識を高めたりするものです。
  7. データの暗号化:機密データを暗号化することで、保護をいちだんと強化できます。データがオンラインで不用意に露出した場合でも、暗号化によって不正アクセスを防ぐことができます。
  8. セキュリティツールやファイアウォールの使用:セキュリティツールやファイアウォールを実装し、不正アクセスの試みやその他の不審な活動を検出および防止します。
  9. ソフトウェアやシステムを最新の状態に保つ:Webサーバー、CMS、プラグインを含むすべてのソフトウェアを定期的にアップデートして、既知の脆弱性から保護します。
  10. デフォルトのファイルパスやフレーズを変更する:カスタムログインURLを使ったり、同様のアクションを実行することで、技術的によくあるパターンをわかりにくくします。たとえば、CMSとしてWordPressを使用している場合、デフォルトの管理者ログインURLはhttps://yourwebsite.com/wp-adminですが、これは簡単に変更できます。そうすれば、悪意ある行動者が機密データを探そうとしても、何を検索すればよいのかわからなくなります。

以上のような技術的対策と行動的対策を組み合わせることで、組織はGoogle Dorkingに対する脆弱性を大幅に低減し、全般的なサイバーセキュリティ態勢を強化できます。

既知の有効な検索演算子の全リスト

Googleは近年、「link:」や「inpostauthor:」といった数多くの検索演算子を非推奨としてきました。以下の表は、現時点で有効なGoogleの検索演算子の完全リストであり、そのいくつかはGoogle Dorkingで使用できます。

検索演算子
機能
“ ”
特定の文字列または表現を含むページを検索する。
“buttercup the pwny"
OR
AまたはBに関連するコンテンツを検索する。
buttercup OR pwny
|
「OR」と同じ。
buttercup | pwny
AND
XとYの両方に関連するコンテンツを検索する。
buttercup AND pwny
-
特定の文字列または表現を除外してページを検索する。
buttercup -splunk
*
検索クエリー内で任意の文字列と一致するものを検索する。
buttercup * splunk
( )
複数の検索クエリーを1つにまとめる。
(buttercup OR pwny) splunk
define:
文字列または表現の意味をたずねる。
define:pony
cache:
Webサイトの保存された最新バージョンを取得する。
cache:splunk.com
filetype:
特定のファイル形式を検索する(PDFなど)。
splunk filetype:pdf
ext:
「filetype:」と同じ。
splunk ext:pdf
site:
特定のWebサイトに限定して結果を取得する。
site:splunk.com
related:
特定のドメインに属するWebサイトを検索する。
related:splunk.com
intitle:
タイトルタグ内に特定の文字列を含むWebページを検索する。
intitle:splunk
allintitle:
タイトルタグに複数の文字列を含むWebページを特定する。
allintitle:splunk enterprise
inurl:
URL内に特定の文字列を含むWebページを検索する。
inurl:splunk
allinurl:
URL内に複数の文字列を含むWebページを検索する。
allinurl:splunk enterprise
intext:
特定の文字列を含むコンテンツを検索する。
intext:splunk enterprise
allintext:
文字列の組み合わせを含むコンテンツを検索する。
allintext:splunk enterprise
weather:
特定の地域の現在の天気予報を取得する。
weather:birmingham
stocks:
銘柄記号に基づいて、特定の株価の詳細な動向などを取得する。
stocks:splk
map:
検索結果のトップにGoogleマップを表示させる。
map:birmingham, al
movie:
特定の映画に関する詳細情報を収集する。
movie:ponies
in
ある測定単位を別の測定単位に変換する。
16oz in lb
before:
特定の日付以前の結果に絞り込む。
splunk before:2018-01-01
after:
特定の日付以後の結果に絞り込む。
splunk after:2018-01-01

まとめ

Google Dorkingは高度かつ効果的な情報収集方法であり、サイバーセキュリティから調査研究まで幅広く利用できます。組織にとって重要なのは、自社Webサイトのどの部分がGoogleの検索結果から意図せずにアクセス可能になっているかを理解することと、不適切なファイルが公開検索エンジンに露出することで発生する脆弱性やリスクを軽減するために適切な対策を講じることです。

Google Dorkingに関するよくある質問

Google Dorkingとは何ですか?
Google Dorkingは「ハッキング」手法の1つであり、Google検索で高度な検索演算子を使用することで、通常の検索クエリーでは簡単に見つからない機密情報や脆弱性を探し出すものです。
Google Dorkingの仕組みはどのようなものですか?
Google Dorkingでは特定の検索演算子とクエリーを使用することにより、ログインページやパスワード、機密ファイル、無防備なデータベースなどの情報を見つけ出します。そうした情報はGoogleによりインデックスされたものですが、一般からのアクセスを意図したものではありません。
Google Dorkingは違法ですか?
Google Dorking自体は違法ではありませんが、見つかった情報を不正アクセスや悪意ある目的のために使用することは、違法で倫理に反する場合があります。
Google Dorkingの検索演算子でよく使われるものをいくつか教えてください。
「site:」「filetype:」「inurl:」「intitle:」「intext:」などが挙げられます。これらの演算子を使って検索を絞り込み、特定のタイプの情報を見つけることができます。
組織はどのようにしてGoogle Dorkingから身を守ればよいのでしょうか?
身を守るためには、自社のWebサイトを定期的に監査することです。具体的には、robots.txtを使ってインデックス化を制限したり、機密情報を一般公開部分から削除したり、露出しているデータを監視したりすることです。
このブログはこちらの英語ブログの翻訳です。

関連記事

SOCの進化:Splunk Enterprise Securityによるリアクティブからエージェンティックへの転換(RSAC 2026)
セキュリティ
5 分程度

SOCの進化:Splunk Enterprise Securityによるリアクティブからエージェンティックへの転換(RSAC 2026)

AIを活用したセキュリティ運用プラットフォームとしてSplunk Enterprise Security (ES)をさらに強化する重要なアップデートをご紹介します。
インフラセキュリティの基本
セキュリティ
12 分程度

インフラセキュリティの基本

インフラセキュリティとは、コンピューター、ネットワークシステム、クラウドといった、ハードウェアおよびソフトウェアのテクノロジー資産に関するセキュリティです。詳しくは、こちらのガイドをご覧ください。
脅威ハンティングの始め方:ビギナーガイド
セキュリティ
8 分程度

脅威ハンティングの始め方:ビギナーガイド

脅威ハンティングをこれから始める方も、新しいデータ環境で脅威ハンティングを行う方も、まずはここから始めましょう!このブログ記事では脅威ハンティングの基礎をご紹介します。