Yuuki

Yuuki's Blog

Hacker. Code Enthusiast.
github
bilibili
twitter

通过 HTTP 特征收集根域名资产

前言#

渗透测试信息收集阶段通常会对目标企业的根域名进行收集,已备案的域名可以通过 ICP 备案号反查和 Whois 数据查询得到,而未备案的域名则有一些特殊的收集方式。

通过 HTTP 特征来收集目标的根域名资产就是其中的一个方式。我们可以通过 FOFA 和 Shodan 等安全类搜索引擎来发现一些与目标企业相关的根域名。

需要注意的是,通过这些方式收集到的根域名资产并不一定属于测试目标,这些方法仅作为可选的拓展项。在使用这些方法时,应当谨慎处理收集到的信息。

Certificate#

FOFA 语法

cert.subject.org="target" && is_domain=true

演示示例

20240415_011618

在数字证书中,Issuer、Subject、Organization 和 CommonName 这些字段都扮演着重要的角色:

  • Issuer: 颁发者字段,标识已签署和颁发证书的实体。颁发者字段必须包含一个非空的可分辨名称 (DN)。
  • Subject: 主题字段,标识与存储在主题公钥字段中的公钥相关联的实体。主题名称可以在主题字段和 / 或 subjectAltName 扩展中携带。
  • Organization (O): 组织名称,标识持有证书的组织或公司。
  • CommonName (CN): 常用名称,对于个人可能是个人名字,对于服务器证书则通常是域名。

HTTP 标头#

Content-Security-Policy-Report-Only 标头可以提供一些关于网站如何处理跨源请求的信息,但可能不会直接提供关于企业根域名的详细信息。

通过 Content-Security-Policy-Report-Only 可以收集到一些与目标企业相关的根域名。

FOFA 语法

host="target.com" && header="Content-Security-Policy-Report-Only"

演示示例

20240415_010719

类似的标头还有 Content-Security-Policy、Set-Cookie 等,在这些标头中也有可能出现与目标企业相关的根域名。

NS 服务器#

在某些情况下,企业内部的域名只需要企业内部人员可以访问,使用自建的 DNS 服务器可以实现这一点。

虽然我们无法直接访问企业内部自建的 NS 服务器,但可以通过已有的数据来查询曾经出现过解析记录的 NS 服务器数据。

通过 HackerTarget Find Shared DNS Servers 工具可以实现这一点。

在查询企业 NS 服务器之前,需要先通过查询域名的 NS 服务器来获取 NS 服务器的 IP 或主机名。

$ nslookup -type=ns qq.com
  qq.com	nameserver = ns1.qq.com.
  qq.com	nameserver = ns2.qq.com.
  qq.com	nameserver = ns4.qq.com.
  qq.com	nameserver = ns3.qq.com.

20240415_012958

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。