• 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接口进行扫描

  • 相关阅读:
    2.3 为何使用Pthreads
    vue属性data的处理规则
    rae众筹首个新目标,Tinkering开发板来了~
    Tuxera NTFS 2022 for Mac破解版百度网盘免费下载安装激活教程
    iOS UIKit
    ESPRIT 2019初学到走心机编程视频教程
    Vue3 - Pinia 模块化(详细教程)
    postgresql用户和角色
    一次不规范HTTP请求引发的nginx响应400问题分析与解决
    P02 Look And Feel
  • 原文地址:https://blog.csdn.net/qq_44159028/article/details/127878364