STEWS:WebSocket安全测试与枚举

STEWS 是一个用于 WebSocket 安全测试的工具套件
本研究首次在 OWASP Global AppSec US 2021 上展示
功能
STEWS 提供以下功能:
- 发现:通过测试域名列表来发现 Web 上的 WebSocket 端点
- 指纹识别:确定端点上运行的是哪种 WebSocket 服务器
- 漏洞检测:测试 WebSocket 服务器是否存在已知的 WebSocket 漏洞
本仓库中附带的白皮书提供了所进行研究的更多细节。
附带的幻灯片在 OWASP AppSec US 2021 上展示过。
作为本研究的一部分创建的互补性仓库包括:
安装与使用
STEWS 的每个部分(发现、指纹识别、漏洞检测)都有独立的说明。请参阅各自文件夹中的 README。
WebSocket 发现
请参阅 发现 README
WebSocket 指纹识别
请参阅 指纹识别 README
WebSocket 漏洞检测
请参阅 漏洞检测 README
为什么需要这个工具?
WebSocket 服务器在安全领域很大程度上被忽视了。部分原因在于 WebSocket 端点存在三个尚未明确解决的障碍:
- 发现
- 枚举/指纹识别
- 漏洞检测
STEWS 试图解决这三个问题。由于当前安全测试工具对手动配置的 WebSocket 测试明显缺乏支持,因此需要定制工具:
- 普遍缺乏受支持且可脚本化的 WebSocket 安全测试工具
(例如,NCC 不再维护的 wssip 工具、
nuclei 缺乏 WebSocket 支持、
以及 nmap 缺乏 WebSocket 支持)
- Burp Suite 缺乏对 WebSocket 扩展的支持(例如,请参阅 这个 PortSwigger 论坛帖子 和 这个)。
- 缺乏更深入的 WebSocket 特定安全研究(Awesome WebSocket Security 仓库 列出了已发表的 WebSocket 安全研究)
- WebSocket 在现代 Web 中的广泛使用(从 STEWS 发现工具的结果中可以看出)