如何找出网络空间测绘引擎扫描客户端IP

年底了,水一篇文章。目前的网络空间测绘引擎有fofa、shodan、zoomeye、hunter、censys等,这篇文章主要写写如何找出它们的扫描客户端IP与UDP probe数据包。

自己公开

比如 Censys 公开了自己的扫描客户端ip:https://support.censys.io/hc/en-us/articles/360043177092-Opt-Out-of-Data-Collection

第三方平台

网上一些平台也收集了一些:

通过搜索引擎搜索也可以搜索到一些,如shodan扫描器的ip:

回显ip的服务

互联网上有一些服务会输出来访者的ip,那如何找到这类服务呢。

利用公开的扫描客户端IP去它的搜索引擎里去搜索。 如:

而Fofa会将自己的IP给替换成 *.*.*.*,像 “is not allowed to connect to this MySQL server” 。 那是不是可以用 "*.*.*.*"搜索出那些回显IP的服务呢。测试了下并不行,估计是分词搜索的原因。

而zoomeye会把自己的ip替换为xxx.xxx.xxx.xxx,可以使用 “xxx.xxx.xxx.xxx”去搜索。

后面我也注意到,其实fofa跟zoomeye的替换并不全面。fofa没有替换http响应里的ip,像 “Bad Request” && “ip”header=”x-request-ip” 。且对于一些被截取、被编码的ip或其他格式的ip,也不会替换到。

要找到这些回显IP的服务,也可以自己全网扫一遍看哪些服务会回显自己的ip,记录下来。

UDP Probe数据包

对于UDP服务的识别需要发送一个该协议的probe包,在互联网上有一些机器起的是echo服务,就是你发什么它就回复什么。像 base_protocol=”udp” && port=”2425” && banner=”test:PC:32:grab test”“GET / HTTP/1.1” && “Accept: /“ && protocol=”unknown”protocol==”echo” 。区分出这些机器后,再用这些机器ip去搜索可以大概知道各扫描客户端对不同UDP端口发的是什么UDP包。

部署蜜罐

自己部署蜜罐成本大,没弄过。