37 lines
2.4 KiB
Markdown
37 lines
2.4 KiB
Markdown
### SSL 证书有什么用,对信息收集有什么帮助
|
||
|
||
**SSL/TLS 证书的作用**
|
||
|
||
SSL/TLS 证书是网络安全中的基石,它主要有两大核心作用:
|
||
|
||
1. **加密通信(机密性)**:证书使得浏览器和服务器之间传输的数据流得以加密,防止数据在传输过程中被窃听或篡改。这是实现 **HTTPS**(HTTP Secure)的基础。
|
||
2. **身份验证(可信度)**:证书证明了你所连接的服务器确实是它声称的那个组织所有。证书中包含的公钥由可信的**证书颁发机构(CA)**签名,用户可以验证该证书是否合法,从而建立对服务器身份的信任
|
||
|
||
**如何利用 HTTPS 证书收集子域名**
|
||
|
||
对于渗透测试和资产发现而言,SSL/TLS 证书是一个极其宝贵的**公共数据源**。它能帮助我们发现目标企业隐藏的、未公开的或用于测试的子域名。
|
||
|
||
**原理:证书透明度(Certificate Transparency, CT)**
|
||
|
||
为了防止证书颁发机构(CA)恶意签发证书,行业强制要求所有新签发的 SSL/TLS 证书必须记录在一个**公共、透明的日志系统**中。这些日志被称为 **证书透明度日志(CT Logs)**
|
||
|
||
这意味着,一旦目标企业为任何域名(无论是主站还是内部测试子域)签发了证书,这个域名就会被公开记录
|
||
|
||
**步骤:利用 CT Logs 发现资产**
|
||
|
||
1. **查找平台**:使用提供 CT Logs 搜索接口的平台,最著名且常用的就是 **`crt.sh`**
|
||
2. **输入查询**:在 `crt.sh` 中输入目标企业的**顶级域名**或**公司名称**
|
||
3. **提取域名**:搜索结果将返回所有与该企业相关的证书记录。你需要关注以下两个字段:
|
||
- **Common Name (CN)**:证书的主要名称
|
||
- **Subject Alternative Names (SAN)**:证书的**主题备用名称**。这是一个证书中最重要的资产字段,一个证书通常会保护多个子域名,这些子域名都会被列在 SANs 中
|
||
|
||
**案例说明**
|
||
|
||
假设你查询了主域名 `example.com`,可能会在 `crt.sh` 的结果中发现一个证书的 SAN 字段包含:
|
||
|
||
- `www.example.com` (已知主站)
|
||
- `dev.example.com` (开发环境)
|
||
- `api.internal.example.com` (内部 API 接口)
|
||
- `old.hr-system.example.com` (遗留的 HR 系统)
|
||
|
||
这些被发现的子域名,往往是**非公开**或**非标准**的,但它们与主站共享相同的安全身份(证书),因此被确认为高价值的边缘资产 |