网络资产信息扫描(F-NAScan)

wolf (@伏宸安全) | 2016-04-14 13:00

网络资产信息扫描

在渗透测试(特别是内网)中经常需要对目标进行网络资产收集,即对方服务器都有哪些IP,IP上开了哪些端口,端口上运行着哪些服务,此脚本即为实现此过程,相比其他探测脚本有以下优点:

1、轻巧简洁,只需python环境,无需安装额外外库。

2、扫描完成后生成独立页面报告。

此脚本的大概流程为:

ICMP存活探测-->端口开放探测-->端口指纹服务识别-->提取快照(若为WEB)-->生成结果报表

运行环境:

python 2.6 +

参数说明

-h 必须输入的参数,支持ip(192.168.1.1),ip段(192.168.1),ip范围指定(192.168.1.1-192.168.1.254),ip列表文件(ip.ini),最多限制一次可扫描65535个IP。

-p 指定要扫描端口列表,多个端口使用,隔开 例如:22,23,80,3306。未指定即使用内置默认端口进行扫描(21,22,23,25,53,80,110,139,143,389,443,445,465,873,993,995,1080,1723,1433,1521,3306,3389,3690,5432,5800,5900,6379,7001,8000,8001,8080,8081,8888,9200,9300,9080,9999,11211,27017)

-m 指定线程数量 默认100线程

-t 指定HTTP请求超时时间,默认为10秒,端口扫描超时为值的1/2。

-n 不进行存活探测(ICMP)直接进行扫描。

结果报告保存在当前目录(扫描IP-时间戳.html)。

例子:

python NAScan.py -h 10.111.1

python NAScan.py -h 192.168.1.1-192.168.2.111

python NAScan.py -h 10.111.1.22 -p 80,7001,8080 -m 200 -t 6

python NAScan.py -h ip.ini -p port.ini -n

服务识别在server_info.ini文件中配置

格式为:服务名|默认端口|正则 例 ftp|21|^220.*?ftp|^220-

正则为空时则使用端口进行匹配,否则以正则匹配结果为准。

效果图

网络资产信息扫描(F-NAScan):NAScan.py,内网渗透测试主机信息收集

网络资产信息扫描(F-NAScan):NAScan.py,内网渗透测试主机信息收集

网络资产信息扫描(F-NAScan):NAScan.py,内网渗透测试主机信息收集

下载地址http://down.future-sec.com/F-NAScan.zip

项目地址https://github.com/ywolf/F-NAScan

欢迎大家反馈建议和BUG

[原文地址]

相关内容:

King Of The Proxy (代理之王) v2.0,http/https/socks4/5代理采集/验证工具

批量检查域名是否已注册(抢注域名神器)

讨论:边界之后下一步你会做什么?内网渗透、局域网入侵

一个获取windows系统信息的批处理脚本

Jboss JMX/EJBInvokerServlet 批量检测工具

【APT】NodeJS 应用仓库钓鱼,大规模入侵开发人员电脑,批量渗透各大公司内网

批量扫描互联网无线路由设备telnet,并获取WIFI密码

Masscan:3分钟扫描整个互联网的极速扫描器

Nscan.py - Fast Network Scanner,高速网络扫描器,全网端口扫描神器

JS绕过代理、VPN获取真实IP及内网IP,逆向追踪

关于 linux shell 内网如何做代理

网站应用程序指纹识别工具,网站系统、脚本程序指纹识别工具

关于FTP弱口令扫描的,为什么经常见有人搞一些FTP弱口令扫描?

自制分布式漏洞扫描

安卓下有没有可以扫描内网中 手机型号活手机系统版本的?

跨过边界防火墙,我拿菜刀砍内网

社工个人电脑到内网渗透系列

一段通过WebRTC获取客户端内网IP的js (无需java/ActiveX支持)

linux内网渗透一些乱写 欢迎大家讨论

InsightScan:Python多线程Ping/端口扫描 + HTTP服务/APP 探测

再谈内网渗透

King Of The Proxy (代理之王) v1.0 发布、HTTP代理采集、验证工具

Crazy Scan v1.0 - 疯狂扫描 v1.0 - 独立版

长安刺客 - 旁注杀手 v1.3 + Crazy Scan v1.0 - 疯狂扫描 v1.0,发布!

Crazy Scan v1.0 - 疯狂扫描 v1.0

只用一行cmd命令扫描指定域名C段所有存活的主机

查找“CDN、负载均衡、反向代理”等大型网络真实IP地址的方法

PHP Web 木马扫描器 - 安全测试工具

长安刺客 - 旁注杀手 v1.2 版 + CDN 终结者 v1.1 发布

长安刺客 - 旁注杀手 v1.1 版发布,外加强力新功能:CDN 终结者 v1.0

物理攻击、抓频攻击 - 利用雷达来进行扫描网络弱点

扫描指定IP网段存在的网络摄像头、监控设备

【Bat】扫描内网指定用户能获取管理权限的机器

【VC源码】Wscan.exe 源码(网站目录/文件扫描)

DEDE 0DAY 批量扫描程序 DEDE5.5批量拿shell工具

各种吐槽:

1#

园长 (喵~) | 2016-04-14 13:02

前排,支持狼狗

2#

_Thorns (舍就是得。) | 2016-04-14 13:02

3#

齐迹 (sec.zbj.com 欢迎来撸) | 2016-04-14 13:03

前排,支持狼狗

4#

小胖子 (z7y首席代言人,园长的表哥...) | 2016-04-14 13:03

前排,支持狼狗

5#

Hackshy (嘘....告诉你个秘密) | 2016-04-14 13:05

感谢分享。

6#

wolf (@伏宸安全) | 2016-04-14 13:05

@小胖子 @齐迹 @园长 你们都被谁带坏了 wolf = 狼

7#

闰土。 (骗我长胖 ?) | 2016-04-14 13:06

前排,支持狼狗

8#

路人N (?) | 2016-04-14 13:21

赞赞赞~

9#

小牛牛 | 2016-04-14 13:25

牛逼,支持WOlf

10#

Mystery。 (设计师一枚) | 2016-04-14 13:35

支持师傅

11#

BloodSword | 2016-04-14 13:38

中排,支持狼狗

12#

luwikes (土豆你个西红柿,番茄你个马铃薯~~~) | 2016-04-14 13:47

后排,支持狼狗

13#

JiuShao | 2016-04-14 14:06

@wolf 我能来你们办公室走吗 我在你们楼下。

14#

ver007 | 2016-04-14 14:07

输出效果不错拿来用用

15#

DNS | 2016-04-14 14:10

@JiuShao 来来

16#

JiuShao | 2016-04-14 14:15

@DNS 你们在了么 我真上来了哟

17#

prolog (事了拂衣去,不收一分钱) | 2016-04-14 14:18

前排,支持狼狗

18#

Azui | 2016-04-14 14:29

赞!

19#

luwikes (土豆你个西红柿,番茄你个马铃薯~~~) | 2016-04-14 14:42

感谢楼主分享.提个小bug,不加-n参数的话会一直显示提示信息,可是提示信息里的-n参数写的是可选..

20#

HackBraid | 2016-04-14 14:44

这个比nmap好用吗

21#

wolf (@伏宸安全) | 2016-04-14 14:50

@luwikes 测试不存在这个问题 发下你的环境信息看看

@HackBraid 比不上NMAP全面,但也有自己的优点

22#

null_z | 2016-04-14 14:51

赞赞赞! py还有个nmap的包扫描结果是json格式的跟其他工具对接也超级棒。

23#

rockes | 2016-04-14 14:59

为什么我在WIN10下面跑, F-NAScan.py 172.19.2.0 任何回显都没有 又弹出dos框呢?我的python版本是2.7

24#

L.N. (http://ln.sycsec.com/) | 2016-04-14 15:03

必须点赞

25#

wolf (@伏宸安全) | 2016-04-14 15:08

@rockes -h 172.19.2

26#

带馅儿馒头 (我就一小小小小鸟) | 2016-04-14 15:19

27#

newbie0086 | 2016-04-14 15:19

这个在内网配合插件自动化测试 效果一级棒

28#

wolf (@伏宸安全) | 2016-04-14 15:23

@newbie0086 最近这2个工具都是在客户现场做渗透测试为了方便写出来的。

29#

pyphrb (please called 强爷) | 2016-04-14 15:28

前排,支持狼狗

30#

Master (小菜一枚) | 2016-04-14 15:40

冒泡

31#

wolf (@伏宸安全) | 2016-04-14 15:44

@luwikes 解决这个问题了 https://github.com/ywolf/F-NAScan 重新下载试试

32#

凌零1 | 2016-04-14 16:15

后排学习

33#

好基友一辈子 | 2016-04-14 16:31

网络资产信息扫描(F-NAScan):NAScan.py,内网渗透测试主机信息收集

34#

好基友一辈子 | 2016-04-14 16:31

@wolf 权限是777

35#

wolf (@伏宸安全) | 2016-04-14 16:35

@好基友一辈子 是不稳定吗? 超时调高一点试试看,默认为10秒。

36#

wolf (@伏宸安全) | 2016-04-14 16:43

@好基友一辈子 在print 'Results output failure'上面加上print e 看看是什么错误信息

37#

路人N (?) | 2016-04-14 17:13

@wolf 帮你换了个皮肤(⌒▽⌒)

使用方法:把write_result函数改成下面的,扫描结束,打开这个文件http://paste.ubuntu.net/15825793/

def write_result():

try:

content = "var servers="+str(json.dumps(re_data))+";\n"

content += "var portdata="+str(json.dumps(port_data))+";\n"

content += "var statistics="+str(json.dumps(statistics))+";\n"

result = open("result.js","w")

result.write(content)

result.close()

except Exception,e:

print 'Results output failure'

效果图:

网络资产信息扫描(F-NAScan):NAScan.py,内网渗透测试主机信息收集

38#

wolf (@伏宸安全) | 2016-04-14 17:14

@路人N 好评

39#

乌云小秘书 (第1.绝对不意气用事!第2.绝对不漏判任何一件坏事) | 2016-04-14 18:24

@路人N 666

40#

终于乌云了 | 2016-04-14 18:55

大赞

41#

白开水 | 2016-04-14 18:59

mark

42#

scanf (www.scanfsec.com 网络尖刀) | 2016-04-14 19:08

可以打包成exe吗?

43#

toomi | 2016-04-14 20:58

狼哥真是赞啊,学习了

44#

Sai、 | 2016-04-14 21:22

内网探测很好用

45#

从容 (@寂寞的瘦子 其实是个死胖子!) | 2016-04-14 21:57

支持狼狗

46#

LoveSnow (我要努力,争取开发自己的神器) | 2016-04-15 00:24

支持狼狗

47#

LoveSnow (我要努力,争取开发自己的神器) | 2016-04-15 01:00

@路人N js获取的结果怎么进不来呢?

48#

ADO (为啥我名字又短又简单,因为我智商低啊) | 2016-04-15 08:41

@路人N 非常好用,赞!

@wolf 干的漂亮,Thanks!

49#

cf_hb (10000定律<=>实践ing) | 2016-04-15 09:34

赞,以后内网探测就用这个小脚本了。

50#

x1aoh4i (灰狗 、 就是灰狗) | 2016-04-15 09:42

后排,支持狼狗

51#

猪猪 | 2016-04-15 09:48

下载的压缩文件是损坏的?

52#

wolf (@伏宸安全) | 2016-04-15 10:02

@猪猪 多谢提醒 重新上传了

@scanf 可以的

53#

好基友一辈子 | 2016-04-15 10:05

@wolf 应该是编码问题,扫描过程中web页面如果有乱码或者编码不同的时候会导致导出失败

54#

东方不败 (日出东方,唯我不败) | 2016-04-15 10:23

赞 结合路人甲的 内网以后不用了

55#

风之传说 | 2016-04-15 10:25

前后用了三个,一个没有指纹识别,一个打开报告有错误,还有一个需要加载其他的库。 这个接近完美了,在我看来。 感谢了一个。

56#

小葵 (burpsuite+metasploit就是我爹。) | 2016-04-15 11:40

大赞.. 不错不错 内网神器.. 收下啦. 自己改改代码... 省的自己再写了.

57#

东方不败 (日出东方,唯我不败) | 2016-04-15 14:06

@路人N 这个每次打开不同报告都要改名result.js么- -有不有直接封装html啊。。不然好麻烦啊@wolf

58#

wolf (@伏宸安全) | 2016-04-15 15:24

@好基友一辈子 解决这个问题了 增加了编码识别环节,增加了忽略证书验证+容错 https://github.com/ywolf/F-NAScan

59#

wolf (@伏宸安全) | 2016-04-15 16:12

@scanf 已经打包成独立exe文件 http://down.future-sec.com/F-NAScan.exe

60#

小歪 | 2016-04-15 17:20

可以放弃iisputscan了

61#

路人N (?) | 2016-04-15 17:37

@wolf @东方不败 http://paste.ubuntu.net/15846036/

62#

wolf (@伏宸安全) | 2016-04-15 22:05

@路人N 不错不错

63#

廷廷 (想法最重要) | 2016-04-15 23:47

不错支持共享

64#

指尖上的故事 | 2016-04-16 00:39

@wolf @路人N

[img src="http://imgur.com/HBj1A8A" alt="报表"/]

提供一个思路:增加功能让这个更强大些(半自动化)。

提供一个思路:增加功能让这个更强大些(半自动化)。

port = '21,22,23,25,53,80,110,139,143,389,443,445,465,873,993,995,1080,1723,1433,1521,3306,3389,3690,5432,5800,5900,6379,7001,8000,8001,8080,8081,8888,9200,9300,9080,9999,11211,27017'

如果: 21 ftp 22 ssh 80 web 3389 rdp 3306 mysql

先是扫描出了开始IP段 & 结束IP段,然后比如扫描出来的某IP地址存在3389 3306 22 21 80 这些端口服务。

然后比如:3389弱口令字典爆破什么的在python中编写如下测试逻辑。

在然后比如:80 web端口可以用到的漏洞测试逻辑脚本加入到代码中。

然后比如:3306 mysql默认端口数据库首先检测远程端口是否开放,如果开放进行字典爆破或者根据SQL漏洞进行测试写入等等。

这样的话就更方便了,能写的话可以试试加入漏洞检测环节。

留言评论(旧系统):

佚名 @ 2016-04-17 08:36:31

竟然又活了。。。难得啊

本站回复:

-_-!!!

不死牛 @ 2016-04-18 10:35:07

核总,还以为进去了呢。看到你又活了,真好

本站回复:

-_-!!!

佚名 @ 2016-04-18 11:56:49

哇,这么快就出来,菊花变成向日葵了吧。

本站回复:

变成核弹发射井了,要不朝你来一发?

站长好 @ 2016-04-20 17:37:18

站长 你这网站记录了我哪些信息啊 浏览一个网站,网站都会记录哪些个人信息呢?

本站回复:

时间,IP,浏览的网址,浏览器类型,系统类型,以及一些基本系统信息。

佚名 @ 2016-04-23 10:29:52

忘记买春哥了 核总、 丞相我还不能死

本站回复:

-_-!!! ......

宝宝 @ 2016-04-26 00:04:09

核总居然没进去

本站回复:

进啥?现在天天替国安抓人,忙的都没时间更新网站……