让真实IP无处可藏。


0x0起源。

作为一个小菜鸡 如果碰到一些CDN防护啊,肯定是懵逼的,也懒得绕过,但是有些CDN特别恶心,想着扫全网速度太慢不精准, 这里推荐一个网站 获取别人已经扫描好的 80端口 :
https://scans.io/study/sonar.http 据说是采用nmap 扫描,大家都知nmap 的误报相对较低。
开始吧 先下载大概十几个G吧。网上也有很多类似相似的文章,大家可以多看看。


0x1请开始你的表演。

首先下载最新的80json数据 17个G,里面包含一下内容,我们需要的只是一个ip,于是上我大python。
1.png

2.png

几行代码搞定!
然后时间过去N久 出来结果!

3.png

问题来了 如果我们扫描全部ip的话有点太占资源,我们只需要吧 中国 的开放80端口的挑选出来即可。
上python

#!/usr/bin/env python
# coding: utf-8
# author: frk
import sys
import managethread
reload(sys)
sys.setdefaultencoding("utf-8")
import os
from ipip import IP

def file_w(n,t):
    print t + n
    with open(n, "a") as mon:
        mon.write(t)
        mon.close()

def ipfuckyou(ip_x,lock):
    IP.load(os.path.abspath("ip.dat"))
    ip = IP.find(ip_x)
    lock.acquire()
    ipips = ip.encode("utf-8")
    name = ipips.split('    ')[0]
    names = 'IP_address/'
    names += name
    names += '.txt'
    file_w(names, ip_x)
    lock.release()

if __name__ == '__main__':
    file = open("80_ip.txt")
    ipipip = []
    while 1:
        lines = file.readlines(100000)
        if not lines:
            break
        for line in lines:
            ipipip.append(line)
    file.close()
    mth = managethread.ManageThread(ipfuckyou, ipipip, 200)
    result = mth.start()

ip识别是调用的 ipip.net 识别 应该比较精准。
然后又过了N久

5.png

这么多!!!其实可以干很多很多事情,这里不再说明,找到中国

6.png

然后安装zgrab安装好 具体不细说。
确定zgrab可用之后
cd $GOPATH/src/github.com/zmap/zgrab
然后把 中国的80ip段移动过去。
老套路编辑

vi http-req
cat cn-80.txt | ./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=test.txt

7.png

cat test.txt |grep -E "你的关键字!" >1234.txt 去重
sed -e '/ChinaCache/d' 1234.txt  cn.target 去除cdn 
cat cn.target 

0x2结尾。

思路很简单,也有人发过,也不多说这里只是发一个小的技巧。不喜勿喷。只是个人喜欢简单暴力。