• Swagger ui接口自动化批量漏洞测试


    目录

    Swagger介绍

    postman

    导入Swagger Api

    设置Environment

    代理设置

    批量自动化测试

    结合xray


    Swagger介绍

    Swagger 是一个用于生成、描述和调用 RESTful 接口的 Web 服务。通俗的来讲,Swagger 就是将项目中所有(想要暴露的)接口展现在页面上,并且可以进行接口调用和测试的服务。

    在平时渗透测试的的时候,经常会发现Swagger ui(swagger-ui是将api接口进行可视化展示的工具)接口泄露,如下,在这个页面中暴露了目标站点中所有的接口信息,所以可以对这个接口进行漏洞测试,看是否存在未授权访问、sql注入、文件上传等漏洞。由于接口太多,一个个接口测试的话太费时间,所以出了这篇自动化接口漏洞测试文章

    利用思路:

    • 将Swagger ui中所有的接口导入到postman
    • postman设置代理,将流量转发给burpsuite,方便观察发包情况
    • 对导入的所有api自动运行测试,让postman自动对每个api进行请求
    • burpsuite挂上xray,进行漏洞检测

    postman

    postman是一个api接口自动化测试工具,下载:Download Postman | Get Started for Free

    导入Swagger Api

    1. 访问Swagger ui,箭头中的就是api接口地址,将其复制

    与域名拼接后访问一下,将整个地址复制“https://xx.com/cdy-api-mng/v2/api-docs”

    1. 打开postman

    点击“import”,在Link下填上刚才复制的api地址,点击继续

    然后点击import,进行导入

    导入成功后,可在apis中查看刚才导入的整个Swagger api接口

    设置Environment

    Environment即环境变量,随便点击一个地址过去看一下,这里的baseurl是一个变量,postman对所有api的请求的格式都是“http://ip/详细地址”,http://ip为变量,需要设置值。把鼠标放在baseUrl处,会显示其值,将其地址记住

    点击如下Add,添加“active Environment”

    填写如下,设置变量名为test。其值设置为“https://xx.xx.com/cdy-api-mng/”

    然后选择刚刚设置的环境"test"

    此时再点击就能看到我们设置的环境

    最后可以尝试进行发包测试了

    代理设置

    给postman设置一个代理,代理地址为burp的监听地址。这样burpsuite就能接收来自postman的数据包

    接收到http数据,则说明代理成功

    批量自动化测试

    api接口地址众多,如果一个个接口点击进行测试,效率太过于低下。所以需要批量自动进行测试

    定位到第一行,点击“Test and Automation”

    点击“run”

    继续点击

    postman会自动对所有的api进行发包测试,此时在burpsuite中可以查看到具体的数据包

    结合xray

    为了最大程度实现自动化漏洞挖掘,我们可以同时把流量转发给xray进行漏洞探测。burp配置代理,将流量转发给xray

    xray开启监听,接收来自burp的流量

    开始自动化对所有api接口进行扫描

  • 相关阅读:
    Docker从入门到进阶之进阶操作(3) —— 使用 supermin5来构建镜像
    antv x6 沿边图标循环动画实现
    【Android从零单排系列十】《Android视图控件——RadioButton》
    ESP8266-Arduino编程实例-SHT31温度湿度传感器驱动
    正则表达式匹配双引号
    HTML5实现拖放
    docker离线搭建仓库
    mysql面试题33:Blob和text有什么区别
    linux之ftp服务-1
    深度学习数据集—细胞、微生物、显微图像数据集大合集
  • 原文地址:https://blog.csdn.net/qq_44159028/article/details/127878364