工作小总结

【系统安全】appscan扫出API成批分配问题解决方案

问题截图:原因APPScan10.0.7新增的扫描功能HCLAppScan®Enterprise中的新增功能(hcltechsw.com),增加了批量分配API的规则,导致以前系统没扫出来的问题,现在也被扫了出来。漏洞条件:1、接口类型为application/json,参数传值、form表单等类型暂未受影响。2、请求json参数不是接收参数的javabean及其父类中的任意属性。3、接口HTTP

问题截图:

0701510ac786c77ede62cdff95cf144e.png

原因

APPScan 10.0.7新增的扫描功能 HCL AppScan® Enterprise 中的新增功能 (hcltechsw.com),增加了批量分配API的规则,导致以前系统没扫出来的问题,现在也被扫了出来。

12005ddb0bc38b4ceb7a426101edba40.png

漏洞条件:

1、接口类型为application/json ,参数传值、form表单等类型暂未受影响。

2、请求json参数不是接收参数的javabean及其父类中的任意属性。

3、接口HTTP状态码为200


#javabean
@Data
public class BaseEntity{
	public String tenantId;
}
@Data
public class Car extends BaseEntity{
	public String color;
	public String company;
	public String seats;
}

#controller
@PostMapping(value = "/query")
public BaseResponse query(@RequestBody Car car){
	xxxxxx;
}

#前端请求

请求 URL: http://localhost/cars/query
请求方法: POST
HTTP状态码:200
playload:{"color":"red","company":"ltl","seats":"2-2"} #正常请求
playload:{"color":"red","company":"ltl"} 		      #正常请求
playload:{"color":"red","power":"gas"} 	               #appscan构造的请求,power属性在Car及其父类中不存在,触发API成批分配规则

综上:此漏洞会影响目前所有的json请求接口且最近大面积扫出来是因为appscan升级所致。

解决方案:

1、自建项目修复方案一:增加反序列化配置方案

#1、在项目的统一序列化配置中开启严格匹配模式(?如有),此处以jackson为例
import com.fasterxml.jackson.databind.DeserializationFeature;
impor

原创不易,完成人机校验,阅读全文

相关推荐