norecon:一款自动化recon工具

VSole2023-04-01 06:48:06

简介

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

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

依赖的程序

amass

子域名查找 下载地址

masscan

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

nmap

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

aquatone

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

安装程序

使用python3环境:

pip install norecon

使用ansible批量安装

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

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

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)

最简单的用法:

norecon -p 项目保存目录 域名或ip

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

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

norecon -v -p yahoo --amass-timeout 60 yahoo.com engadget.com login.aol.com

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

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

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格式的报告:

noreport -v yahoo

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

报告截图

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

附带的单独工具

noresolvers

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

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

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执行,根据提示进行配置:

➜  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

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

nowhois bing.com  ; nowx whois执行完毕,返回代码:$?

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

最后

项目页面,欢迎issue或pr。

域名服务器域名后缀
本作品采用《CC 协议》,转载必须注明作者和本文链接
在互联网+时代,网站是个人或企业展示品牌形象和推广品牌的重要工具,而无论是个人还是企业,在建设网站时,都需要提前注册域名。那么域名应该怎么注册呢?从域名选择,到选择域名注册商,再到域名注册,小编将一步步教你如何注册自己的域名。第一步:选择一个好的域名域名是作为互联网的身份标识而存在的,一个好的域名,不仅要起到宣传品牌、展示企业形象的作用,也要方便用户记忆和搜索引擎优化,由此,选择一个好的域名非常重
信息搜集
2021-12-31 14:25:34
信息收集1.系统的信息收集1.1.CDN什么是CND?内容分发式服务CDN的优势?隐藏源主机ip,降低延迟,
在渗透测试的过程中,我们可以通过常见的漏洞来获取shell,我们获取到的shell通常是各个公司对外开放的网站以及APP应用等属于外网(可以通过计算机直接访问),如果我们想要获取该公司内部的一些内部信息就要进入该公司的内部网络(内网)本文将会对内网进行简单介绍并且搭建一个简单地内部网络环境,来熟悉了解什么是内网。
探讨DNS解析流程
2022-08-08 22:05:47
如果 DNS 服务器出现故障,整个 Internet 网络都将关闭。本地 DNS 服务器收到来自客户端的 DNS 请求,它会在其缓存中查找 google.com 的 IP 地址。根域名服务器作为最高级别的 DNS 服务器,全球共 13 台。顶级 .com 区域 DNS 服务器再次为该请求指明了方向。
思路:钓鱼演练核心是gophish,此平台联动邮件服务器可以做到对邮件的统筹下发,如果邮件中包含钓鱼链接,他还能够锁定个人并跟踪监测到该员工:“是否查看邮件”,“是否点击链接”,“是否输入数据”,并且图形化得展示出来,非常直观,平台需要对外可访问,涉及beian问题,所以还需要一台外网vps。
国内外很多厂商都把SMTP对应的25端口毙掉了,也是为了限制垃圾邮件泛滥,我这里用一台虚拟机搭建邮件服务器,再通过frp把25映射到vps上,这样我们邮件服务器问题就解决了环境:一台国外的vps,我这边选用了Ubuntu一台新的centos虚拟机,因为ewomail邮件服务器要求搭建环境干净。工具:gophish、ewomail邮件服务器frpmip22域名一枚,用了godaddy二、工具安装与调试:1.gophish搭建 下载解压缩,解压缩到当前一个叫gophish文件夹中wget?
通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析。地址1.3 DNS 的功能每个 IP 地址都可以有一个主机名,主机名由一个或多个字符串组成,字符串之间用小数点隔开。主机名到 IP 地址映射的两种方式静态映射/etc/hosts文件在每台设备上都有主机到IP的映射关系,只供此设备使用动态映射/etc/resolv.conf文件指通过DNS服务器配置主机到IP的映射关系#?
在申请SSL证书的过程中,证书签名请求(CSR)是非常关键的一步,证书申请者需要生成CSR文件,并将CSR文件提交给证书颁发机构才能获取SSL证书。那么什么是证书签名请求(CSR)?如何生成CSR文件呢?请看下面的内容。 什么是证书签名请求(CSR)?证书签名请求(CSR),英文全称Certificate Signing Request,是一个包含网站、服务、国家、组织、域名、公钥和签名
内网渗透TIPS总结
2023-01-28 11:00:41
内网基础知识1、工作组:工作组是 局域网 中的一个概念,他是长久的资源管理模式。默认情况下使用工作组方式进行资源管理,将不同的 computer 按照不同的要求分类到不同的组。而实际上,因为域名的计算机是使用DNS 来定位域控制器、服务器及其他计算机、网络服务的,所以域的名字就是DNS 域的名字。在内网渗透测试中,大都是通过寻找 DNS 服务器来确定域控制器的位置的。
Web安全常见漏洞修复建议
VSole
网络安全专家