San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
San Antonio API Security Summit 2025 に参加しよう!
閉じる
プライバシー設定
ウェブサイト運営に必要なCookieや類似技術を使用しています。追加のCookieは貴社の同意がある場合のみ利用されます。同意は「Agree」をクリックすることでいただけます。どのデータが収集され、どのようにパートナーと共有されているかの詳細は、Cookieポリシープライバシーポリシーをご確認ください。
Cookieは、貴社デバイスの特性や、IPアドレス、閲覧履歴、位置情報、固有識別子などの特定の個人情報を取得、解析、保存するために使用されます。これらのデータは様々な目的で利用されます。分析Cookieによりパフォーマンスを評価し、オンライン体験やキャンペーンの効果向上に役立てます。パーソナライズCookieは、利用状況に応じた情報やサポートを通じ、貴社専用の体験を提供します。広告Cookieは、第三者が貴社のデータをもとにオーディエンスリストを作成し、ソーシャルメディアやネット上でのターゲット広告に使用します。貴社は各ページ下部のリンクから、いつでも同意の許可、拒否、または撤回が可能です。
ご送信ありがとうございます。内容を受け付けました。
申し訳ありません。フォーム送信時にエラーが発生しました。
Attacks, Vulnerabilities

Googleハック

Googleハッキング(別名、Google dorking)は、攻撃者が高度なGoogle検索手法を用いて情報を収集する技法です。検索クエリによって、Webアプリのセキュリティホールの発見や、特定ターゲット向けの情報収集、エラーメッセージに含まれる機密情報、認証情報などが記載された文書の発見が可能となります。

攻撃者は、脆弱なWebアプリや特定の文書形式(.pwd、.sqlなど)を探すために高度な検索文字列を使用します。検索対象を特定のWebページに限定することも、全サイトから情報を探し出すこともでき、該当するページの一覧が返されます。

著者
Googleハック

Googleハックとは何か? 

クローラが強力かつ複雑になると、Webに公開されたサーバ全体の情報が広く収集されやすくなります。Webサーバやアプリが誤って情報を公開すると、その内容は即時に検索エンジンで取得されてしまいます。個人情報、例えばセキュリティ番号やVisa番号、パスワードなどが含まれるほか、顧客情報、人事書類、さらには誤ってサーバに置かれた数式など、企業独自の機密情報も狙われる対象です。また、クローラはエラーメッセージなど、アプリの不具合を示す情報も収集するため、適切な検索キーワードを使えば、誰でもこれらの情報を閲覧できるようになります。

既存の用語では巨大な検索エンジンGoogleを指すことが多いですが、今回の攻撃対象はYahoo!、Ask.com、LiveSearchなど、すべてのクローラを含んでいると考えられます。

実際にGoogleが情報流出を発見した例として、SUNY Stony Brookでは、誤ってWeb上に個人情報が掲載された結果、9万人分のデータが危険にさらされました。また、Jax Federal Credit UnionではJFCUの印刷業者関連サイトから情報が入手され、Newcastle-upon-Tyneの市議会では数千人分の住民の詳細な情報が交換されました。

Googleハッキングに用いる強力なキーワードを提供するリソースは多数存在します。中でも有名なのはJohnny's I Hack Stuffです。Googleハッキングデータベースは、認証情報、エラーコード、脆弱な文書やサーバ、そしてWebサーバの配置情報を含む文書を探すためのキーワードを網羅的に掲載しています。

さらに、Googleハッキングの悪質な手法は、悪意あるコードを迅速に拡散させるための手段としても利用されます。有名なWebロケール破壊ウイルスSantyWormは、特定のPHP脆弱性を突き、Googleで脆弱なマシンを探し出して感染させることで拡散しました。

Googleハッキングデータベース

Googleを用いれば、どのプラットフォームでもSQLインジェクションが0.2 Google秒で実行される可能性があります。dorks、またはgoogle dorksとは、Googleに送信される独特な検索語句です。これらを利用すると、脆弱なサーバの発見、機密情報や脆弱な文書の収集、下層ディレクトリの特定などが可能となり、ペンテスト作業が大幅に簡素化される場合もあります。

分類の説明

  • 侵入経路

攻撃者がWebサーバへの侵入の足掛かりを得るための検索クエリです。

  • Webサーバ検出

Googleの優れたサーバプロファイリング機能を活用します。

  • 機密ディレクトリ

複数のサイトで共通の機密ディレクトリの一覧です。

  • ユーザ名を含むファイル

パスワードは含まず、ユーザ名のみが記載された文書です。

  • 機密データ

パスワード、ユーザ名、リソース、その他機密情報や設定ファイルなどが含まれる文書です。

アプリケーションセキュリティの弱点を突く手法です。

  • 脆弱なファイル

Googleがサイト内で発見する脆弱なファイルです。

  • パスワードを含むファイル

パスワードが記載された文書です。

  • 脆弱なサーバ

明らかな脆弱性を持つサーバが検索で見つかります。

  • ログインポータルを含むページ

各種サービスのログインページや、機密機能を持つサイトの入口ページです。

  • エラーメッセージ

ユーザ名や秘密鍵などを含む詳細なエラーメッセージです。

脆弱なサーバや各種セキュリティ警告情報を検索し、具体的な項目やバージョン情報を明示します。

  • 企業や脆弱性に関するデータ

例えば、ファイアウォールハニーポット、IDSログ、ネットワークデータなどが含まれます。

  • 興味深い情報を含むファイル

ユーザ名やパスワードは含まれないものの、興味深い内容が記されています。

  • 各種オンラインデバイス

プリンタやビデオカメラなど、様々なデバイスに関する情報が含まれます。

  • オンラインショッピングの機密情報

顧客情報、販売業者、注文、クレジットカード情報など、Web上のショッピング関連情報を収集するための検索クエリです。

Google検索の論理演算子と記号

攻撃者は、AND、NOT、(大文字小文字を区別)などの論理演算子や、記号(例: –, *)をGoogle検索で活用できます。詳しくは以下の一覧をご参照ください。

  1. AND または +

説明: キーワードを含めるために使用され、すべての指定語が抽出されます。

: web AND application AND security, web +application +security

  1. NOT または –

説明: キーワードを除外するために使用されます。

: web application NOT security, web application – security

  1. OR または |

説明: 複数のキーワードのうち、いずれかが含まれていればよい場合に使用されます。

: web application OR security, web application |security

  1. チルダ (~)

説明: 同義語や類似語を含めるために使用されます。

: web application ~security

  1. ダブルクォーテーション (")

説明: 完全一致を求めるために使用されます。

: "web application security"

  1. ピリオド (.)

説明: 単一文字のワイルドカードとして使用されます。

: .eb application security

  1. アスタリスク (*)

説明: 単一語に対する特別な場合に使用されます。

: web * security

  1. 括弧 (())

説明: 複数の検索条件をまとめるために使用されます。

: ("web security" | websecurity)

Google Dorks演算子の識別

高度なGoogle演算子は、検索結果の最適化に役立ちます。以下は主要な演算子の構文です。

構文は、演算子、コロン (:)、および検索対象の完全なキーワードの3要素で構成され、スペースを含む場合は引用符 (") を使用します。

この構文はGoogleに認識され、指定された情報に基づいて検索が絞り込まれます。例えば、サイトのタイトルに「file of」という文字列があるページを探し(Apache HTTPサーバが目録ページで使用するデフォルトタイトルです)、さらに intitle:"index of" filetype:sql という検索クエリでSQL文書に限定して検索します。

ここから、強力なGoogleハック検索キーワードを支える優れたGoogle検索演算子を見ていきます。

intitle – htmlタイトルに指定された単語が含まれるページのみを表示するよう、Googleへ指示します。たとえば intitle:"login page" は、タイトルに "login page" が含まれるページを表示します. 

allintitle – intitleと同様ですが、タイトル内のすべての指定語が含まれるページを検索します. 

inurl – URLに指定された単語を検索します。たとえば inurl:"login.php" または inurl:login.jsp intitle:login. 

allinurl – inurlと同様ですが、URL内の全ての語句を検索します. 

filetype – 指定されたファイルタイプを検索します。filetype:pdf はサイト内のpdfファイルを検索し、filetype:txt は拡張子.txtのファイルを対象とします。たとえば "delicate however unclassified" filetype:pdf 

ext – filetypeと同様に、ext:pdf はpdf拡張子の文書を探します. 

intext – ページ本文を検索します。通常のGoogle検索と同様です。たとえば intext:"index of/" や Host=*.* intext:enc_UserPassword=* ext:pcf 

allintext – intextと同様ですが、本文内のすべての指定語を検索します. 

site – 検索対象を特定のサイトに限定します。たとえば site:example.com

プログラマーがURL以外のフィールドで検索したい場合、以下のキーワードを利用できます:

  • intitle:
  • inurl:
  • intext:
  • characterize:
  • site:
  • phonebook:
  • maps:
  • book:
  • froogle:
  • information:
  • film:
  • climate:
  • related:
  • connect:

これらのオプションを活用すると、通常のGoogle Dorkでは分かりにくいサイト情報を明らかにでき、見つけにくいコンテンツの探索にも役立ちます。

Googleハッカー攻撃を防ぐ方法

機密データがインターネット上に公開され、検索エンジンを通じて容易にアクセスされるため、専門の情報収集者に狙われる恐れがあります。Googleハッキングは、攻撃者が既知の脆弱性や設定ミスを探るための手法です。しかし、検索エンジンによる情報漏洩を防ぐために、いくつかの対策を講じることが可能です。例えば、Web検索エンジンが機密情報を収集しないように設定し、WAF(Webアプリケーションファイアウォール)にて、非公開の管理者名やVisa番号のようなパターンを含むリクエスト・レスポンスを検知し、漏洩の可能性がある場合には遮断するなどの高度な設定が求められます。Johnny's I Hack Stuffでは、これらの文書例も紹介されています。

機密情報がWeb検索で漏れていないかどうかは、定期的にGoogleをチェックすることで確認できます。GooScanやGoolag Scannerなど、そうした目的に特化したツールもインターネット上で入手可能です。

留意点

Googleの検索ツールやその他のサービスをハッキングする行為自体は「Googleハッキング」とは呼ばれません。実際、Googleはホワイトハッカーによるセキュリティ向上を歓迎しており、ハッキングによりWebアプリの安全性が高まる場合には報奨金を支払う制度も設けています。

全てのクローラに影響を及ぼすため、Googleハッキングは実質的に検索エンジンハッキングと言えます。もちろん、他の検索ツールで特定の検索を行うことも可能です。

結論

Googleハッキングは、対象システムに直接アクセスすることなくWebページを探し出し閲覧する手段として優れているだけでなく、攻撃の情報収集フェーズにおいてデータを明らかにする正当な方法でもあります。多くの情報セキュリティ評価において欠かせない手法であり、適切に実施すれば非常に有益な結果をもたらします。GHDBには誰でも参照できる多数の検索クエリが公開され、高度な演算子を用いた特定のターゲットへのテストも可能です。

FAQ

参考資料

最新情報を購読

更新日:
February 25, 2025
学習目標
最新情報を購読
購読
関連トピック