OneForall工具的下载安装和使用(Windows和Linux)

news2024/12/23 10:34:56

目录

OneForall的介绍

OneForall的下载

OneForall的安装

安装要求

安装步骤(git 版)

安装(kali)

OneForall的使用命令

在Windows

在Linux(kali)

OneForall的结果说明


免责声明

本文所提供的文字和信息仅供学习和研究使用,请读者自觉遵守法律法规,不得利用本文所提供的信息从事任何违法活动。本文不对读者的任何违法行为承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。

注意:OneForall 这样的工具在合法的安全测试和研究环境之外的使用可能是非法的和不道德的。在实际应用中,应该在授权和合法的情况下使用它来帮助发现和修复系统中的安全漏洞,以提高系统的安全性。

OneForall的介绍

OneForAll是一款用于收集和爆破子域名的工具,它是由米斯特安全团队开发的开源项目。该工具旨在提高渗透测试中子域名收集的效率,支持多种接口和模块,能够快速高效地收集子域名信息。

OneForall的下载

OneForAll的安装需要Python 3.7环境,虽然理论上Python 3.6和3.8版本也可以工作,但建议使用Python 3.7以保证最佳兼容性。

下载地址: GitHub - shmilylty/OneForAll: OneForAll是一款功能强大的子域收集工具

OneForall的安装

安装要求

OneForAll基于Python 3.6.0开发和测试,OneForAll需要高于Python 3.6.0的版本才能运行。 安装Python环境可以参考Python 3 安装指南。运行以下命令检查Python和pip3版本:

python -V
pip3 -V

如果你看到类似以下的输出便说明Python环境没有问题:

Python 3.7.4
pip 19.0.3 from d:\app\python\python3.7.4\lib\site-packages\pip (python 3.7)

安装步骤(git 版)

  1. 下载

由于该项目处于开发中,会不断进行更新迭代,下载时请使用git clone克隆最新代码仓库,也方便后续的更新,不推荐从Releases下载,因为Releases里版本更新缓慢,也不方便更新, 本项目已经在码云(Gitee)镜像了一份,国内推荐使用码云进行克隆比较快:

git clone https://gitee.com/shmilylty/OneForAll.git

或者:

git clone https://github.com/shmilylty/OneForAll.git
  1. 安装

你可以通过pip3安装OneForAll的依赖,以下为Windows系统下使用pip3安装依赖的示例:注意:如果你的Python3安装在系统Program Files目录下,如:C:\Program Files\Python36,那么请以管理员身份运行命令提示符cmd执行以下命令!

cd OneForAll/
python3 -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/
python3 oneforall.py --help

其他系统平台的请参考依赖安装,如果在安装依赖过程中发现编译某个依赖库失败时可以参考常见问题与回答.md文档中解决方法

  1. 更新

执行以下命令更新项目(可保存对/config/setting.py和/config/api.py的修改):

git stash        # 暂存本地的修改
git fetch --all  # 拉取项目更新
git pull         # 下载覆盖
git stash pop    # 释放本地修改

安装(kali)

  1. 安装依赖:首先确保你的系统安装了git(一种分布式版本控制系统) python3-pip(用于安装和管理 Python 第三方库的工具)。可以通过以下命令安装它们:git python3-pip
sudo apt update
sudo apt install git python3-pip -y
  1. 克隆OneForAll仓库:接下来,你需要从GitHub或其他代码托管平台克隆OneForAll的源代码。如果你无法访问GitHub,可以使用国内的镜像网站。例如,使用GitHub克隆的命令如下:
git clone https://github.com/shmilylty/OneForAll.git

或者,如果你在国内,可以使用国内的镜像网站,如阿里云镜像:

git clone https://gitee.com/shmilylty/OneForAll.git
  1. 安装依赖:进入OneForAll的目录,并安装所需的依赖。这可以通过以下命令完成:
cd OneForAll
sudo apt install python3-dev python3-pip python3-testresources -y
sudo python3 -m pip install -U pip setuptools wheel -i https://mirrors.aliyun.com/pypi/simple/
pip3 install --ignore-installed -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

⚠️如果提示:exrex.py 与当前使用的 Python 版本的某些模块定义不一致

pip uninstall exrex 卸载当前的 exrex 模块

再使用 pip install exrex 重新安装该模块

其他模块也是同理

  1. 运行OneForAll:安装完成后,你可以通过以下命令运行OneForAll:
python3 oneforall.py --help

这将显示OneForAll的帮助信息,表明你已经成功安装

OneForall的使用命令

在Windows

如果你是通过pip3安装的依赖则使用以下命令运行示例:

python3 oneforall.py --target example.com run
python3 oneforall.py --targets ./example.txt run

单域名收集: python3 oneforall.py --target 【域名】 run
多域名收集: python3 oneforall.py --targets 【存放域名的文件】 run
可选选项:--alive=True
可选值True,False分别表示导出存活,全部子域结果
--dns=DNS			DNS解析子域(默认True)
--req=REQ			HTTP请求子域(默认True)
--port=PORT		请求验证子域的端口范围(默认只探测80端口)
--fmt=FMT			结果保存格式(默认csv)
--path=PATH		结果保存路径(默认None)
--takeover=TAKEOVER 检查子域接管(默认False)

在Linux(kali)

oneforall --target example.com run
oneforall --targets ./example.txt run

使用道理和参数和Windows的一样

注意:在本工具安装和使用过程中,如果输命令过程中出现输 python 或 python3 报错了,大概率是因为python程序重命名的问题,在其他命令没问题的情况下,命令中输python报错就换python3试试,输python3报错就换python试试。其他渗透测试工具也一样。

OneForall的结果说明

我们以python3 oneforall.py --target example.com run命令为例,OneForAll在默认参数正常执行完毕会在results目录生成相应结果:

example.com.csv 是每个主域下的子域收集结果。

all_subdomain_result_1583034493.csv 是每次运行OneForAll收集到子域的汇总结果,包含example.com.csv,方便在批量收集场景中获取全部结果。

result.sqlite3 是存放每次运行OneForAll收集到子域的SQLite3结果数据库,其数据库结构如下图:

其中类似 example_com_origin_result 表存放每个模块最初子域收集结果。

其中类似 example_com_resolve_result 表存放对子域进行解析后的结果。

其中类似 example_com_last_result 表存放上一次子域收集结果(需要收集两次以上才会生成)。

其中类似 example_com_now_result 表存放现在子域收集结果,一般情况关注这张表就可以了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1705064.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于Java的高校学生勤工助学优派系统的设计与实现(论文+源码)_kaic

摘 要 高校勤工助学管理系统的出现,让学生的工作更加标准,不仅仅使高校办公室的办公水平以及管理水平大大提高,还优化了勤工助学资金的使用方式方法,完善了资助所需费用的资源配置,可以卓有成效地缩减学校的管理经费。本系统主…

智能SQL代码生成器,开发者的得力助手

🏡 博客首页:IT 派同学 ⛳️ 欢迎关注 🐳 点赞 🎒 收藏 ✏️ 留言 🎢 本文由 IT 派同学原创编撰 🚧 系列专栏:《开源专栏》 🎈 本系列主要输出作者自创的开源项目 🔗 作品…

B端产品C端化设计,趋势不可挡呀。

一、B端产品和C端产品设计的不同 在设计上,B端(Business-to-Business)和C端(Consumer)之间存在一些区别。 用户群体:B端产品的用户是企业或组织,而C端产品的用户是普通消费者。B端产品的用户通…

面向对象编程的魅力与实战:以坦克飞机大战为例

新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一、面向对象编程的引言 二、理解面向对象编程与面向过程编程的差异 三、创建类与对象&…

基于 React + Nest 全栈开发的后台系统

Xmw Admin 基于 React Nest 全栈开发的后台系统 🪴 项目简介 🎯 前端技术栈: React、Ant Design、Umi、TypeScript🎯 后端技术栈: Nest.js、Sequelize、Redis、Mysql😝 线上预览: https://r…

Java入门基础学习笔记48——ArrayList的应用案例

掌握从容器中找出某些数据并成功删除的技巧: 需求: 现在加入购物车中存储了如下这些商品:Java入门,宁夏枸杞,黑枸杞,人字拖,特级枸杞,枸杞子。现在用户不想买枸杞了,选…

JVM之【运行时数据区2】

三、堆(Heap) 1、什么是堆 在Java虚拟机(JVM)中,堆(Heap)是用于动态分配内存的区域。在Java程序运行时,所有对象和数组都是在堆中分配内存的。堆是Java内存模型的重要组成部分&…

常见SSL证书品牌关系图

常见SSL证书品牌关系图 在SSL证书市场上,有几个主要的品牌和他们之间的复杂关系。以下是一些主要的SSL证书提供商及其关系的简要概述: DigiCert: DigiCert 是最大的SSL证书颁发机构之一。它收购了Symantec的SSL和PKI业务,其中包括…

Linux系统硬盘分区

文章目录 一、硬盘和分区1.1 硬盘的概念1.2 硬盘分区的类别1.3 硬盘分区的方式1.3.1 MBR分区1.3.2 GPT分区 1.4 硬盘分区的意义1.4.1 分区的作用1.4.2 分区的缺点 二、如何建立分区2.1 分区命令2.1.1 fdisk命令2.1.2 gdisk命令 2.2 建立分区2.2.1 建立MBR分区建立主分区建立扩展…

leetCode.82. 删除排序链表中的重复元素 II

leetCode.82. 删除排序链表中的重复元素 II 题目思路: 代码 class Solution { public:ListNode* deleteDuplicates(ListNode* head) {auto dummy new ListNode(-1);dummy->next head;auto p dummy;while(p->next){auto q p->next->next;while(q …

洛谷 P1346电车

题目来源于:洛谷 解题思路: 可以把一个路口看作一张图中的一个点,轨道是图中的边(注意:这是有向图),每一条边的权值就是这个边所联通的点是否需要按按钮(需要按按钮就是1&#xff0…

Ubuntu24.04安装tabby-terminal-1.0.207并处理依赖

1 下载 tabby-terminal-1.0.207 地址: https://github.com/Eugeny/tabby/releases 点击show all 36 assets 选择 tabby-1.0.207-linux-x64.deb 并下载。 2 依赖下载 gconf2_3.2.6-3ubuntu6_amd64.deb gconf2-common_3.2.6-3ubuntu6_all.deb gconf-service_3.2.6-…

如何实现倾斜摄影三维模型OSGB格式轻量化

如何实现倾斜摄影三维模型OSGB格式轻量化 倾斜摄影三维模型以其高精度和真实感受在城市规划、建筑设计和虚拟漫游等领域发挥着重要作用。然而,由于其庞大的数据量和复杂的几何结构,给数据存储、传输和可视化带来了挑战。为了解决这个问题,倾斜…

机器学习实验----逻辑回归实现二分类

目录 一、介绍 二、sigmoid函数 (1)公式: (2)sigmoid函数的输入 预测函数: 以下是sigmoid函数代码: 三、梯度上升 (1)似然函数 公式: 概念&#xff…

Android存储系统成长记

用心坚持输出易读、有趣、有深度、高质量、体系化的技术文章 本文概要 您一定使用过Context的getFileStreamPath方法或者Environment的getExternalStoragePublicDirectory方法,甚至还有别的方法把数据存储到文件中,这些都是存储系统提供的服务&#x…

【代码随想录——回溯算法——三周目】

1. 子集2 这题需要先进行排序,和候选人那题类似。防止出现重复的子集。 func subsetsWithDup(nums []int) [][]int {path : make([]int, 0)res : make([][]int, 0)sort.Ints(nums)var dfs func(nums []int, start int)dfs func(nums []int, start int) {res app…

08Django项目--用户管理系统--查(前后端)

对应视频链接点击直达 TOC 一些朋友加我Q反馈,希望有每个阶段的完整项目代码,那从今天开始,我会上传完整的项目代码。 用户管理,简而言之就是用户的增删改查。 08项目点击下载,可直接运行(含数据库&…

1967python多媒体素材管理系统mysql数据库Django结构layUI布局计算机软件工程网页

一、源码特点 python Django多媒体素材管理系统是一套完善的web设计系统mysql数据库 ,对理解python编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。 开发环境pycharm mysql 5.0 到5.5 依赖包 Dj…

推荐丨 IP地址如何申请SSL证书实现https

为IP地址申请SSL证书可以让用户通过HTTPS协议安全地访问直接绑定到IP地址的网站或服务。以下是申请IP地址SSL证书的一般步骤: 1 选择支持IP证书的CA:直接为IP地址颁发SSL/TLS证书并不常见,国内厂商JoySSL有提供IP证书,登录其官网…

东莞MES管理系统在电子工厂的益处

东莞MES管理系统对东莞电子企业带来了许多好处,包括但不限于以下几点: 提高生产效率:MES系统可以优化生产计划、监控生产过程,提高生产效率,减少生产中的浪费和停机时间,提高产能利用率。 优化库存管理&a…