随着各家CDN遍地开花,什么网站都挂上CDN,高效的找源站也就成为了麻烦事,Zgrab算是解决这一问题的利器了。本来Zgrab叫banner-grab,是Zmap的一个组件,后来独立出来:
Zgrab的Github:
https://github.com/zmap/zgrab
安装 zmap:
yuminstall zmap git wget
安装go:
wget https://storage.googleapis.com/golang/go1.8.1.linux-amd64.tar.gztar -C /usr/ local-xzf go1.8.1.linux-amd64.tar.gz exportPATH= $PATH:/usr/ local/go/bin exportGOPATH=/usr/ local/go/bin/
安装Zgrab:
goget github.com/zmap/zgrabcd $GOPATH/src/github.com/zmap/zgrabgo build
Zgrab配和Zmap在200M带宽的机器上扫遍国区所有80端口大概是4小时以内(I7+16G+240G SSD RAID 0),网速和硬盘性能比较影响最终速度。至于扫全球的请准备好1T以上的SSD。需要注意的是一般的VPS都不会允许你扫,还有某个德国的运营商每次一扫就会投诉。
以抓取www.abc.com为例子:
cd$GOPATH/src/github.com/zmap/zgrab
修改http请求头:
vihttp-req
格式一般为:
GET / HTTP/1.1
Host: www.abc.com
(空行)
可以参考RFC 2616:
https://tools.ietf.org/html/rfc2616
如果要抓取具体页面,比如
www.abc.com/abc/
GET /abc/ HTTP/1.1
Host: www.abc.com
(空行)
下载目标地区的ip地址列表:(国区为例)
wget http:/ /www.ipdeny.com/ipblocks/data/countries/cn.zone
Zmap扫描开放的80口:
zmap-wcn.zone-p80 -B200 M-ocn.80
(-i 指定interface -B 速度)
扫全球的话:
wgethttp://www.ipdeny.com/ipblocks/data/countries/all-zones.tar.gztar zxvf all-zones.tar.gzcat *.zone| zmap -p 80-B 200M-o world. 80
扫完的80端口保留在-o的输出文件中,然后我们用Zgrab批量抓:
catcn. 80| ./zgrab --port 80-http-user-agent= "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36"-timeout= 30-senders= 2000-data= "./http-req"--output-file=cnresult.txt
一般200M的网速sender可以在2K-3K 供参考,实际速度取决于网络质量、硬盘I/O 。
对于443的https:(当然zmap要抓443)
catcn. 443| ./zgrab --port 443--tls -http-user-agent= "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36"-timeout= 30-senders= 2000-data= "./http-req"--output-file=cnresult.txt
扫完以后筛选
随便找个特别的关键字:
catcnresult.txt |grep -E "关键词"cnpr.txt
去掉阿里云高防ip,CF代理ip:
sed -e'/aliyungf/d'cnpr.txt cn.targetsed -e'/cfduid/d'cnpr.txt cn.target
转载请注明:商兜网 » 主机域名 » 域名查找ip(域名查找网站)
版权声明
本文仅代表作者观点,不代表B5编程立场。
本文系作者授权发表,未经许可,不得转载。