重要なポイント
Google Dorkingは「Googleハッキング」という別名でも知られており、高度な検索クエリーを使用して通常の検索クエリーでは見つけづらいインターネット上の情報を発見するテクニックです。Googleの検索アルゴリズムの機能を活用して、検索結果の範囲内で特定の文字列を見つけ出すというものです。「ハッキング」という言葉が持つ違法な意味合いとは逆に、Google Dorking自体は合法です。ただし、検索結果に含まれるファイルにアクセスすることは合法でない場合もあります。また、セキュリティの専門家がこの方法でシステムの脆弱性を特定することもよくあります。
このブログ記事によって、Webサイトの脆弱性を公にしかねない検索タイプをサイト運営者ご自身に理解いただき、セキュリティの問題を特定し修正できるようになっていただければ幸いです。
Google Dorkingとは、高度な検索演算子をキーワードや文字列と組み合わせて使用し、特定の情報を探すようGoogleの検索アルゴリズムに指示する手法です。特定の種類のファイルを探したい場合や、1つのWebサイト内に限定して検索したい場合のほか、Webページのタイトルに含まれるキーワードを探したい場合や、特定のURLにリンクしているページを探したい場合に有効です。Google Dorkingの核心は、Googleがインデックスした膨大なWebページを活用することです。
ここで注意したいのは、Google Dorkingで見つかる結果はすべて一般にアクセス可能なドキュメントに記載されており、それらはすでにGoogleが発見してインデックスしているという点です。こうしたファイルの中に機密情報が含まれていたとすれば、リスクを生みだしたのはサイトの所有者であり、その問題を解決する責任は彼らが負うのです。
以下に挙げた種類の検索は、複数を組み合わせて使うこともできます。SEOの専門家やその他Googleのパワーユーザーが、合法的な目的のためにこれらを広く使用しています。これによって、より高度なGoogle検索結果を得られるようになります。
Googleの高度な検索演算子について、いくつか基本的な例を挙げてみましょう。


悪意のある人物やボットがこれらの演算子を巧妙に組み合わせると、機密情報や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の利用規約に違反しないよう、法的および倫理的な境界線を理解する必要があります。
Googleの利用規約に違反しているにもかかわらず、手作業で逐一確認することなく、大量の検索を個人が瞬時に実行できるボットや自動化ツールは、数多く出回っています。ある人物が一般的なGoogle Dorksの膨大なリストを作成し、特定のサイトを標的に自動化ツールを使って実行することで、問題のある検索結果をすべて一気に収集することも可能です。
Google Dorkingから情報を守るには、技術的対策と行動的対策を組み合わせて実行します。これにより、検索エンジンを通じて機密情報に簡単にアクセスできないようにするのです。ベストプラクティスをいくつかご紹介しましょう。
以上のような技術的対策と行動的対策を組み合わせることで、組織は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は「ハッキング」手法の1つであり、Google検索で高度な検索演算子を使用することで、通常の検索クエリーでは簡単に見つからない機密情報や脆弱性を探し出すものです。
Google Dorkingでは特定の検索演算子とクエリーを使用することにより、ログインページやパスワード、機密ファイル、無防備なデータベースなどの情報を見つけ出します。そうした情報はGoogleによりインデックスされたものですが、一般からのアクセスを意図したものではありません。
Google Dorking自体は違法ではありませんが、見つかった情報を不正アクセスや悪意ある目的のために使用することは、違法で倫理に反する場合があります。
「site:」「filetype:」「inurl:」「intitle:」「intext:」などが挙げられます。これらの演算子を使って検索を絞り込み、特定のタイプの情報を見つけることができます。
身を守るためには、自社のWebサイトを定期的に監査することです。具体的には、robots.txtを使ってインデックス化を制限したり、機密情報を一般公開部分から削除したり、露出しているデータを監視したりすることです。
このブログはこちらの英語ブログの翻訳です。
この記事について誤りがある場合やご提案がございましたら、splunkblogs@cisco.comまでメールでお知らせください。
この記事は必ずしもSplunkの姿勢、戦略、見解を代弁するものではなく、いただいたご連絡に必ず返信をさせていただくものではございません。