【解决问题】在SpringBoot中通过配置Swagger权限解决Swagger未授权访问漏洞

这篇具有很好参考价值的文章主要介绍了【解决问题】在SpringBoot中通过配置Swagger权限解决Swagger未授权访问漏洞。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

漏洞说明

Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。其中,Swagger-UI会根据开发人员在代码中的设置来自动生成API说明文档。若存在相关的配置缺陷,攻击者可以在未授权的状态下,翻查Swagger接口文档,得到系统功能API接口的详细参数,再构造参数发包,通过回显获取系统大量的敏感信息。
在一个项目的实施过程中,客户通过安全检测发现了系统中swagger未进行授权导致调取到了项目上全部的api接口,并在接口中找到了默认的超级用户和密码,并通过修改超级用户密码成功登录到业务系统。从影响范围来看,属于高危漏洞。

漏洞解决方法

方法一:通过application.yml配置,开启页面访问限制。

如果系统用spingboot作为框架,可以通过application.yml配置Swagger,开启页面访问限制。以下为配置的代码。

swagger:
  production: false
  basic:
    enable: true
    username: swaggerAuthorizedAdminUser   #替换成生产环境的实际用户名
    password: adfaeYUps&@sdf_23134         #替换成生产环境的实际用户名

方法二:通过SwaggerConfig类配置,开启可访问环境限制

@Configuration
@EnableSwagger2
@Profile({"dev"})
public class SwaggerConfig implements WebMvcConfigurer {
	# 此处省略不涉及漏洞修复的代码
}

以上2个方法选择其一,修改完成后,重启业务系统。

漏洞预防

排查接口是否存在账号和密码等敏感信息泄露。排查方法推荐以下文章。
链接: Swagger未授权访问漏洞文章来源地址https://www.toymoban.com/news/detail-781194.html

到了这里,关于【解决问题】在SpringBoot中通过配置Swagger权限解决Swagger未授权访问漏洞的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • SpringBoot项目配置Swagger

    根据在代码中使用自定义的注解来生成接口文档,这样做的好处是 在开发接口时可以通过swagger 将接口文档定义好提供给前端查询具体参数信息,同时也方便以后的维护。 当前项目配置好以后的Swagger原型: 2.4.1、配置跨域 2.4.2、Swagger自定义配置 2.4.3、Swagger API文档相关配置

    2023年04月20日
    浏览(22)
  • 权限管理详解:认证、授权及Spring Security配置解析

    深入探讨权限管理的重要性与实现方式,包括认证、授权概念,基于角色和资源的访问控制方案,以及Spring Security框架的概述和快速入门指南。

    2023年04月10日
    浏览(31)
  • 解决uniapp手机端获取用户设备是否授权,进行授权提示,获取用户相机授权(Android 权限清单整理)

    最近在上架app时遇到了一些授权询问的问题,在这里简单记录一下,主要使用的是uniapp进行开发,在官网中有说明使用uni.authorize()进行授权请求,但是该方法不支持h5和app,所以采用plus.android.requestPermissions()方法进行授权判断操作,话不多说直接上代码 以下代码进行的

    2024年02月05日
    浏览(41)
  • SpringBoot使用Swagger配置API接口文档

    Swagger是一个用于设计、构建和文档化 RESTful API 的开源框架。它提供了一组工具,使得开发人员能够更轻松地定义、描述和测试API接口。 具体来说,Swagger包含以下几个核心组件: Swagger规范(Swagger Specification): 定义了一种格式化的API规范,使用YAML或JSON格式,用于描述API的各

    2024年02月05日
    浏览(38)
  • VMWare 使用 Ventory 引导系统,解决权限不足、打不开磁盘、启动项配置问题

    使用 Ventory 引导的 U 盘镜像,若要在 VMWare 的虚拟机中使用,需要将整个物理 U 盘添加为虚拟机的硬盘 参考教程:https://blog.csdn.net/q1246192888/article/details/120496480 新版 VMWare 中的 BIOS 配置看 第2点 参考文章:https://www.yydnas.cn/2023/03/2023.03.29-%E8%A7%A3%E5%86%B3VMware%E6%8F%90%E7%A4%BA%EF%BC%9

    2024年02月08日
    浏览(115)
  • springboot,swagger多个mapper包,多个controller加载问题

    swagger配置类添加

    2024年02月13日
    浏览(29)
  • springboot配置swagger3-springfox实现

    springfox 之前配置需要声明多个依赖,到了 3 直接声明一个 starter 就行了. springboot 版本 2.7.7 springfox-boot-starter 版本 3.0.0 声明依赖 声明yml配置 bean配置

    2024年02月12日
    浏览(24)
  • 关于Springboot集成swagger2出现的swagger-resouces和ui请求的404问题

    本项目集成的是增强版的Swagger文档,使用的增强版的UI com.github.xiaoymin 按照上面的配置,在本地测试效果是正常的 在红色标记的地方是正常显示的,但是按照这个配置打war包部署到服务器或者本地的tomcat中就会出现404的现象。 出现上面的这种情况时,看过很多网上的帖子说

    2024年04月17日
    浏览(23)
  • Springboot配置Swagger展示API文档并进行接口测试(doc.html、swagger-ui.html)

    三、创建一个测试接口 http://localhost:8080/doc.html http://localhost:8080/swagger-ui.html

    2024年02月10日
    浏览(29)
  • springboot2.7以上版本配置swagger3.0.0版本浏览器无法打开swagger-ui

    1.最实用解决方式:将pom里的swagger依赖降到2.9.0即可 过低无法启动项目 1.2 Springboot2.6以后将SpringMVC 默认路径匹配策略从AntPathMatcher 更改为PathPatternParser Springfox 使用的路径匹配是基于AntPathMatcher的,而Spring Boot 2.6.X使用的是PathPatternMatcher 2.3.0.0版本swagger2访问地址为:http://loca

    2024年02月11日
    浏览(23)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包