JARM 是非常有用的指纹识别工具,但可以通过从其他服务重放服务器 hello 来欺骗。
JARM 扫描器是一种非常有效的系统指纹识别工具。它使用来自TLS 握手的 Server Hello 响应来生成签名。然后可以使用这些来查找类似的软件或服务。非常适合查找 C2 或其他实施 TLS 的恶意服务器。因此,shodan.io在其扫描仪中使用这种指纹识别机制也就不足为奇了。
那么问题来了:是否有可能欺骗这些 JARM 签名?让我们来了解一下!
我们知道,扫描 Cobalt Strike 服务器会产生以下签名07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1
Cobalt Strike 博客中揭示了此签名不是 Cobalt Strike 特有的。无论如何,让我们仍然使用它作为起点。
首先,我可以使用资产测绘工具来查找具有匹配哈希的服务器。使用jarmscan对其进行了扫描,并创建了响应的数据包捕获。Wireshark 中的 ssl 握手 (filter:ssl.handshake.type == 1) 过滤器将显示扫描仪发送的所有 TLS 客户端Hello。
反过来,“Cobalt Strike”服务器将返回其服务器Hello。jarmscan将使用它们生成唯一的签名(filter:ssl.handshake.type==2)。
这些 Server Hello 是我们想要重放的数据包。这可以通过设置一个监听特定Client Hello 的 TCP 服务器轻松完成,然后重播从所谓的 Cobalt Strike 服务器捕获的相应Server Hello。一种相当方便但有效的方法。
标签:JARM,Cobalt,签名,Strike,服务器,欺骗,Hello From: https://blog.51cto.com/u_15945480/6033797参考文章:https://www.freebuf.com/articles/web/334298.html