前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >norecon:一款自动化recon工具

norecon:一款自动化recon工具

作者头像
FB客服
发布2020-10-27 16:38:28
7650
发布2020-10-27 16:38:28
举报
文章被收录于专栏:FreeBufFreeBuf

简介

闲来没事,做一个自动化recon的工具,简化操作流程。可以对域名或ip进行whois查询,dns记录查询,ip端口扫描,http屏幕快照。

最终生成markdown格式的报告,可使用Obsidian或vscode的markdown notes插件打开,借助双向链接功能,方便跳转查看。

依赖的程序

amass

子域名查找 下载地址

masscan

扫描全部端口,发现开放端口。

nmap

服务扫描,针对masscan发现的端口进行具体的服务扫描。

aquatone

屏幕快照,由于需要对每个目标(域名或ip)单独进行快照,然后再合并,fork原版做了简单的修改,提供了session保存与合并的功能,下载地址: aquatone

安装程序

使用python3环境:

代码语言:javascript
复制
pip install norecon

使用ansible批量安装

不喜欢手动安装的话,可以使用ansible进行自动化安装,使用这个playbooks仓库:

git clone 项目到本地,配置好ansible,设置好主机项,然后执行:

代码语言:javascript
复制
ansible-playbook norecon.yml

即可在指定的主机上安装好依赖程序及norecon包。

使用方法

命令行参数:

usage: norecon [-h] [—amass-timeout AMASS_TIMEOUT] [—ip-scan-timeout IP_SCAN_TIMEOUT] [—screenshot-timeout SCREENSHOT_TIMEOUT] [—masscan-rate MASSCAN_RATE] [—scan-cdn-ip] [—overwrite] [-ss SCREEN_SESSION] [-e [EXCLUDE]] -p PROJECT_DIR [-t [TARGETS]] [-v [VERBOSE]] [target [target …]] 针对目标进行recon positional arguments: target 要扫描的目标,可以是域名或ip地址 optional arguments: -h, —help show this help message and exit —amass-timeout AMASS_TIMEOUT amass扫描超时时间(分) (default: 60) —ip-scan-timeout IP_SCAN_TIMEOUT ip扫描超时时间(秒) (default: 600) —screenshot-timeout SCREENSHOT_TIMEOUT 屏幕快照超时时间(秒) (default: 1000) —masscan-rate MASSCAN_RATE masscan扫描速率 (default: 1000) —scan-cdn-ip 是否对cdn ip进行端口扫描 (default: False) —overwrite 是否强制重新扫描(如果为False,则扫描过的项目不再重新扫描) (default: False ) -ss SCREEN_SESSION, —screen-session SCREEN_SESSION 输出屏幕快照的session文件名 (default: screen) -e [EXCLUDE], —exclude [EXCLUDE] 包含排除列表的文件,可以是域名或ip,支持glob格式匹配(*?) -p PROJECT_DIR, —project-dir PROJECT_DIR 项目根目录 -t [TARGETS], —targets [TARGETS] 输入的目标 -v [VERBOSE], —verbose [VERBOSE] 日志输出级别(0,1,2)  (default: 0)

最简单的用法:

代码语言:javascript
复制
norecon -p 项目保存目录 域名或ip

如果域名比较多,可以增大—amass-timeout参数,以收集更多的子域名。

比如测试yahoo,支持一级域名或子域名。

代码语言:javascript
复制
norecon -v -p yahoo --amass-timeout 60 yahoo.com engadget.com login.aol.com

如果中途中断,继续执行以上命令,会自动跳过已经扫描的部分.可使用—overwrite强制重新扫描。

也可以在项目执行完毕后再添加ip或域名,或只进行ip扫描(支持cidr子网或ip范围):

代码语言:javascript
复制
norecon -v -p yahoo 202.165.107.00/28 119.161.10.15-119.161.10.40 106.10.236.40

扫描完成后,结果在项目目录下,按whois,domain,ip分类存放为json格式,可以自己进行分析,

也可以生成markdown格式的报告:

代码语言:javascript
复制
noreport -v yahoo

项目目录下的screen/screen.html为aquatone的输出报告,包含了所有屏幕快照的域名或ip。

报告截图

生成报告后使用Obsidian打开项目目录,查看报告结果 ,主要是方便跳转和查看反向引用。

附带的单独工具

noresolvers

域名解析服务器查询工具,根据可用性和超时时间获取域名解析服务器列表.按响应时间排序。

使用方法,可用性为0.9,响应时间为3秒内,输出解析服务器列表到resolve:

代码语言:javascript
复制
noresolvers -r 0.9 -t 3 -o resolve

domainvalid

检测一级域名是否有效,即含有ns记录,是正常使用的一级域名。

可以指定resolvers文件,即noresolvers输出的域名解析服务器文件。

norecords

获取一个域名的所有解析记录。

wildomains

获取一个通配域名的所有一级域名,比如baidu.*,会查找所有可能的tld后缀,找到还在使用的一级域名.

可以使用tld文件指定要查找的后缀,如果不指定,会查找大量tld,速度比较慢。

nosubsfinder

从网页查询子域名。

noamass

调用amass查询子域名。

nowhois

whois查询域名或ip。

nonmap

调用masscan和nmap进行服务扫描。

noffuf

调用ffuf进行路径爆破。

noscreen

调用aquatone进行屏幕快照。

nowx

发送微信消息,借助微信消息推送服务发送消息,可以实现命令执行完毕后发送微信消息通知。

第一次运行输入nowx执行,根据提示进行配置:

代码语言:javascript
复制
➜  sub-domains git:(master) ✗ nowx
未发现token配置
访问 http://wxpusher.zjiecode.com/admin/app/list 创建token.
输入申请的APP_TOKEN:[粘贴页面申请的token]

网页打开下面的网址,微信扫码关注以接收消息:
https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=xxxxxx

然后可以在执行时带上消息参数发送消息:

代码语言:javascript
复制
nowhois bing.com  ; nowx whois执行完毕,返回代码:$?

上面的命令在nowhois执行完毕后,由nowx发送微信消息,通知命令完成及nowhois的返回代码.注意两个命令之间使用;分割。

最后

项目页面,欢迎issue或pr。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-10-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 依赖的程序
    • amass
      • masscan
        • nmap
          • aquatone
          • 安装程序
          • 使用ansible批量安装
          • 使用方法
          • 报告截图
          • 附带的单独工具
            • noresolvers
              • domainvalid
                • norecords
                  • wildomains
                    • nosubsfinder
                      • noamass
                        • nowhois
                          • nonmap
                            • noffuf
                              • noscreen
                                • nowx
                                • 最后
                                领券
                                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档