Swagger接口未授权访问漏洞

参考博客 https://blog.csdn.net/J_com/article/details/129197536

通过下面链接可以获取到接口信息

http://ip:port/router/v2/api-docs
http://ip:port/v2/api-docs
http://ip:port/swagger-ui.html#/

处理办法,加上enable(false)或者将SwaggerConfig给注释掉,弊端就是你自己也访问不了接口文档

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    
	@Bean
	public Docket createRestApi() {
		return new Docket(DocumentationType.SWAGGER_2)
			.apiInfo(apiInfo())
			.enable(false)   //加上这个
			.select()
			.apis(RequestHandlerSelectors.basePackage("com.lanren312.controller"))
			.paths(PathSelectors.any())
			.build();
	}
}

Swagger是一个很流行的API文档工具,许多开发者利用Swagger来提供RESTful API文档。Swagger UI是Swagger的一个插件,能够让开发者更方便地浏览和测试API。但是,由于使用Swagger暴露出来的API文档具有公开性,一些黑客或者攻击者可以利用Swagger API授权访问漏洞进行攻击。 Swagger API授权访问漏洞是指没有正确配置Swagger UI的安全措施,导致它可以被公开访问。攻击者可以通过访问Swagger UI获取API的信息,包括API的URL、参数、数据格式等。同时,攻击者也可以使用Swagger UI的测试功能来向API发送请求,并获取API的响应。攻击者甚至可以通过Swagger UI的自动化测试功能来模拟大规模的恶意请求,从而对API进行拒绝服务攻击(DoS攻击)。 要避免Swagger API授权访问漏洞,我们需要采取一些安全措施。首先,禁止公开Swagger UI,不能让任何人都能够访问Swagger UI。其次,启用Swagger的安全认证措施,例如使用OAuth2授权协议,设置访问令牌等。此外,也可以对Swagger UI进行定制,例如限制测试哪些API、是否允许发送恶意请求等。 最后,我们必须意识到,安全是一个持续不断的过程,而不是一次性的工作。我们需要定期检查配置和安全策略,以确保系统的安全性。同时,还需要更新Swagger版本和库,及时修复漏洞和错误,从而保证API系统的稳定和安全。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值