dom型xss漏洞修复方式有哪些

1949idc 2年前 (2024-09-13) 阅读数 541 #智能运维

修复dom型xss漏洞的方式有以下几种

1.使用@InitBinder方法

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.WebDataBinder;

import org.springframework.web.bind.annotation.InitBinder;

@Controller

public class BaseController {

@InitBinder

public void webInitBinder(WebDataBinder binder){

binder.registerCustomEditor(String.class, new StringEditor());

}

}

public class StringEditor extends PropertyEditorSupport {

@Override

public void setAsText(String text) throws IllegalArgumentException {

if (StringUtils.isBlank(text)) {

return;

}

try {

//Spring自带html标签转义与反转义

super.setValue(HtmlUtils.htmlEscape(text));

} catch (Exception e) {

throw new IllegalArgumentException(e);

}

}

}

2.使用WebBindingInitializer方法

public class WebBinderInitializerUtils implements WebBindingInitializer{

@Override

public void initBinder(WebDataBinder binder, WebRequest request) {

binder.registerCustomEditor(String.class,new StringEditor());

}

}

public class StringEditor extends PropertyEditorSupport {

@Override

public void setAsText(String text) throws IllegalArgumentException {

if (StringUtils.isBlank(text)) {

return;

}

try {

//Spring自带html标签转义与反转义

super.setValue(HtmlUtils.htmlEscape(text));

} catch (Exception e) {

throw new IllegalArgumentException(e);

}

}

}

3.使用HttpOnly方法

response.setHeader("Set-Cookie", "cookiename=value;

Path=/;Domain=domainvalue;Max-Age=seconds;HTTPOnly");

版权声明

本文内容由互联网用户自发贡献,该文观点仅代表作者本人
本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

© 2010 首途云安 & 厦门硕顿信息技术有限公司 & 闽ICP备11016866号  增值电信业务经营许可证:B1-20203020 地址:福建厦门思明区嘉禾路297号1806
高新技术企业
软件产品证书
计算机软件著作权
ISO认证
国家3A企业