DENNISDGR/crt-recon

GitHub: DENNISDGR/crt-recon

通过 crt.sh 证书透明度日志快速枚举目标域名子域并进行存活探测的 Bash 脚本。

Stars: 0 | Forks: 0

# crt.sh — 证书透明度侦察工具 通过[证书透明度日志](https://crt.sh)进行子域名枚举的 Bash 脚本。 ## 功能 - 通过 crt.sh CT 日志发现子域名 - 按子字符串过滤结果(例如 `dev`、`staging`、`api`) - 并发主机探测以发现存活子域名 - 存活检查支持代理 (SOCKS5, SOCKS4, HTTP) - 输出至文件 - 妥善处理来自 crt.sh 的 502 / 无效响应 ## 依赖要求 - `curl` - `jq` - `xargs` (Linux/macOS 标准) ## 安装说明 ``` git clone https://github.com/DENNISDGR/crt-recon.git cd crt-recon chmod +x crt.sh ``` ## 运行 Naabu ``` crt.sh -d [-s ] [-w ] [--alive] [-t ] [-x ] ``` | 标志 | 描述 | 默认值 | |------|-------------|---------| | `-d` | 目标域名 *(必填)* | — | | `-s` | 按子字符串过滤结果 | — | | `-w` | 将输出写入文件 | — | | `--alive` | 探测每个主机并仅保留存活的主机 | — | | `-t` | 并发探测数 | `50` | | `-x` | 用于存活检查的代理 (`socks5://`, `http://`) | — | | `-h` | 显示帮助 | — | ## 示例 ``` # 单个 domain 的所有 subdomain ./crt.sh -d facebook.com # 仅筛选 dev subdomain ./crt.sh -d facebook.com -s dev # 使用 100 个线程进行存活检查,保存结果 ./crt.sh -d facebook.com --alive -t 100 -w results.txt # 通过 SOCKS5 代理路由存活检查 ./crt.sh -d facebook.com --alive -x socks5://127.0.0.1:1080 # 完整组合 ./crt.sh -d facebook.com -s dev --alive -t 100 -x socks5://127.0.0.1:1080 -w dev_alive.txt ``` ## 运行原理 1. 向 `crt.sh` 查询颁发给 `*.domain` 的所有证书 2. 提取每个 `name_value` 字段(涵盖多 SAN 证书) 3. 进行分割、去除通配符前缀以及去重处理 4. 可选通过 `grep` 按子字符串进行过滤 5. 可选通过并发的 `xargs -P` worker 对每个主机依次通过 `https` 和 `http` 进行探测 ## 注意事项 - crt.sh 偶尔会返回 502 —— 本脚本会处理此情况并干净地退出 - 存活探测对每个主机的每个协议使用 5 秒超时 - 代理标志仅适用于存活探测,不适用于 crt.sh 查询本身
标签:ESC4, GitHub, Linux工具, OSINT, 主动侦察, 代理支持, 告警, 子域名枚举, 子域名爆破, 并发探测, 应用安全, 端口探测, 系统安全, 系统独立性, 网络安全, 证书透明度, 隐私保护