工具特性

1.O.G. Auto-Recon是一款功能强大的基于Nmap结果的目标枚举工具,它的目的是自动化收集最初始的信息阶段,然后尽可能多地基于Nmap扫描的数据进行目标枚举。

2.O.G. Auto-Recon是一款为CTF比赛专门设计的功能强大的目标枚举工具。

3.O.G. Auto-Recon项目中的所有工具均符合OSCP考试规则。

4.命令语法在Config中可以轻松修改,$变量名应保持不变。

5.如果检测到虚拟主机路由,O.G Auto-Recon则会将主机名自动添加到/ etc / hosts文件中,并继续枚举新发现的主机名。

6.DNS枚举忽略了.com .co .eu .uk等域名,因为O.G. Auto-Recon是专门为CTF比赛设计的一款功能强大的工具,例如“ hack the box”(黑盒子)。如果检测到DNS服务器,目标就会锁定.htb域名并开始大量查找数据。

7.O.G. Auto-Recon项目使用了各种独立的和自定义的工具来枚举一个功能强大的基于nmap扫描数据的枚举目标。

8.使用命令“report/IP-ADDRESS/”将所有命令和输出数据都记录到users ~/.local/share/autorecon/report目录中的一个报告文件夹中,,该目录外观类似于report/10.10.10.108/,目录树结构与此报表树结构类似。

工具安装

广大研究人员可以使用下列命令将该项目源码克隆至本地:

cd /opt
git clone https://github.com/Knowledge-Wisdom-Understanding/recon.git
cd recon
chmod +x setup.sh
./setup.sh
python3 setup.py install

工具使用介绍

       _____________          ____    ________________
      /___/___      \        /  / |  /___/__          \      Mr.P-Millz   _____
      O.G./  /   _   \______/__/  |______|__|_____ *   \_________________/__/  |___
       __/__/   /_\   \ |  |  \   __\/  _ \|  |       __/ __ \_/ ___\/  _ \|       |
      |   |     ___    \|  |  /|  | (  |_| )  |    |   \  ___/\  \__(  |_| )   |   |
      |___|____/\__\____|____/_|__|\_\____/|__|____|_  /\___  |\___  \____/|___|  /
      gtihub.com/Knowledge-Wisdom-Understanding  \___\/  \__\/  \__\_/ v3.6 \___\/
usage:  autorecon -t 10.10.10.10

信息收集和枚举框架

可选参数:

-h, --help             显示帮助消息并退出
-t TARGET, --target TARGET     扫描单个 IPv4地址目标
-F, --FUZZ            auto fuzz 找到以 .php结尾的 urls 作为params
-v, --version          显示当前版本信息
-f FILE, --file FILE     要扫描的 IPv4地址目标文件
-w [WEB], --web [WEB]     获取IPv4地址的开放端口,然后仅枚举Web和Dns服务
-t,--target 必须指定目标
-w, --web 以URL 作为参数i.e. python3 recon.py
-t 10.10.10.10 -w secret
-i {http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,removecolor,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm} [{http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,removecolor,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm} ...], --ignore {http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,removecolor,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm} [{http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,removecolor,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm} ...]     扫描期间要忽略的服务模块
-s {http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,removecolor,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm} [{http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,removecolor,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm} ...], --service {http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,removecolor,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm} [{http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,removecolor,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm} ...]         仅扫描指定的服务模块
-b {ftp,smb,http,ssh}, --brute {ftp,smb,http,ssh}    以实验为基础的!暴力破解ssh、smb、ftp、http或者-t协议时,目标为必填项。而且,一次只能提供一个协议,对于ssh协议来说, 当没有用户或密码作为选项提供时,第一个有效用户将在暴力破解密码被启动之前进行枚举。
-p PORT, --port PORT  暴力强制参数的端口,如果没有指定端口,将使用默认端口
-u USER, --user USER  默认情况下,将为单个用户名强制指定SSH协议到wordnouser用户名中,使用txt和bruteforce的用户名
-U USERS, --USERS USERS      尝试暴力破解的用户名列表至今还未实现
-P PASSWORDS, --PASSWORDS PASSWORDS
                       要尝试的密码列表,SSH可选,默认情况下将使用wordlist/probable-v2-top1575.txt文件。

扫描单个目标并根据nmap扫描结果进行枚举时使用下列命令:

autorecon -t 10.10.10.10

进行大规模Web数据枚举

如果不想指定目录,则只需输入命令'' –web“作为参数即可

autorecon -t 10.10.10.10 -w secret
autorecon -t 10.10.10.10 -w somedirectory
autorecon -t 10.10.10.10 -w ' '

通常情况下,在第一次运行工具时,您应该只指定-t --target选项(autorecon -t 10.10.10.10),然后才能使用-s --service选项来指定特定的模块,这时,topports模块已经开始运行了。例如,如果您真的想在首次运行时跳过所有其他模块,只在topports之后扫描网络,则可以执行以下操作:

autorecon -t 10.10.10.10 -s topports dns http httpcms ssl sslcms sort_urls aquatone source

或者跳过web数据目标枚举,只扫描其他所有内容。

autorecon -t 10.10.10.10 -i dns http httpcms ssl sslcms sort_urls aquatone source

其余的服务模块也依赖于topports和fulltcp模块。如果目标出现速度较慢的情况时,则可以跳过执行fulltcp扫描的操作。但是,请注意,UDP nmap扫描与fulltcp模块是绑定在一起的,因此,跳过fulltcp模块后将导致丢失一些udp数据目标枚举。

扫描并枚举ips.txt文件中的所有IPv4地址,请输入以下命令:

autorecon -f ips.txt

要对所有的php urls参数进行模糊处理,则可以使用不带参数的-F——FUZZ标志,命令如下:

autorecon -t 10.10.10.10 --FUZZ

在默认端口22上使用ssh用户,如果找到唯一有效的用户,则可以开始进行暴力破解,命令如下:

autorecon -t 10.10.10.10 -b ssh

在默认端口2222上使用ssh用户,如果找到唯一有效的用户,则可以开始进行暴力破解,命令如下:

autorecon -t 10.10.10.10 -b ssh -p 2222
autorecon -t 10.10.10.10 -b ssh -p 2222 -u slickrick

要忽略某些服务被扫描,则可以使用指定的参数-i , --ignore flag.

当指定要忽略多个服务时,服务名称必须用空格分隔。如果您已经运行了此模块,请忽略topports,因为大多数其他模块都依赖于nmap的初始top端口输出。所有可用的模块如下:

http,httpcms,ssl,sslcms,aquatone,smb,dns,ldap,oracle,source,sort_urls,proxy,proxycms,fulltcp,topports,remaining,searchsploit,peaceout,ftpAnonDL,winrm
autorecon -t 10.10.10.10 -i http
autorecon -t 10.10.10.10 -i http ssl
autorecon --target 10.10.10.10 --ignore fulltcp http

您还可以只扫描指定数据的服务,类似于--ignore 选项,-s,--service选项只扫描指定数据的服务。提示:请注意,在使用-s,--service选项之前,您必须要运行topports nmap进行扫描,因为大多数模块都依赖于nmap的输出数据。

autorecon -t 10.10.10.10 -s topports remaining
autorecon -t 10.10.10.10 -s http httpcms
autorecon -t 10.10.10.10 --service oracle

重要提示

查看并确保Config文件满足所有定制的需求:octocat:

在setup.sh文件中包含了所有必需的非默认kali linux依赖项。

提示:该程序旨在kali linux系统中使用。如果您发现一个bug或者有特性的要求。请创建问题或提交请求。谢谢!

其他

1.我知道还有另一个非常相似的项目Auto-Recon,它与O.G. AUTO-RECON具有相同的名称。

2.Auto-Recon-Bash-Version是一款功能强大的基于bash脚本的工具,但是该工具很快就失去了自主维护的功能。

3.不要扭曲Auto-Recon这个名字。

4.Auto-Recon Original Commit对首次提交到bash版本的数据会自动确认。

5.Tib3rius对他的项目Tib3rius Auto-Recon做出了首次承诺

6.巧合的是,这两个项目都是在2019年3月1日完成创建的。

7.不要惊讶。

免责声明

使用recon.py文件来测试或利用网站时,请谨慎试用。O.G. AUTO-RECON这款工具仅适用于CTF比赛的计算机主机使用。所有用户都应该遵守地方法律,本文作者不承担任何责任,也不承担任何因使用该程序而造成的损害。

项目地址

O.G. AUTO-RECON:【GitHub传送门】

本文作者:Alpha_h4ck, 转自FreeBuf