JeanPeyreMesMots/subprobe-py

GitHub: JeanPeyreMesMots/subprobe-py

一个用于枚举域名子域名的简单 Python 脚本,帮助安全人员快速发现潜在子域名。

Stars: 0 | Forks: 0

# 🔍 subprobe-py 一个非常简单的脚本,用于探测一个域名的子域名,并将它们写入文件。 ## 功能特性 - **多线程** — 最多可同时进行 N 个探测(默认:20 个线程) - **HTTPS → HTTP 回退** — 在 SSL 错误时通过 HTTP 重试 - **重试逻辑** — 自动在服务器错误(5xx)时重试,并采用退避策略 - **实时输出** — 一旦发现结果,立即写入文件 - **彩色终端输出** — 管道到文件时会自动禁用 - **扫描摘要** — 显示发现数、错误数、耗时和每秒请求数 ## 环境要求 ``` pip install requests ``` 需要 Python 3.10+(使用了 `list[str]` 类型提示)。 ## 使用方法 ``` python3 subdomain_enum.py --domain --wordlist --output [options] ``` ### 参数说明 | 参数 | 必填 | 描述 | |---|---|---| | `--domain` | ✅ | 目标域名(例如 `example.com`) | | `--wordlist` | ✅ | 字典文件的路径 | | `--output` | ✅ | 用于存储已发现子域名的输出文件 | | `--threads` | ➖ | 并发线程数(默认:`20`) | | `--timeout` | ➖ | 请求超时时间(秒)(默认:`3`) | | `--retries` | ➖ | 服务器错误时的重试次数(默认:`1`) | | `--verbose` | ➖ | 同时显示未命中的子域名 | | `--version` | ➖ | 显示版本并退出 | ### 示例 基础扫描: ``` python3 subdomain_enum.py --domain google.fr --wordlist wordlist.txt --output found.txt ``` 使用更多线程进行更快的扫描: ``` python3 subdomain_enum.py --domain google.fr --wordlist wordlist.txt --output found.txt --threads 50 ``` 详细模式(同时显示未命中项): ``` python3 subdomain_enum.py --domain google.fr --wordlist wordlist.txt --output found.txt --verbose ``` ## 输出 发现的子域名会实时写入指定的输出文件: ``` # 子域名扫描 — google.fr — 2025年05月16日 14:32:01 https://mail.google.fr [200] https://api.google.fr [301] -> https://developers.google.fr/ ``` ## 字典 任何 DNS/子域名字典均可使用。一些优质来源: - [SecLists](https://github.com/danielmiessler/SecLists/tree/master/Discovery/DNS) — `subdomains-top1million-5000.txt` 是一个不错的起点 - [assetnote wordlists](https://wordlists.assetnote.io/) ## 免责声明 此工具仅用于**授权的安全测试**。请勿在您没有明确测试许可的目标上使用它。
标签:Python, Web安全, 云存储安全, 反取证, 子域名探测, 子域名枚举, 安全评估, 无后门, 系统安全, 网络安全, 网络扫描, 脚本工具, 蓝队分析, 逆向工具, 隐私保护