> For the complete documentation index, see [llms.txt](https://snowyowls-organization.gitbook.io/snowyowl644-hacklog/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://snowyowls-organization.gitbook.io/snowyowl644-hacklog/realworld_pentest_technique/osint.md).

# AD認証情報

* Stack Overflowなどの公開フォーラムで質問するが、質問の中で自分の資格情報などの機密情報を開示するユーザー
* 資格情報をハードコードしたスクリプトをGithubなどのサービスにアップロードする開発者
* 過去のデータ侵害では、従業員が職場のアカウントを使用して外部ウェブサイトに登録したため、認証情報が漏洩していました
* [HaveIBeenPwned](https://haveibeenpwned.com/)やDeHashedなどのウェブサイトは、職場のメールアドレスなどの情報が、公に知られているデータ侵害に関係していたかどうかを判断するための優れたプラットフォームで、これらのプラットフォーム上に情報が載っている

## WHOIS

* 登録されたインターネットリソースに関する情報を保存するデータベースにアクセスするために設計された、広く使用されているクエリおよび応答プロトコル
* 主にドメイン名に関連付けられており、IPアドレスブロック
* インターネット用の巨大な電話帳

```shell-session
whois inlanefreight.com
```

各WHOISレコードに含まれてる内容

| 項目                                 | 説明                                |
| ---------------------------------- | --------------------------------- |
| **Domain Name**                    | ドメイン名自体（例：example.com）            |
| **Registrar**                      | ドメインが登録された会社（例：GoDaddy、Namecheap） |
| **Registrant Contact**             | ドメインを登録した個人または組織                  |
| **Administrative Contact**         | ドメインの管理責任者                        |
| **Technical Contact**              | ドメインに関連する技術的な問題を処理する担当者           |
| **Creation & Expiration Dates**    | ドメインが登録された時期と期限が切れる時期             |
| **Name Servers**                   | ドメイン名をIPアドレスに変換するサーバー             |
| WHOISデータが、評価の偵察段階での侵入テスターにとって大事な理由 |                                   |

* `Identifying Key Personnel`
  * WHOISの記録は、ドメインの管理を担当する個人の名前、電子メールアドレス、および電話番号を明らかにすることがよくある。
  * この情報は、ソーシャルエンジニアリング攻撃やフィッシングキャンペーンの潜在的なターゲットを特定するために活用できる。
* `Discovering Network Infrastructure`
  * ネームサーバーやIPアドレスなどの技術的な詳細は、ターゲットのネットワークインフラストラクチャに関する手がかりを提供する
  * これは、侵入テスターが潜在的なエントリポイントまたは誤設定を特定するのに役立つ
* `Historical Data Analysis`
  * [WhoisFreaks](https://whoisfreaks.com/)などのサービスを通じて過去のWHOISレコードにアクセスすると、時間の経過とともに所有権、連絡先情報、または技術的な詳細の変更が明らかになる。
  * ターゲットのデジタルプレゼンスの進化を追跡するのに役立つ

### WHOISの活用方法

* フィッシング調査
  * `Registration Date`：ドメインがいつ登録されたか
  * `Registrant`：登録者の情報はプライバシーサービスの後ろに隠されています。
  * `Name Servers`：ネームサーバーは、悪意のある活動によく使用される既知のホスティングプロバイダーに関連付けられている

### フィシング調査

* `Registration Date`：ドメインはほんの数日前に登録されました。
* `Registrant`：登録者の情報はプライバシーサービスの後ろに隠されています。
* `Name Servers`：ネームサーバーは、悪意のある活動によく使用される既知の防弾ホスティングプロバイダーに関連付けられています。

### マルウェア分析

* **新種のマルウェア株**がネットワーク内の複数システムに感染
* マルウェアは**リモートサーバーと通信**し、**コマンド**を受信、**盗まれたデータを流出**
* 研究者は**C2サーバーに関連付けられたドメイン**を対象に**WHOISルックアップ**を実施
* **WHOISの記録で判明**した事項:
  * **Registrant**: 匿名性で知られる無料の電子メールサービスを使用する個人
  * **Location**: サイバー犯罪の多い国に所在
  * **Registrar**: 過去に「緩い虐待ポリシー」の履歴があるレジストラ
* この情報から、**C2サーバーが侵害されたサーバーまたは防弾ホスティングサーバー上**にある可能性が高いと判断
* 研究者はさらに**WHOISデータからホスティングプロバイダーを特定**し、**悪意ある活動を通報**

### 脅威インテリジェンスレポート

* **脅威アクターグループ**: 金融機関を標的にする洗練されたグループを追跡
* **WHOISデータ収集**: 過去のキャンペーンに関連する複数のドメインを調査
* **分析結果（パターン）**:
  * **Registration Dates**: 大規模攻撃直前に登録されたドメインが多い
  * **Registrants**: 複数のエイリアスや偽のアイデンティティを使用
  * **Name Servers**: 同一のネームサーバーを共有し、共通インフラを示唆
  * **Takedown History**: 攻撃後に多数のドメインが削除され、法執行機関やセキュリティ介入の痕跡がある
* **レポートの内容**:
  * 脅威アクターの**TTP（戦術・技術・手順）の詳細なプロファイル**
  * \*\*WHOISデータに基づくIOC（妥協指標）\*\*を含む
  * 他組織が**将来の攻撃検知・阻止**に活用可能

### 他のDNSのツール

| ツール                    | 主な特徴                                                       | ユースケース                                                     |
| ---------------------- | ---------------------------------------------------------- | ---------------------------------------------------------- |
| **dig**                | さまざまなクエリタイプ（A、MX、NS、TXTなど）と詳細な出力をサポートする汎用性の高いDNSルックアップツール。 | 手動DNSクエリ、ゾーン転送（許可されている場合）、DNS問題のトラブルシューティング、DNSレコードの詳細な分析。 |
| **nslookup**           | 主にA、AAAA、およびMXレコード用の、よりシンプルなDNSルックアップツール。                  | 基本的なDNSクエリ、ドメイン解決とメールサーバーレコードのクイックチェック。                    |
| **host**               | 簡潔な出力を備えた合理化されたDNSルックアップツール。                               | A、AAAA、およびMXレコードのクイックチェック。                                 |
| **dnsenum**            | 自動DNS列挙ツール、辞書攻撃、ブルート強制、ゾーン転送（許可されている場合）。                   | サブドメインを発見し、DNS情報を効率的に収集。                                   |
| **fierce**             | 再帰的検索とワイルドカード検出を備えたDNS偵察およびサブドメイン列挙ツール。                    | DNS偵察、サブドメイン、潜在的なターゲットの識別のためのユーザーフレンドリーなインターフェース。          |
| **dnsrecon**           | 複数のDNS偵察技術を組み合わせ、さまざまな出力フォーマットをサポート。                       | 包括的なDNS列挙、サブドメインの識別、およびさらなる分析のためのDNSレコードの収集。               |
| **theHarvester**       | DNSレコード（メールアドレス）を含むさまざまなソースから情報を収集するOSINTツール。              | 複数のソースからドメインに関連する電子メールアドレス、従業員情報、およびその他のデータを収集。            |
| **オンラインDNSルックアップサービス** | DNSルックアップを実行するためのユーザーフレンドリーなインターフェース。                      | コマンドラインツールが利用できない場合に便利な、迅速で簡単なDNS検索、ドメインの可用性または基本情報の確認。    |

### それ以外の偵察

| 手法              | 説明                                                                | 例                                                                  | ツール                                            | 検知リスク                                                       |
| --------------- | ----------------------------------------------------------------- | ------------------------------------------------------------------ | ---------------------------------------------- | ----------------------------------------------------------- |
| **検索エンジン照会**    | 検索エンジンを活用してターゲットに関する情報（ウェブサイト、ソーシャルメディアのプロフィール、ニュース記事など）を収集する方法。  | Googleで「ターゲット名 employees」と検索し、従業員情報やSNSプロフィールを探す。                  | Google, DuckDuckGo, Bing, 専用検索エンジン（例：Shodan）   | **非常に低い**：検索エンジンの使用は通常のインターネット活動として認識されるため、アラートが発生する可能性は低い。 |
| **WHOISルックアップ** | WHOISデータベースを照会して、ドメイン登録者の名前、連絡先、ネームサーバーなどの詳細情報を取得する方法。            | ターゲットドメインに対してWHOISを実行し、登録者の情報やネームサーバーを調べる。                         | whoisコマンドラインツール、オンラインWHOIS検索サービス               | **非常に低い**：WHOISクエリは正当な行為とみなされ、疑いを持たれる可能性は低い。                |
| **DNS分析**       | DNSレコードを調べ、サブドメインやメールサーバーなどのインフラ構成を把握する方法。                        | `dig`を使ってターゲットドメインのサブドメインを列挙する。                                    | dig, nslookup, host, dnsenum, fierce, dnsrecon | **非常に低い**：DNSクエリはインターネットアクセスにおいて必要なため、不審とみなされにくい。           |
| **ウェブアーカイブ分析**  | ターゲットサイトの過去のスナップショットを確認し、変更点や潜在的な脆弱性、隠された情報を特定する方法。               | Wayback Machineを使って、ターゲットサイトの過去バージョンを調べ、どのように変更されてきたかを確認する。        | Wayback Machine                                | **非常に低い**：ウェブサイトのアーカイブを見る行為は一般的な活動であり、不審には見られにくい。           |
| **ソーシャルメディア分析** | LinkedIn、Twitter、FacebookなどのSNSを用いて公開されている情報を収集し、人物や組織の詳細を把握する方法。 | LinkedInでターゲット組織の従業員を検索し、役職や責任範囲、ソーシャルエンジニアリングの潜在的標的になりそうな人材を特定する。 | LinkedIn, Twitter, Facebook, 専門OSINTツール        | **非常に低い**：公開されているSNSプロフィールの閲覧は侵入的ではないとみなされる。                |
| **コードリポジトリ分析**  | GitHubなどの公開コードリポジトリを分析し、漏洩している認証情報や脆弱性、機密情報などを探す方法。               | GitHubでターゲットに関連するリポジトリやコードスニペットを検索し、機密情報やコード上の脆弱性が含まれていないかを確認する。   | GitHub, GitLab                                 | **非常に低い**：コードリポジトリは公開されており、検索行為自体も通常は不審とみなされない。             |

| 手法              | 説明                                                     | 例                                                                                   | ツール                                                   | 検知リスク                                                         |
| --------------- | ------------------------------------------------------ | ----------------------------------------------------------------------------------- | ----------------------------------------------------- | ------------------------------------------------------------- |
| **ポートスキャン**     | ターゲット上で開いているポートや稼働中のサービスを特定する手法。                       | Nmapを使ってWebサーバの80番ポート（HTTP）や443番ポート（HTTPS）など開いているポートをスキャンする。                        | Nmap, Masscan, Unicornscan                            | **高い**：ターゲットに直接アクセスするため、侵入検知システム(IDS)やファイアウォールに検知される可能性が高い。   |
| **脆弱性スキャン**     | アウトデートされたソフトウェアやミスコンフィグレーションなど、既知の脆弱性をターゲットに対して検出する手法。 | Nessusを使ってWebアプリケーションにSQLインジェクションやクロスサイトスクリプティング(XSS)などの脆弱性がないかスキャンする。              | Nessus, OpenVAS, Nikto                                | **高い**：脆弱性スキャナは攻撃の疑いのあるペイロードを送信するため、セキュリティ製品に検知されやすい。         |
| **ネットワークマッピング** | ターゲットのネットワーク構成（接続デバイスや経路など）を可視化する手法。                   | tracerouteを使ってパケットがターゲットサーバに到達する経路を調べ、中継するネットワークホップやインフラを特定する。                      | Traceroute, Nmap                                      | **中〜高**：過剰または異常なネットワークトラフィックとして、監視に引っかかる可能性がある。               |
| **バナーグラッビング**   | ターゲット側のサービスが表示するバナー情報（ソフトウェアやバージョンなど）を取得する手法。          | ポート80で稼働中のWebサーバに接続し、返されるHTTPバナーからWebサーバのソフトウェア名とバージョンを特定する。                        | Netcat, curl                                          | **低い**：最小限のやり取りで済むが、ログに記録される可能性はある。                           |
| **OSフィンガープリント** | ターゲットが利用しているオペレーティングシステムを特定する手法。                       | NmapのOS検出機能(-O)を使用して、ターゲットがWindows、Linux、その他のOSのどれかを判別する。                           | Nmap, Xprobe2                                         | **低い**：多くの場合は受動的手法だが、一部の高度な手法は検知のリスクがある。                      |
| **サービス列挙**      | 開いているポートで稼働しているサービスのバージョンを特定する手法。                      | Nmapのサービスバージョン検出(-sV)を使い、WebサーバがApache 2.4.50かNginx 1.18.0かを判断する。                   | Nmap                                                  | **低い**：バナーグラッビング同様、ログには残るが、セキュリティアラートを引き起こすリスクは比較的低い。         |
| **Webスパイダリング**  | ターゲットのWebサイトをクロールし、ページ構造やディレクトリ、ファイル、隠れリソースなどを発見する手法。  | Burp Suite SpiderやOWASP ZAP Spiderなどを使ってサイトをクロールし、ディレクトリ構造や隠されたファイルを含めてサイト全体をマップする。 | Burp Suite Spider, OWASP ZAP Spider, Scrapy(カスタマイズ可能) | **低〜中**：クローラの設定によっては正規のアクセスに見せかけられるが、不審な大量アクセスとして検知される可能性がある。 |

* 貴重なリソースの 1 つは、SSL/TLS 証明書の公開リポジトリである`Certificate Transparency (CT) logs`

#### サブドメイン

* `Development and Staging Environments`：企業は、サブドメインを使用して、メインサイトにデプロイする前に、新機能やアップデートをテストすることがよくあります。緩和されたセキュリティ対策により、これらの環境には脆弱性が含まれたり、機密情報が公開されたりすることがあります。
* `Hidden Login Portals`：サブドメインは、一般に公開されていない管理パネルやその他のログインページをホストする場合があります。不正アクセスを求める攻撃者は、これらを魅力的なターゲットとして見つけることができます。
* `Legacy Applications`: 古い、忘れられた Web アプリケーションは、既知の脆弱性を持つ古いソフトウェアを含むサブドメインに存在する可能性があります。
* `Sensitive Information`：サブドメインは、攻撃者にとって価値のある機密文書、内部データ、または構成ファイルを誤って公開する可能性があります。

## フィンガープリント

### **攻撃者による指紋収集（フィンガープリンティング）の目的**

* **標的型攻撃**\
  使用されている特定の技術を把握することで、既知の脆弱性を狙った攻撃が可能になり、成功率が大幅に向上する。
* **設定ミスの特定**\
  誤った設定や古いソフトウェア、デフォルト設定などの脆弱性を発見できる。
* **攻撃対象の優先順位付け**\
  多数のターゲットがある場合、脆弱性が高いシステムや価値のある情報を持つシステムを優先的に攻撃できる。
* **包括的なプロファイルの作成**\
  指紋情報を他の偵察情報と組み合わせることで、対象のインフラ全体のセキュリティ状況や攻撃の可能性をより深く理解できる。

### **指紋収集（フィンガープリンティング）の手法**

* **バナーグラビング**\
  ウェブサーバーなどのサービスが送信するバナー情報を解析し、ソフトウェアの種類やバージョンを特定する。
* **HTTPヘッダーの解析**\
  HTTPリクエストやレスポンスのヘッダー情報から、使用されているウェブサーバーやスクリプト言語・フレームワーク（`Server` ヘッダーや `X-Powered-By` ヘッダー）を特定する。
* **特定のレスポンスを引き出す試行**\
  特定のリクエストを送信し、エラーメッセージや挙動の違いから技術情報やバージョンを判別する。
* **ページコンテンツの解析**\
  HTMLの構造やスクリプト、著作権表記などの情報から、使用されている技術を推測する。

### 具体的なツール

| **ツール名**       | **説明**                                            | **主な特徴**                           |
| -------------- | ------------------------------------------------- | ---------------------------------- |
| **Wappalyzer** | ウェブサイトの技術プロファイルを分析するブラウザ拡張機能およびオンラインサービス。         | CMS、フレームワーク、解析ツールなど幅広い技術を識別可能。     |
| **BuiltWith**  | ウェブサイトの技術スタックを詳細に分析するツール。                         | 無料・有料プランがあり、詳細レベルが異なる。             |
| **WhatWeb**    | コマンドラインで動作するウェブサイトのフィンガープリントツール。                  | 多数のシグネチャデータベースを活用し、多様な技術を識別可能。     |
| **Nmap**       | 多用途なネットワークスキャナーで、OSやサービスのフィンガープリンティングも可能。         | NSEスクリプトを用いた高度なフィンガープリントが可能。       |
| **Netcraft**   | ウェブセキュリティサービスを提供し、サイトのフィンガープリンティングやセキュリティレポートを作成。 | ホスティングプロバイダやセキュリティ状況を含む詳細なレポートを提供。 |
| **wafw00f**    | Webアプリケーションファイアウォール（WAF）の識別に特化したコマンドラインツール。       | WAFの有無や種類、設定情報を特定可能。               |

そのほかのフィンガープリントの手法

* WEBサーバー自体から直接情報を収集する

```shell-session
curl -I inlanefreight.com
```

### **Google Dorking（Google Hacking）とは**

#### **1. ログインページの特定**

* `site:example.com inurl:login`
* `site:example.com (inurl:login OR inurl:admin)`

#### **2. 露出したファイルの特定**

* `site:example.com filetype:pdf`
* `site:example.com (filetype:xls OR filetype:docx)`

#### **3. 設定ファイルの公開を探す**

* `site:example.com inurl:config.php`
* `site:example.com (ext:conf OR ext:cnf)`

#### **4. データベースバックアップの場所を探す**

* `site:example.com inurl:backup`
* `site:example.com filetype:sql`
* `site:` → 指定したドメイン内の情報を検索
* `inurl:` → URL内に特定の単語を含むページを検索
* `filetype:` / `ext:` → 特定のファイル形式を検索

### 偵察自動ツール

```shell-session
snowyowl644@htb[/htb]$ git clone https://github.com/thewhiteh4t/FinalRecon.git
snowyowl644@htb[/htb]$ cd FinalRecon
snowyowl644@htb[/htb]$ pip3 install -r requirements.txt
snowyowl644@htb[/htb]$ chmod +x ./finalrecon.py
snowyowl644@htb[/htb]$ ./finalrecon.py --help
```

```shell-session
./finalrecon.py --headers --whois --url http://inlanefreight.com
```
