Hello there, ('ω')ノ
ペネトレーションテストを実行するとき、最初に行うことの1つは偵察で。
ターゲットのすべてのドメインとサブドメインを特定した後に。
それらのエンドポイントにあるパスを特定して。
これを行うには、ディレクトリブルートフォースの実行や。
証明書の透明性ログの使用、Webサイトのクロールなどがあって。
今回は、ウェイバックマシンを使用して。
Webサイトの興味深いパスや脆弱性を見つける方法を。
ウェイバックマシンはインターネット全体のアーカイブで。
基本的に、ウェイバックマシンはすべてのWebサイトにアクセスして。
スクリーンショットを撮って、データをデータベースに記録しながらクロールして。
次に、下記を検索するとこれらのエンドポイントを照会して。
サイトがこれまでにクロールしたすべてのパスのリストを表示できて。
vulnweb.com
サブドメインを指定すると絞り込まれた結果が。
html5.vulnweb.com
リスト表示されたサイトを選択すると過去にアーカイブされた時点のものを選択して。
過去のサイトが表示されて確認できるわけで。
次に、フィルタを使用して、「.bak」で終わるファイルなど。
バックアップ情報が含まれている可能性がある特定のファイルを検索できて。
その他の興味深いフィルターは次のとおりで。
.zip
.backup
.config
.csv
/api/
/admin/
このデータを使用して興味深いファイルを見つけるだけでなく。
データを調べることで脆弱性を見つけることもできて。
たとえば、パス「example.com/?redirect=something.com」が表示された場合は。
オープンリダイレクトとSSRFの脆弱性をテストできて。
GETパラメータ「msg=」が表示されている場合は、XSSをテストできて。
txtで絞り込むとrobots.txtが見つかったので。
過去のアーカイブを選択してみると。
存在しないようで。
こんなこともあり。
また、Webサイトを使用してパスのリストを取得するのが好きな人もいますが。
コマンドラインを使用することが好きな方も少なくないようで。
ウェイバックマシンからパスのリストを取得するスクリプトがあったりして。
https://github.com/ghostlulzhacks/waybackMachine
スクリプトの出力をファイルにパイプし、grepを使用して。
以下に示すように興味深いファイルパスを検索できて。
python waybackMachine.py facebook.com > facebookPaths.txt
cat facebookPaths.txt | grep “redirect=”
これにより、「redirect=」という単語が含まれているURLが検索されるので。
ヒットが発生した場合は、脆弱性のテストを開始することに。
結論として、ウェイバックマシンには、たくさんの情報があるので。
Webサイトをクロールする前に、ウェイバックマシンを確認して。
他の人がクロールしたデータを使用することで。
多くの時間と労力を節約できる可能性があって。
データを取得したら、脆弱である可能性のある興味深いファイルと。
GETパラメータの検索を開始して。
Best regards, (^^ゞ