大家知道渗透测试中的信息收集是很关键步骤。其中能够准确全面的找到厂商的ip段,又是其中很重要的。相信大部分的人对厂商的子域名,都会做很详细的收集。但是对ip段却没做这么细致的收集。今天我就分享下我是怎么收集厂商的ip段的,然后做信息初步探测的。(可能很多人都用的类似方法吧)一、收集厂商的ip段1、首先用的seay的子域名挖掘机或者其他的子域名收集的工具,对子域名进行收集,其实重点不是在收集到的域名,而是域名所对应的ip。

2、爆破完二级域名,就可以右键导出存活网站。

3、然后就是就是去掉域名,留下ip的前三位,去重之后再生成C段。这样就能得到目标的不重复的ip段。脚本我已经写好,贴上脚本。import re
import sys
path=sys.argv[1]
path2=sys.argv[2]
f=open(path)
c_iplist=[]
#f1=open('newip.txt','a')
line=f.readline()
while line:
    line = f.readline()  
    ip=re.findall('(?>>>>>>>>>>>>>>"
            c_iplist.append(ip2)
    except:
        pass
iplist=[]
iplist1=[]
f=open(path2,'a')
for line in c_iplist:
    print line
    ip=re.findall(r'\d+.\d+.\d+.',line)
    iplist.append(ip[0])
for ip in iplist:
    print ip
    if ip not in iplist1:
        iplist1.append(ip)
for ip in iplist1:
    for i in range(1,255):
        print ip
        ip1=ip+str(i)+'\n'
        f.write(ip1)
f.close用法就是,python iplist.py xxx.txt yyy.txt.(前者是你收集的域名和ip的结果的txt,后者是你要生成的ip段的文件名)生成的效果:

二、简单的信息刺探1、这种方法收集的ip网往往很多,拿百度来说我最后收集的ip有2万多个,的确很多的。所以你还需要一个自动化的工具只管去喂ip然后帮你探测目标ip信息的工具。这里可以用nmap或者直接上lijiejie的BBscan。2、如果单独只是扫目录的话,把llijiejie的BBscan改一下,效果更好,先扫描端口,然后识别web服务,然后在上BBscan目录,因为有些web服务不一定是部署在80端口的。3、最好的方法就是对ip先探测一下端口,再识别服务,然后根据不同的服务来做不一样的事情。(其实可以根据这个思路做一个简单的扫描器了,以后再谈)有的童鞋可能会质疑,这样收集的ip误差太大。确实,对于小的厂商的确是这样的。但是对于大的互联网公司,是还是比较准确的,公司越大越好,这样越准确,据我测试就百度而言的准确率达百分之九十。注:搜集ip的好处:1、可能触碰到厂商的边缘应用,或者测试系统,这些系统往往很脆弱2、做扫描的时候有可能躲过一些云waf或者cdn之类的,因为现在的云waf大部分的流程是,用户访问域名,域名先解析到云waf上,然后经过云waf过滤之后,再指向你要访问的真正的ip。所以直接通过ip做扫描,有些时候是能躲过云waf或者cdn的。3、细心地同学还可以看到我脚本里面做了内网ip的过滤,其实这种方法还可能收集到内网ip段,可以用作后续的渗透测试的。



以下是通过这种收集ip的方式发现的厂商一些的漏洞:

WooYun: 百度某系统未授权导致内网数据库服务器沦陷(linux下mysql拿shell)
WooYun: 乐视云多个数据库密码泄露
WooYun: 优酷某站配置不当泄露数据库配置信息已进入后台
WooYun: 联想某重要系统弱口令导致命令执行(泄露众多项目威胁内网)
WooYun: 网龙某关键站点注入

等等

还有些src的就不贴了



附一些厂商的ip段:


http://pan.baidu.com/s/1i5HFJDz