通过Swagger UI进行钓鱼攻击——利用配置错误获取乐趣与赏金
引言
Swagger UI是一款开源工具,可帮助开发者可视化并与OpenAPI规范定义的API端点进行交互。虽然它对于测试和文档编写非常有用,但暴露或配置不当的Swagger实例可能导致严重的安全问题,如DOM XSS、HTML注入和开放重定向。随着漏洞赏金平台对此类漏洞的奖励,保护Swagger UI不仅至关重要,对于道德黑客来说也是一个有价值的目标。
为什么Swagger UI可能很危险
问题不在于Swagger本身,而在于开发者部署它的方式——有时公开部署,有时包含敏感端点,且常常缺乏身份验证和输入清理。
常见问题包括:
- 互联网上暴露的生产环境Swagger UI端点
- 文档缺乏访问控制
- 输入清理不当,允许XSS和HTML注入
侦察阶段——寻找Swagger UI
使用Subfinder收集所有子域名。关键技巧:命令subfinder -d example(.)com —all >> subs.txt
。始终寻找类似grafana.example.com
的子域名,如果找到这样的子域名,那么你就走对路了!