工作来源
NDSS 2025
工作背景
网空搜索引擎已经成为了分析人员最常用的工具之一,但业界对这些网空搜索引擎的运作方式仍一无所知。
工作设计
为了日志便利,某些网络服务会在 Banner 中反带出请求者的 IP 地址。当扫描方的 IP 地址扫描特定服务时,服务会返回一个包含扫描 IP 地址的响应信息。这个响应信息可以被公开检索到,信息中的 IP 地址也就是扫描的 IP 地址。

基于这种方式,研究人员收集了 Shodan、Censys、FOFA 与 ZoomEye 共计 1407 个 IP 地址(FOFA:665、ZoomEye:166、Censys:140、Shodan:91)。

网空搜索引擎也知道此类镜像服务会泄露扫描的 IP,ZoomEye 和 FOFA 用占位符对扫描 IP 进行了替换,但仍然有一些在结果中是可见的。
值得注意的是,不是所有匹配命中的结果都是正确的,有些蜜罐可能会伪造响应。还要进行过滤:① 有效 IPv4 地址,而非私有地址、多播地址、保留地址 ② 扫描 IP 与服务器 IP 应该不相同。
通过对数据的分析运营,除了最初的五种镜像服务,还发现了 74 种新的镜像服务。如 Redis 的非法访客告警、ZXFS FTP 的 Banner 等。

ZoomEye 与 FOFA 大约有七成扫描 IP 都在中国,Shodan 和 Censys 的扫描 IP 位于美国。

工作评估

通过位于东京、新加坡、北京与深圳的 28 个蜜罐,一年内收集了和 Shodan、Censys、FOFA 与 ZoomEye 共 839 个扫描 IP 相关的 740 万次扫描。

由于这些 IP 地址会大量被标记为“扫描”、“恶意”,固定不变的 IP 地址极容易被拉黑。在 AbuseIPDB 中,665 个(47.26%)IP 地址都被打上了标记。FOFA 与 ZoomEye 根本不使用固定的 IP 进行扫描,FOFA 大约每三个月就会轮换整个 IP 池,而 ZoomEye 的 IP 是 ISP 动态分配的。Shodan 和 Censys 的扫描 IP 则相对稳定。
大家最关注的端口服务大体类似,基本上都是最常见互联网端口服务。

扫描引擎不会傻乎乎地只扫描特定端口,往往会采取两种策略:① 扫描临近端口,例如扫描 RDP 时同时覆盖 3388、3389、3390 三个端口;② 回退尝试其他,在某个端口无法识别协议时尝试其他常见协议(所有引擎都会尝试 HTTP 与 HTTPS,FOFA 会尝试 FTP、ZoomEye 会尝试 RDP)。

分类识别了 60 种 TCP 探测与 67 种 UDP 探测,覆盖 94.8% 的数据包。

每个引擎有自己的侧重点,Shodan 更关注 HTTP 协议、FOFA 更关注 FTP 协议、ZoomEye 更关注 RDP 协议。


网空扫描缺乏透明度:① FOFA 与 ZoomEye 对外不提供扫描 IP 的 WHOIS 与 rDNS 信息 ② 只有 Censys 提供了退出选项 ③ FOFA 建议想要退出扫描的人“不要把设备放到互联网上” ④ Censys 连自己声明的最佳实践都没有做到。
网空扫描缺乏无害性:① ZoomEye 会发送畸形 HTTP 请求 ② 探测未授权访问(获取 redis 所有 key、获取 ES 所有索引等)③ 除了 Censys 都在使用 rdp-ntlm-info 中 CVSS 评分为 9.8 的漏洞。
网空扫描缺乏匿名性:① Shodan 列出了 69543 个 Redis 的 key,并且付费提供超过全球九十万个摄像头的快照和 RDP 截图 ② Censys 泄露了 230 个 LDAP 用户的信息 ③ Shodan 与 FOFA 列出了 14.5 万个 ES 数据库索引、17.8 万个 MongoDB 索引。
工作思考
负责任地对外披露对彼此都是一件大好事,研究人员也发现了对扫描进行仿冒和伪造的行为,无法区分正用 IP 和废弃 IP 不也是与对外披露不透明相关的吗?
声明:本文来自威胁棱镜,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。