130 lines
5.8 KiB
Markdown
130 lines
5.8 KiB
Markdown
### 怎么找边缘资产呢
|
||
|
||
**1. 证书关联法**
|
||
|
||
当一个组织为多个系统使用同一套 SSL/TLS 证书时,它们就共享了一个独特的数字指纹。
|
||
|
||
- **指纹**:SSL/TLS 证书的内容(如组织名称、证书颁发机构、证书序列号等)
|
||
|
||
- **方法**:
|
||
|
||
1. 找到目标**主站**或已知资产的 SSL/TLS 证书
|
||
2. 提取证书中的**组织名称**、**颁发者**或**序列号**
|
||
3. 在网络空间测绘平台(如 **Fofa**、**Censys** 或 **Hunter**)上,使用这些信息进行搜索
|
||
|
||
- **案例解析 (案例 1)**:
|
||
|
||
> IP资产未备案,用了和主站相同的证书
|
||
|
||
- 即使一个 IP 地址**没有 ICP 备案**,但只要它使用了与主站**相同的证书**,就可以被判定为同一组织所有。
|
||
- **Fofa 搜索示例**:你可以使用 `cert="目标证书特征值"` 来查找所有使用该证书的资产,包括那些未公开的 IP
|
||
|
||
|
||
|
||
**2. 标识图标关联法**
|
||
|
||
许多组织会为他们的所有内部或外部系统使用一套标准的图标或 Favicon(收藏夹图标)
|
||
|
||
- **指纹**:网站的 **Favicon.ico** 文件。由于这个文件的内容是唯一的,可以计算其 **Hash 值**
|
||
|
||
- **方法**:
|
||
|
||
1. 访问目标**主站**,提取其 Favicon 文件
|
||
2. 计算该文件的 **MD5 Hash**(在 Fofa/Quake 中通常使用 `icon_hash` 语法)
|
||
3. 在网络空间测绘平台中使用该 Hash 值进行搜索
|
||
|
||
- **工具与案例解析 (案例 2)**:
|
||
|
||
> 无证书、无备案,用的主站的标识性图标 logo
|
||
|
||
- 一个没有证书、没有备案的 IP(可能是测试机或内部后台)使用了主站的图标,即刻暴露了它与目标的关联。
|
||
- **Fofa 搜索示例**:使用 **`icon_hash="xxxxxxxxxx"`** 查找所有使用该图标的资产
|
||
|
||
|
||
|
||
**3. Body 内容关联法**
|
||
|
||
许多后台系统或测试环境,虽然域名和 IP 看起来毫不相关,但在页面的 HTML **主体(Body)**中会留下内部信息
|
||
|
||
- **指纹**:HTML 代码中的**版权声明、公司全称、项目名称、内部工单号**等
|
||
|
||
- **方法**:
|
||
|
||
1. 在测绘平台中使用 `body` 语法,搜索包含目标单位特有关键字的页面
|
||
|
||
- **案例解析 (案例 3)**:
|
||
|
||
> body带了目标单位、目标企业的信息,后台也有相关数据但域名、IP均不是目标单位
|
||
|
||
- **可能性**:这可能是**供应链资产**(目标公司使用了第三方供应商,但页面中留下了目标公司的名字)或员工私自搭建的系统
|
||
- **搜索示例**:`body="XXX单位" && country="CN"`
|
||
|
||
|
||
|
||
**4. 定位未绑定域名的资产**
|
||
|
||
ICP 备案信息不仅包括域名,也包括**纯 IP 地址的备案**。这些纯 IP 资产往往是**直接暴露的**、未被域名解析隐藏的服务器。
|
||
|
||
- **指纹**:目标单位的 **ICP 备案名称**
|
||
|
||
- **方法**:利用测绘平台对 ICP 备案信息的索引,直接搜索目标单位的备案名称
|
||
|
||
- **案例解析 (案例 4)**:
|
||
|
||
> 备案了的纯 IP的资产。
|
||
|
||
- 这通常是 CDN 节点、API 服务器、或不希望被域名解析的特定服务
|
||
- **Fofa 搜索示例**:使用 **`icp.name="XXX单位全称"`**,平台会返回所有以该名称备案的域名和纯 IP 地址
|
||
|
||
|
||
|
||
**5. 子域名与非主站资产发现**
|
||
|
||
被遗忘的旧子域、开发或测试环境往往安全配置较弱。
|
||
|
||
- **指纹:** 子域关键词 (`dev`, `test`, `stage`, `beta`, `old`)
|
||
- **方法:** 利用 `site:` 排除主站,并结合 `inurl:` 或 `intitle:` 查找特定关键词。
|
||
- **案例解析 (案例 1):**
|
||
- **目标:** 发现目标域名下除 `www` 之外的所有子域名。
|
||
- **Google Dork:** `site:target.com -www`
|
||
- **目标:** 查找任何 URL 或标题中包含“测试”或“开发”的页面。
|
||
- **Google Dork:** `site:target.com inurl:test OR inurl:dev intitle:stage`
|
||
|
||
|
||
|
||
**6. 敏感文件与目录暴露**
|
||
|
||
错误配置导致敏感文件(如数据库备份、环境配置)被 Google 索引
|
||
|
||
- **指纹:** 敏感文件类型或关键词 (`.env`, `.sql`, `bak`, `config`, `password`)
|
||
- **方法:** 利用 `filetype:` 限制文件类型,或利用 `intitle:` 查找开放目录
|
||
- **案例解析 (案例 2):**
|
||
- **目标:** 发现目标域名下暴露的数据库备份文件和配置文件
|
||
- **Google Dork:** `site:target.com filetype:sql OR filetype:bak OR filetype:env`
|
||
- **目标:** 查找目标域名下的开放目录列表(可能暴露文件结构)
|
||
- **Google Dork:** `site:target.com intitle:"index of" "parent directory"`
|
||
|
||
|
||
|
||
**7. 第三方平台信息泄漏:定位云存储和代码库**
|
||
|
||
许多组织会在云存储服务(如 S3)或代码托管平台(如 GitHub)上无意暴露信息
|
||
|
||
- **指纹:** 外部平台特征关键词 (`amazonaws.com`, `blob.core.windows.net`, `github.com`) 和敏感信息关键词 (`API KEY`, `secret`)
|
||
- **方法:** 结合外部域名与目标公司名称或目标域名
|
||
- **案例解析 (案例 3):**
|
||
- **目标:** 查找与目标公司名相关的、被公开索引的 AWS S3 存储桶
|
||
- **Google Dork:** `intitle:"index of" "target-corp-name" "amazonaws.com"`
|
||
- **目标:** 查找目标域名在代码仓库中意外暴露的凭证信息
|
||
- **Google Dork:** `site:github.com "target.com" intext:"password" OR intext:"API KEY"`
|
||
|
||
|
||
|
||
**8. 邮箱系统与服务域名关联**
|
||
|
||
企业邮箱的域名通常与企业的主域名保持一致,但有时会是独立的域名用于隔离服务
|
||
|
||
- **操作**:在 **爱企查** 等企业信息平台上获取目标的**联系邮箱**(例如 `hr@newcorp.com`)
|
||
- **资产发现**:
|
||
- 邮箱的后缀 (`newcorp.com`) 立刻成为一个新的**主域名**
|
||
- 通过对该域名进行 **MX 记录查询**,可以发现企业邮箱服务器的真实域名或 IP 地址,这可能暴露目标正在使用的邮件服务提供商或自建邮件服务器 |