OneForAll工具:安装指南、使用方法及常见问题解决(超全)

引言

网络安全领域,子域名收集是信息收集过程中非常重要的一步。OneForAll 是一款功能强大的子域名收集工具,能够帮助我们高效地进行子域名收集。本文将详细介绍 OneForAll 的安装和使用方法,并解决在使用过程中可能遇到的问题。


1. OneForAll 简介

介绍OneForAll 是由 shmilylty 在 Github 上开源的子域名收集工具。它具有强大的收集能力和灵活的处理功能,支持多线程操作,速度极快。

功能特点:
  • 收集能力强大:利用证书透明度、常规检查、爬虫档案、DNS 数据集、DNS 查询、威胁情报平台、搜索引擎等多种方式收集子域。
  • 支持子域爆破:支持字典爆破、自定义 fuzz 模式,批量爆破和递归爆破。
  • 子域验证:自动解析子域 DNS,获取 title 和 banner,判断子域存活情况。
  • 子域接管:支持子域接管风险检查和自动接管(目前支持 Github)。
  • 处理功能强大:支持多种格式导出结果(rst、csv、tsv、json、yaml、html、xls、xlsx、dbf、latex、ods)。
  • 速度极快:利用多线程和异步多协程技术,收集速度达到10000pps。

2. 安装环境

介绍:安装 OneForAll 需要 Python 3.8 以上版本和 pip3 包管理工具。

检查环境步骤:
  • 检查 Python 版本:使用命令 python -V 或 python --version 确认 Python 版本。
  • 检查 pip 版本:使用命令 pip3 -V 或 pip3 --version 确认 pip 版本(Python 3.4 以上版本已内置 pip)。

3. OneForAll 的安装与使用

步骤

  1. 下载 OneForAll 文件:将文件部署在本地。

  2. 切换路径:打开 CMD 窗口,将执行文件路径切换到 OneForAll 程序所在路径。

    cd D:\Oneforall\OneForAll-master
    
  3. 利用pip安装的库:

    pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/
    
  4. 运行 OneForAll 程序:输入命令启动 OneForAll。

    python oneforall.py
    

4. 使用 OneForAll 收集子域名

单个目标子域收集:
python oneforall.py --target example.com run

例子:

拿小迪的网站进行扫描:

使用命令:python3 oneforall.py --target xiaodi8.com run

查看结果:

在这里插入图片描述

结果查看:

在这里插入图片描述

批量目标子域收集:
python oneforall.py --targets domains.txt run

注意:扫描结果将存放于 oneforall\results 文件夹中。


5. 使用过程中出现的问题及解决方案

在使用 OneForAll 的过程中,可能会遇到一些问题。以下是常见问题及详细解决方案:

问题1:ImportError: cannot import name ‘sre_parse’ from ‘re’

成因:高版本的 Python 中 re 模块没有 sre_parse 模块。

解决方案

  1. 使用较低版本的 Python:建议使用 Python 3.8 版本,因为较低版本的 Python 兼容性更好。

  2. 修改 exrex.py 文件

    • 找到 Python 安装目录下的 Lib\site-packages\exrex.py 文件。

    • 如果文件不存在或内容不正确,可以在 Python 安装目录下找到另一个 exrex.py 文件,并将其复制到 Lib\site-packages 目录下。

    • 修改 exrex.py 文件,确保其内容如下:

      try:
          from re import sre_parse
      except ImportError:
          import re._parser as sre_parse
      
    • 保存文件并重新运行 OneForAll。

问题2:ModuleNotFoundError: No module named ‘fire’、‘tenacity’、‘requests’

成因:缺少所需模块。

解决方案

  1. 安装缺少的模块:使用 pip 安装报错信息中提示的缺少模块。

    pip install fire
    pip install tenacity
    pip install requests
    
  2. 处理安装错误:如果安装模块时出现错误,例如:

    ERROR: Could not find a version that satisfies the requirement dns
    ERROR: No matching distribution found for dns
    
    • 使用 pip install opencv-python 命令进行安装(如果一次不成功,多试几次)。
    • 如果依然报错,可能是网络问题,尝试更换下载源。

更换下载源

  • 暂时切换镜像源

    pip install 模块名 -i https://pypi.tuna.tsinghua.edu.cn/simple/
    
  • 永久切换镜像源

    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
    
  • 常用镜像源

    • 豆瓣:http://pypi.douban.com/simple/
    • 中科大:https://pypi.mirrors.ustc.edu.cn/simple/
    • 清华:https://pypi.tuna.tsinghua.edu.cn/simple/
    • 阿里云:https://mirrors.aliyun.com/pypi/simple/

低版本 Python 更换镜像源

  • 在当前用户目录下新建 pip 文件夹,再新建 pip.ini 文件。

    [global]
    index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
    
  • 保存文件后,重新运行 pip install 命令。

特殊情况处理

  • 安装 dns 包时如果依然报错,使用以下命令:

    pip install dnspython
    
问题3:运行 OneForAll 对某个站点进行子域收集后,结果文件为空

成因

  1. 目标站点没有子域名。
  2. OneForAll 默认自动验证子域,只有有效子域才会导出。

解决方案

  1. 导出所有发现的子域

    • 使用 --valid=None 参数,指定导出所有发现的子域。

      python oneforall.py --target example.com run --valid=None
      
  2. 不验证子域有效性

    • 使用 --verify=False 参数,指定不验证子域的有效性。

      python oneforall.py --target example.com run --verify=False
      
问题4:No matching distribution found for requests==2.28.1

在这里插入图片描述

成因: 这个镜像源中没有requests库的2.08.1

解决方案: 但是根据提示最新的有2.27.1,所以的话只需要将requestment.txt文件中的reqests的2.28.1改成最新的2.27.1(根据实际情况)即可


6. OneForAll 下载地址

链接


总结

通过本文的介绍,大家可以清晰明了地掌握 OneForAll 的安装和使用方法。信息收集是网络安全测试中至关重要的一步,使用 OneForAll 工具可以大大提高子域名收集的效率和准确性。

黑客学习路线

 为了帮助大家更好的学习网络安全,我给大家准备了一份网络安全入门/进阶学习资料,里面的内容都是适合零基础小白的笔记和资料,不懂编程也能听懂、看懂,所有资料共282G,朋友们如果有需要全套网络安全入门+进阶学习资源包,可以点击免费领取(如遇扫码问题,可以在评论区留言领取哦)~

《网络安全入门+进阶学习资源包》CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

 👉网安(嘿客红蓝对抗)所有方向的学习路线👈

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

​​​
 学习资料工具包

压箱底的好资料,全面地介绍网络安全的基础理论,包括逆向、八层网络防御、汇编语言、白帽子web安全、密码学、网络安全协议等,将基础理论和主流工具的应用实践紧密结合,有利于读者理解各种主流工具背后的实现机制。

​​​

网络安全源码合集+工具包

​​

视频教程

​​

 面试题资料

独家渠道收集京东、360、天融信等公司测试题!进大厂指日可待!
​​ 全部资料共282G,朋友们如果有需要全套网络安全入门+进阶学习资源包,可以点击免费领取(如遇扫码问题,可以在评论区留言领取哦)~

黑客/网安大礼包:CSDN大礼包:《黑客&网络安全入门&进阶学习资源包》免费分享

好了就写到这了,大家有任何关于网安方面的问题也可以随时私信问我,后续也会给大家分享更多网安方面的知识!希望大家不要忘记点赞收藏哦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值