Swagger 未授权检测工具

内容分享3小时前发布
0 0 0

介绍

用于探测 Swagger/OpenAPI 文档并尝试未授权访问接口,辅助安全自查。识别 swagger-ui 页面、swagger-resources 入口、Swagger 1.x/V2/V3 文档,在谨慎策略下对接口进行 GET/POST 探测并生成 Excel 报告。

核心特性

  • 多入口与版本解析

    • 识别 openapi.json / swagger.json (V2/V3)、 swagger-resources 、Swagger 1.x 资源列表

    • 可从 swagger-ui HTML 页面中解析真实 API 文档地址( Selenium 渲染)

  • 安全与克制

    • 仅发起 GET / POST 请求,默认忽略破坏性动作

    • 路径命中危险关键字(如 'delete', 'remove', 'destroy', 'drop', 'del', 'erase', 'update', 'modify', 'edit', 'set', 'change', 'upd',

      'mod', 'patch', 'put', 'add', 'create', 'new', 'insert', 'save', 'upload')自动过滤

    • 对 HTML/二进制/非文本进行类型判定并“降噪”保存

  • 报告输出

    • 生成 Excel 报告: 所有API 已调用API 已过滤API

    • 自动调宽与状态配色,高可读

  • 实用开关

    • --force-domain

      强制使用初始域名,忽略文档内 servers

快速开始

# 单目标扫描(自动识别入口类型:swagger-ui / api-docs / swagger-resources)python swagger.py -u https://example.com/swagger-ui/index.html

# 忽略文档内 servers,强制使用初始域名(遇到内网域名或IP直接使用此参数)python swagger.py -u https://example.com/v3/api-docs --force-domain
# 批量扫描(每行一个 URL)# urls.txt:# https://a.com/v3/api-docs# https://b.com/swagger-ui/index.htmlpython swagger.py -f urls.txt

Swagger 未授权检测工具Swagger 未授权检测工具Swagger 未授权检测工具Swagger 未授权检测工具Swagger 未授权检测工具Swagger 未授权检测工具

设计的execl更方便查缺补漏

使用说明

  • 常用参数

    • -u, --url

      :单个目标(支持 swagger-ui、api-docs、swagger-resources)

    • -f, --file

      :批量目标文件(逐行 URL)

    • --force-domain

      :忽略文档内 servers ,强制使用初始域名

  • 请求与参数策略(宁可漏报也不可误删误改)

    • path 参数:用占位值替换路径变量(数字就填充1,字母填充a)

    • query 参数:填充简单占位值

    • body(JSON):按 schema 尝试生成示例

    • 仅尝试 GET POST

    • 自动填充占位参数:

    • 命中高风险关键字的 URL 自动跳过

报告说明

  • 扫描结束生成 YYYYMMDDHHMM_xxx.xlsx

    • 所有API

      :记录发现的所有路径,标注“调用/过滤”

    • 已调用API

      :记录请求方法、URL、参数、状态码、截断后的响应

    • 已过滤API

      :记录被策略拦截的接口与缘由

© 版权声明

相关文章

暂无评论

none
暂无评论...