首页 > 其他分享 >Swagger API 未授权访问漏洞

Swagger API 未授权访问漏洞

时间:2023-06-01 22:56:28浏览次数:50  
标签:enable 访问 漏洞 API swagger Swagger true

Swagger API 未授权访问漏洞

详细描述

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。相关的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。

Swagger生成的API文档,是直接暴露在相关web路径下的。所有人均可以访问查看。通过这一点即可获取项目上所有的接口信息。那么结合实际业务,例如如果有文件读取相关的接口,可能存在任意文件下载,相关的业务访问可能存在未授权访问等。

参考链接:https://www.sec-in.com/article/476

修复建议

  • 在生产节点禁用Swagger2:
    • 使用注解@Profile({"dev","test"}) 表示在开发或测试环境开启,而在生产关闭。
    • 使用注解@ConditionalOnProperty(name = "swagger.enable", havingValue = "true") 然后在测试配置或者开发配置中 添加 swagger.enable = true 即可开启,生产环境不填则默认关闭Swagger。
    • 在配置文件里添加一个swagger.enable属性,根据不同的application-xx.yml进行动态插入truefalse即可。然后在Swagger配置中进行设置:
    @Value("${swagger.enable}")
    private Boolean enable;
    
    @Bean
    public Docket swaggerPersonApi10() {
        return new Docket(DocumentationType.SWAGGER_2)
                .select()
                .apis(RequestHandlerSelectors.basePackage("org.demo.swagger2.controller"))
                .paths(PathSelectors.any())
            	.enable(enable)
                .build()
                .apiInfo(apiInfo());
    }

标签:enable,访问,漏洞,API,swagger,Swagger,true
From: https://www.cnblogs.com/wsx2019/p/17450482.html

相关文章

  • Mybatis20_MyBatis的相应API4
    一、SqlSession工厂构建器SqlSessionFactoryBuilder常用API:SqlSessionFactorybuild(InputStreaminputStream)通过加载mybatis的核心文件的输入流的形式构建一个SqlSessionFactory对象 其中,Resources工具类,这个类在org.apache.ibatis.io包中(ibatis是mybatis的前身......
  • Swagger 分组配置
     pom文件依赖<properties><springfox-swagger2.version>2.9.2</springfox-swagger2.version><springfox-swagger-ui.version>2.9.2</springfox-swagger-ui.version><knife4j-spring-boot-starter.version>2.0.2&l......
  • 【Vue】的API风格_选项式API和组合式API
    API风格API风格可分选项式API和组合式API。选项是API(OptionsAPI)使用选项式API,可以用包含多个选项的对象来描述组件的逻辑,例如  data、 methods 和  mounted 。选项所定义的属性都会暴露在函数内部的this上,它会指向当前的组件实例。1<script>2exp......
  • Collection集合:常用API
         ......
  • Spring Boot架构中添加Swagger
    基于SpringBoot+Springmvc+mybatis+mybatis-generator代码自动生成架。在上面的文章中我们实行了基本springBoot架构,接下来我们给这个架构添加swagger接口调试:一:添加相应jar包,在pom.xml中添加如下代码:<!--swagger2配置pom开始--><dependency><groupId>io.springfox</groupId>......
  • 吴恩达教授AI课程:LangChain、扩散模型,用ChatGPT API搭建系统
    家人们,吴恩达教授的AI课程时隔一个月终于又更新了!这次一口气直接推出了三门课,主题包括LangChain、扩散模型,以及用ChatGPTAPI搭建系统。依旧是限时免费,除了扩散模型需要一定知识储备之外,另外两门课新手也能听。有网友为了看完这些课程,直接连觉都不睡了。课程内容这三门课的......
  • API接口调用的优势以及获取方式
     API接口调用的优势:简化了系统集成:API接口提供了一种方便、快捷的方式,允许不同的系统之间进行通信和集成,降低了系统集成的难度和复杂度。提供了标准化的接口:API接口通常采用标准化的协议和数据格式,方便不同系统之间进行交换和共享信息。提高了数据安全性:API接口可以......
  • 使用WPF、OwinSelfHost和Swagger创建自托管的Web API
    在本篇博客中,我将介绍如何在WPF应用程序中使用OwinSelfHost和Swagger来创建自托管的WebAPI。我们将使用WPF作为我们的应用程序界面,OwinSelfHost来自托管我们的WebAPI,并使用Swagger来为我们的API生成文档。首先,确保你的计算机上已安装了以下组件:VisualStudio2017.NETFramew......
  • Zapier:1.4亿美金ARR的内容营销之道
    一站式SaaS应用管理平台Pandium在2021年调研过当时市值前15大的SaaS公司,其产品对外的API或扩展数量的中位数已经达到了347个。这些大公司(如上图)几乎都建立了生态或应用商店,力推基于API的开放连接。数量最多的是身份管理SaaS平台Okta,超过7,000个应用跟其产品打通。这也不难解释为......
  • 批量扫漏洞脚本 -- bug_scan(fofa联动nuclei)
    ===================================免责声明请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。0x01工具介绍这是一个结合fofa和......