xss攻击如何修复

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

xss攻击的修复方案:

1.对输入的数据进行HTML转义,使其不会识别为可执行脚本,例如:

String result = HtmlUtils.htmlEscape(source);

2.根据白名单的标签和属性对数据进行过滤,对可执行的脚本进行清除,例如:

<!-- https://mvnrepository.com/artifact/org.jsoup/jsoup -->

<dependency>

    <groupId>org.jsoup</groupId>

    <artifactId>jsoup</artifactId>

    <version>1.13.1</version>

</dependency>

String result = Jsoup.clean(source, Whitelist.basic());

//默认的基础白名单配置

public static Whitelistbasic(){

return new Whitelist()

.addTags(

"a","b","blockquote","br","cite","code","dd","dL","dt","em",

"i","Li","oL","p","pre","q","small","span","strike","strong","sub"

"sup","U","uL")

.addAttributes(tag:"a", ...attributes:"href")

.addAttributes(tag:”bLockquote", ...attributes:"cite")

.addAttributes(tag:"q", ...attritoutes:"cite")

.addProtocols(tag:"a", attribute:"href", ...potocols:"ftp", "http", "https", "mailto")

.addProtocols(tag:"bLockquote", attribute:"cite", ...protocolo:"http", "https")

.addProtocols(tag:"cite",attribute:"cite", ...protocols:"http", "https")

.addEnforcedAttribute(tag:"a",attribute:"rel",value:"nofollow")

;

}

版权声明

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

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