
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
https://travis-ci.org/***.svg?branch=master](https://travis-ci.org/) https://codecov.io/gh/***/branch/master/graph/badge.svg](https://codecov.io/gh/) https://api.codeclimate.com/v1/badges/***a6b4c72af683e/maintainability](https://codeclimate.com/github/***/maintainability) https://img.shields.io/github/license/***](https://github.com/***/tree/master/LICENSE) https://img.shields.io/badge/python-3.8-blue](https://github.com/***/tree/master/) https://img.shields.io/badge/release-v0.2.0-brightgreen](https://github.com/***/releases)
👊OneForAll是一款功能强大的子域收集工具 📝https://github.com/***/tree/master/README.en.md
!Example
项目主页:https://shmilylty.github.io/OneForAll/
项目地址:https://github.com/***
在渗透测试中信息收集的重要性不言而喻,子域收集是信息收集中必不可少且非常重要的一环,目前网上也开源了许多子域收集的工具,但是总是存在以下部分问题:
不够强大,子域收集的接口不够多,不能做到对批量子域自动收集,没有自动子域解析,验证,FUZZ以及信息拓展等功能。
不够友好,固然命令行模块比较方便,但是当可选的参数很多,要实现的操作复杂,用命令行模式就有点不够友好,如果有交互良好,高可操作的前端那么使用体验就会好很多。
缺少维护,很多工具几年没有更新过一次,issues和PR是啥,不存在的。
效率问题,没有利用多进程,多线程以及异步协程技术,速度较慢。
为了解决以上痛点,此项目应用而生,正如其名,我希望OneForAll是一款集百家之长,功能强大的全面快速子域收集终极神器🔨。
目前OneForAll还在开发中,肯定有不少问题和需要改进的地方,欢迎大佬们提交https://github.com/***/issues%E5%92%8Chttps://github.com/***/pulls%EF%BC%8C%E7%94%A8%E7%9D%80%E8%BF%98%E8%A1%8C%E7%BB%99%E4%B8%AA%E5%B0%8F%E6%98%9F%E6%98%9F%E2%9C%A8%E5%90%A7%EF%BC%8C%E7%9B%AE%E5%89%8D%E6%9C%89%E4%B8%80%E4%B8%AA%E4%B8%93%E9%97%A8%E7%94%A8%E4%BA%8EOneForAll%E4%BA%A4%E6%B5%81%E5%92%8C%E5%8F%8D%E9%A6%88QQ%E7%BE%A4%F0%9F%91%A8%E2%80%8D%F0%9F%91%A8%E2%80%8D%F0%9F%91%A6%E2%80%8D%F0%9F%91%A6%EF%BC%9A://shang.qq.com/wpa/qunwpa?idkey=125d3689b60445cdbb11e4ddff38036b7f6f2abbf4f7957df5dddba81aa90771%EF%BC%88***%E9%AA%8C%E8%AF%81%EF%BC%9A%E6%88%91%E7%9A%84%E8%8B%B1%E9%9B%84%E5%AD%A6%E9%99%A2%EF%BC%89%E3%80%82
利用证书透明度收集子域(目前有6个模块:censys_api,certspotter,crtsh,entrust,google,spyse_api)
常规检查收集子域(目前有4个模块:域传送漏洞利用axfr,检查跨域策略文件cdx,检查HTTPS证书cert,检查内容安全策略csp,检查robots文件robots,检查sitemap文件sitemap,后续会添加检查NSEC记录,NSEC3记录等模块)
利用网上爬虫档案收集子域(目前有2个模块:archivecrawl,commoncrawl,此模块还在调试,该模块还有待添加和完善)
利用DNS数据集收集子域(目前有23个模块:binaryedge_api, bufferover, cebaidu, chinaz, chinaz_api, circl_api, dnsdb_api, dnsdumpster, hackertarget, ip138, ipv4info_api, netcraft, passivedns_api, ptrarchive, qianxun, rapiddns, riddler, robtex, securitytrails_api, sitedossier, threatcrowd, wzpc, ximcx)
利用DNS查询收集子域(目前有5个模块:通过枚举常见的SRV记录并做查询来收集子域srv,以及通过查询域名的DNS记录中的MX,NS,SOA,TXT记录来收集子域)
利用威胁情报平台数据收集子域(目前有6个模块:alienvault, riskiq_api,threatbook_api,threatminer,virustotal,virustotal_api该模块还有待添加和完善)
利用搜索引擎发现子域(目前有18个模块:ask, baidu, bing, bing_api, duckduckgo, exalead, fofa_api, gitee, github, github_api, google, google_api, shodan_api, so, sogou, yahoo, yandex, zoomeye_api),在搜索模块中除特殊搜索引擎,通用的搜索引擎都支持自动排除搜索,全量搜索,递归搜索。
rst, csv, tsv, json, yaml, html, xls, xlsx, dbf, latex, ods。如果你有其他很棒的想法请务必告诉我!😎
📢 请务必花一点时间阅读此文档,有助于你快速熟悉OneForAll!
🐍安装要求
OneForAll基于 https://www.python.org/downloads/release/python-380/ 开发和测试,请使用高于Python 3.8.0的稳定发行版本,其他版本可能会出现一些问题(Windows平台必须使用3.8.0以上版本),安装Python环境可以参考https://pythonguidecn.readthedocs.io/zh/latest/starting/installation.html#python-3%E3%80%82%E8%BF%90%E8%A1%8C%E4%BB%A5%E4%B8%8B%E5%91%BD%E4%BB%A4%E6%A3%80%E6%9F%A5Python%E5%92%8Cpip3%E7%89%88%E6%9C%AC%EF%BC%9A
bashpython -V pip3 -V
如果你看到以下类似输出便说明Python环境没有问题:
bashPython 3.8.0 pip 19.2.2 from C:\Users\shmilylty\AppData\Roaming\Python\Python38\site-packages\pip (python 3.8)
✔安装步骤(git 版)
下载
由于该项目处于开发中,会不断进行更新迭代,下载时使用git clone克隆最新代码仓库,也方便后续的更新,不推荐从Releases下载,因为Releases里版本更新缓慢,也不方便更新,
本项目已经在https://gitee.com/***.git(Gitee)%E9%95%9C%E5%83%8F%E4%BA%86%E4%B8%80%E4%BB%BD%EF%BC%8C%E5%9B%BD%E5%86%85%E6%8E%A8%E8%8D%90%E4%BD%BF%E7%94%A8%E7%A0%81%E4%BA%91%E8%BF%9B%E8%A1%8C%E5%85%8B%E9%9A%86%E6%AF%94%E8%BE%83%E5%BF%AB%EF%BC%9A
bashgit clone https://gitee.com/shmilylty/OneForAll.git
或者:
bashgit clone https://github.com/shmilylty/OneForAll.git
安装
你可以通过pip3安装OneForAll的依赖(如果你熟悉pipenv,那么推荐你使用pipenv安装依赖)),以下为Windows系统下使用pip3安装依赖的示例:(注意:如果你的Python3安装在系统Program Files目录下,如:C:\Program Files\Python38,那么请以管理员身份运行命令提示符cmd执行以下命令!)
bashcd OneForAll/ python -m pip install -U pip setuptools wheel -i https://mirrors.aliyun.com/pypi/simple/ pip3 install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/ python oneforall.py --help
其他系统平台的请参考https://github.com/***/tree/master/docs/installation_dependency.md%EF%BC%8C%E5%A6%82%E6%9E%9C%E5%9C%A8%E5%AE%89%E8%A3%85%E4%BE%9D%E8%B5%96%E8%BF%87%E7%A8%8B%E4%B8%AD%E5%8F%91%E7%8E%B0%E7%BC%96%E8%AF%91%E6%9F%90%E4%B8%AA%E4%BE%9D%E8%B5%96%E5%BA%93%E5%A4%B1%E8%B4%A5%E6%97%B6%E5%8F%AF%E4%BB%A5%E5%8F%82%E8%80%83https://github.com/***/tree/master/docs/troubleshooting.md%E4%B8%AD%E8%A7%A3%E5%86%B3%E6%96%B9%E6%B3%95%EF%BC%8C%E5%A6%82%E6%9E%9C%E8%BF%98%E6%B2%A1%E6%9C%89%E8%A7%A3%E5%86%B3%E6%AC%A2%E8%BF%8E***%E5%8F%8D%E9%A6%88%E3%80%82
更新
❗注意:如果你之前已经克隆了项目运行之前请备份自己修改过的文件到项目外的地方(如config.py),然后执行以下命令更新项目:
bashgit fetch --all git reset --hard origin/master git pull
✔安装步骤(docker 版)
方法一:直接拉取部署好的镜像(更新不及时)
shelldocker pull tardis07/oneforall docker run -it oneforall
方法二:从 Dockerfile 中构建(同git版)
shelldocker build -t oneforall . docker run -it --rm -v ~/results:/OneForAll/results oneforall
结果会输出在本地目录~/results
✨使用演示
如果你是通过pip3安装的依赖则使用以下命令运行示例:
bashpython3 oneforall.py --target example.com run
!Example
如果你通过pipenv安装的依赖则使用以下命令运行示例:
bashpipenv run python oneforall.py --target example.com run
🧐结果说明
我们以python3 oneforall.py --target example.com run命令为例,OneForAll在默认参数正常执行完毕会在results目录生成相应结果:
!Result
example.com.csv是每个主域下的子域收集结果。
all_subdomain_result_1583034493.csv是每次运行OneForAll收集到子域的汇总结果,包含example.com.csv,方便在批量收集场景中获取全部结果。
result.sqlite3是存放每次运行OneForAll收集到子域的SQLite3结果数据库,其数据库结构如下图:
!Database
其中类似example_com_origin_result表存放每个模块最初子域收集结果。
其中类似example_com_resolve_result表存放对子域进行解析后的结果。
其中类似example_com_last_result表存放上一次子域收集结果(需要收集两次以上才会生成)。
其中类似example_com_now_result表存放现在子域收集结果,一般情况关注这张表就可以了。
🤔使用帮助
命令行参数只提供了一些常用参数,更多详细的参数配置请见https://github.com/***/tree/master/config.py%EF%BC%8C%E5%A6%82%E6%9E%9C%E4%BD%A0%E8%AE%A4%E4%B8%BA%E6%9C%89%E4%BA%9B%E5%8F%82%E6%95%B0%E6%98%AF%E5%91%BD%E4%BB%A4%E7%95%8C%E9%9D%A2%E7%BB%8F%E5%B8%B8%E4%BD%BF%E7%94%A8%E5%88%B0%E7%9A%84%E6%88%96%E7%BC%BA%E5%B0%91%E4%BA%86%E4%BB%80%E4%B9%88%E5%8F%82%E6%95%B0%E7%AD%89%E9%97%AE%E9%A2%98%E9%9D%9E%E5%B8%B8%E6%AC%A2%E8%BF%8E%E5%8F%8D%E9%A6%88%E3%80%82%E7%94%B1%E4%BA%8E%E4%BC%97%E6%89%80%E5%91%A8%E7%9F%A5%E7%9A%84%E5%8E%9F%E5%9B%A0%EF%BC%8C%E5%A6%82%E6%9E%9C%E8%A6%81%E4%BD%BF%E7%94%A8%E4%B8%80%E4%BA%9B%E8%A2%AB%E5%A2%99%E7%9A%84%E6%94%B6%E9%9B%86%E6%8E%A5%E5%8F%A3%E8%AF%B7%E5%85%88%E5%88%B0https://github.com/***/tree/master/config.py%E9%85%8D%E7%BD%AE%E4%BB%A3%E7%90%86%EF%BC%8C%E6%9C%89%E4%BA%9B%E6%94%B6%E9%9B%86%E6%A8%A1%E5%9D%97%E9%9C%80%E8%A6%81%E6%8F%90%E4%BE%9BAPI%EF%BC%88%E5%A4%A7%E5%A4%9A%E9%83%BD%E6%98%AF%E5%8F%AF%E4%BB%A5%E6%B3%A8%E5%86%8C%E8%B4%A6%E5%8F%B7%E5%85%8D%E8%B4%B9%E8%8E%B7%E5%8F%96%EF%BC%89%EF%BC%8C%E5%A6%82%E6%9E%9C%E9%9C%80%E8%A6%81%E4%BD%BF%E7%94%A8%E8%AF%B7%E5%88%B0https://github.com/***/tree/master/api.py%E9%85%8D%E7%BD%AEAPI%E4%BF%A1%E6%81%AF%EF%BC%8C%E5%A6%82%E6%9E%9C%E4%B8%8D%E4%BD%BF%E7%94%A8%E8%AF%B7%E5%BF%BD%E7%95%A5%E6%9C%89%E5%85%B3%E6%8A%A5%E9%94%99%E6%8F%90%E7%A4%BA%E3%80%82%EF%BC%88%E8%AF%A6%E7%BB%86%E6%A8%A1%E5%9D%97%E8%AF%B7%E9%98%85%E8%AF%BBhttps://github.com/***/tree/master/docs/collection_modules.md%EF%BC%89
OneForAll命令行界面基于https://github.com/google/python-fire/%E5%AE%9E%E7%8E%B0%EF%BC%8C%E6%9C%89%E5%85%B3Fire%E6%9B%B4%E9%AB%98%E7%BA%A7%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95%E8%AF%B7%E5%8F%82%E9%98%85https://github.com/google/python-fire/blob/master/docs/using-cli.md%E3%80%82
https://github.com/***/tree/master/oneforall.py%E6%98%AF%E4%B8%BB%E7%A8%8B%E5%BA%8F%E5%85%A5%E5%8F%A3%EF%BC%8Coneforall.py%E5%8F%AF%E4%BB%A5%E8%B0%83%E7%94%A8https://github.com/***/tree/master/brute.py%EF%BC%8Chttps://github.com/***/tree/master/takerover.py%E5%8F%8Ahttps://github.com/***/tree/master/dbexport.py%E7%AD%89%E6%A8%A1%E5%9D%97%EF%BC%8C%E4%B8%BA%E4%BA%86%E6%96%B9%E4%BE%BF%E8%BF%9B%E8%A1%8C%E5%AD%90%E5%9F%9F%E7%88%86%E7%A0%B4%E7%8B%AC%E7%AB%8B%E5%87%BA%E4%BA%86brute.py%EF%BC%8C%E4%B8%BA%E4%BA%86%E6%96%B9%E4%BE%BF%E8%BF%9B%E8%A1%8C%E5%AD%90%E5%9F%9F%E6%8E%A5%E7%AE%A1%E9%A3%8E%E9%99%A9%E6%A3%80%E6%9F%A5%E7%8B%AC%E7%AB%8B%E5%87%BA%E4%BA%86takerover.py%EF%BC%8C%E4%B8%BA%E4%BA%86%E6%96%B9%E4%BE%BF%E6%95%B0%E6%8D%AE%E5%BA%93%E5%AF%BC%E5%87%BA%E7%8B%AC%E7%AB%8B%E5%87%BA%E4%BA%86dbexport.py%EF%BC%8C%E8%BF%99%E4%BA%9B%E6%A8%A1%E5%9D%97%E9%83%BD%E5%8F%AF%E4%BB%A5%E5%8D%95%E7%8B%AC%E8%BF%90%E8%A1%8C%EF%BC%8C%E5%B9%B6%E4%B8%94%E6%89%80%E6%8E%A5%E5%8F%97%E5%8F%82%E6%95%B0%E8%A6%81%E6%9B%B4%E4%B8%B0%E5%AF%8C%E4%B8%80%E7%82%B9%EF%BC%8C%E5%A6%82%E6%9E%9C%E8%A6%81%E5%8D%95%E7%8B%AC%E4%BD%BF%E7%94%A8%E8%BF%99%E4%BA%9B%E6%A8%A1%E5%9D%97%E8%AF%B7%E5%8F%82%E8%80%83https://github.com/***/tree/master/docs/usage_help.md
❗注意:当你在使用过程中遇到一些问题或者疑惑时,请先到https://github.com/***/issues%E9%87%8C%E4%BD%BF%E7%94%A8%E6%90%9C%E7%B4%A2%E6%89%BE%E6%89%BE%E7%AD%94%E6%A1%88%EF%BC%8C%E8%BF%98%E5%8F%AF%E4%BB%A5%E5%8F%82%E9%98%85https://github.com/***/tree/master/docs/Q&A.md%E3%80%82
oneforall.py使用帮助
以下帮助信息可能不是最新的,你可以使用python oneforall.py --help获取最新的帮助信息。
bashpython oneforall.py --help
bashNAME oneforall.py - OneForAll帮助信息 SYNOPSIS oneforall.py COMMAND | --target=TARGET <flags> DESCRIPTION OneForAll是一款功能强大的子域收集工具 Example: python3 oneforall.py version python3 oneforall.py --target example.com run python3 oneforall.py --target ./domains.txt run python3 oneforall.py --target example.com --valid None run python3 oneforall.py --target example.com --brute True run python3 oneforall.py --target example.com --port small run python3 oneforall.py --target example.com --format csv run python3 oneforall.py --target example.com --dns False run python3 oneforall.py --target example.com --req False run python3 oneforall.py --target example.com --takeover False run python3 oneforall.py --target example.com --show True run Note: 参数valid可选值1,0,None分别表示导出有效,无效,全部子域 参数port可选值有'default', 'small', 'large', 详见config.py配置 参数format可选格式有'rst', 'csv', 'tsv', 'json', 'yaml', 'html', 'jira', 'xls', 'xlsx', 'dbf', 'latex', 'ods' 参数path默认None使用OneForAll结果目录生成路径 ARGUMENTS TARGET 单个域名或者每行一个域名的文件路径(必需参数) FLAGS --brute=BRUTE 使用爆破模块(默认False) --dns=DNS DNS解析子域(默认True) --req=REQ HTTP请求子域(默认True) --port=PORT 请求验证子域的端口范围(默认只探测80端口) --valid=VALID 导出子域的有效性(默认None) --format=FORMAT 导出文件格式(默认csv) --path=PATH 导出文件路径(默认None) --takeover=TAKEOVER 检查子域接管(默认False) --show=SHOW 终端显示导出数据(默认False)
项目的目录结构说明请参阅https://github.com/***/tree/master/docs/directory_structure.md%E3%80%82
关于子域字典来源的说明:
感谢这些伟大优秀的Python库!
非常热烈欢迎各位大佬一起完善本项目!
更多详细信息请阅读https://github.com/***/tree/master/docs/todo.md%E3%80%82
该项目使用https://semver.org/%E8%AF%AD%E8%A8%80%E5%8C%96%E7%89%88%E6%9C%AC%E6%A0%BC%E5%BC%8F%E8%BF%9B%E8%A1%8C%E7%89%88%E6%9C%AC%E7%AE%A1%E7%90%86%EF%BC%8C%E4%BD%A0%E5%8F%AF%E4%BB%A5%E5%9C%A8https://github.com/***/releases%E6%9F%A5%E7%9C%8B%E5%8F%AF%E7%94%A8%E7%89%88%E6%9C%AC%EF%BC%8C%E4%BD%A0%E5%8F%AF%E4%BB%A5%E6%9F%A5%E9%98%85https://github.com/***/tree/master/docs/changes.md%E4%BA%86%E8%A7%A3%E5%8E%86%E5%8F%B2%E5%8F%98%E6%9B%B4%E6%83%85%E5%86%B5%E3%80%82
你可以在https://github.com/***/tree/master/docs/contributors.md%E4%B8%AD%E6%9F%A5%E7%9C%8B%E6%89%80%E6%9C%89%E5%8F%82%E4%B8%8E%E8%AF%A5%E9%A1%B9%E7%9B%AE%E7%9A%84%E5%BC%80%E5%8F%91%E8%80%85%E3%80%82
如果你觉得这个项目帮助到了你,你可以***一杯咖啡以资鼓励:)
该项目签署了GPL-3.0授权许可,详情请参阅https://github.com/***/LICENSE%E3%80%82
感谢网上开源的各个子域收集项目!
感谢https://github.com/QAX-A-Team%E5%A4%A7%E5%93%A5%E4%BB%AC%E7%83%AD%E6%83%85%E6%97%A0%E7%A7%81%E7%9A%84%E9%97%AE%E9%A2%98%E8%A7%A3%E7%AD%94%EF%BC%81
本工具仅限于合法授权的企业安全建设,在使用本工具过程中,您应确保自己所有行为符合当地的***,并且已经取得了足够的授权。 如您在使用本工具的过程中存在任何非法行为,您需自行承担所有后果,本工具所有作者和所有贡献者不承担任何***及连带责任。 除非您已充分阅读、完全理解并接受本协议所有条款,否则,请您不要安装并使用本工具。 您的使用行为或者您以其他任何明示或者默示方式表示接受本协议的,即视为您已阅读并同意本协议的约束。
![Stargazers over time]([***]
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务