CHECKMARX安全漏洞检测防止XSS(Cross Site Scripting)跨站脚本攻击
CHECKMARX安全漏洞检测防止XSS跨站脚本攻击
总结CHECKMARX软件安全检测报告高危风险漏洞处理方式
高危警告内容
This can enable a Reflected Cross-Site Scripting (XSS) attack封装工具类如下
public class ESAPIUtil {private static ESAPIUtil instance = new ESAPIUtil();public <T> T encodeForHTML(T t) {// filter xssreturn t;}public <T> T canonicalize(T t) {// filter xssreturn t;}public <T> T encodeForJavaScript(T t) {return t;}public static ESAPIUtil encoder() {return instance;}public static String cleanXSS(String value) {if (value != null) {value = ESAPIUtil.encoder().canonicalize(value);// 避免空字符串value = value.replaceAll("", "");// 避免script 标签Pattern scriptPattern = compile("<script>(.*?)</script>", CASE_INSENSITIVE);value = scriptPattern.matcher(value).replaceAll("");//避免src形式的表达式//scriptPattern = compile("src[\r\n]*=[\r\n]*\\\'(.*?)\\\'", CASE_INSENSITIVE | MULTILINE | DOTALL);//value = scriptPattern.matcher(value).replaceAll("");scriptPattern = compile("src[\r\n]*=[\r\n]*\\\"(.*?)\\\"", CASE_INSENSITIVE | MULTILINE | DOTALL);value = scriptPattern.matcher(value).replaceAll("");// 删除单个的 </script> 标签scriptPattern = compile("</script>", CASE_INSENSITIVE);value = scriptPattern.matcher(value).replaceAll("");// 删除单个的<script ...> 标签scriptPattern = compile("<script(.*?)>", CASE_INSENSITIVE | MULTILINE | DOTALL);value = scriptPattern.matcher(value).replaceAll("");// 避免 eval(...) 形式表达式scriptPattern = compile("eval\\((.*?)\\)", CASE_INSENSITIVE | MULTILINE | DOTALL);value = scriptPattern.matcher(value).replaceAll("");// 避免 expression(...) 表达式scriptPattern = compile("expression\\((.*?)\\)", CASE_INSENSITIVE | MULTILINE | DOTALL);value = scriptPattern.matcher(value).replaceAll("");// 避免 javascript: 表达式scriptPattern = compile("javascript:", CASE_INSENSITIVE);value = scriptPattern.matcher(value).replaceAll("");// 避免 vbscript: 表达式scriptPattern = compile("vbscript:", CASE_INSENSITIVE);value = scriptPattern.matcher(value).replaceAll("");// 避免 onl oad= 表达式scriptPattern = compile("onload(.*?)=", CASE_INSENSITIVE | MULTILINE | DOTALL);value = scriptPattern.matcher(value).replaceAll("");// 避免 onXX= 表达式scriptPattern = compile("on.*(.*?)=", CASE_INSENSITIVE | MULTILINE | DOTALL);value = scriptPattern.matcher(value).replaceAll("");// 避免 html 标签 表达式scriptPattern = compile("<(\\\"[^\\\"]*\\\"|'[^']*'|[^'\\\">])*>", CASE_INSENSITIVE);value = scriptPattern.matcher(value).replaceAll("");}return value;}
CHECKMARX安全漏洞检测防止XSS(Cross Site Scripting)跨站脚本攻击相关推荐
- Cross Site Scripting DOM攻击jQuery append() 的处理方法
做安全红线使用Fortify工具进行扫描时,jquery append会报Cross Site Scripting DOM风险.解决该问题有两种办法. 一.原生dom方式 使用JavaScript原生 ...
- XSS(Cross Site Scripting)攻击简介
环境 Ubuntu 22.04 IntelliJ IDEA 2022.1.3 JDK 17.0.3.1 Spring Boot 3.0.1 Firefox 108.0.2 问题和分析 在Intelli ...
- 【常见Web应用安全问题】---1、Cross Site Scripting
Web应用程序的安全性问题依其存在的形势划分,种类繁多,这里不准备介绍所有的,只介绍常见的一些. 常见Web应用安全问题安全性问题的列表: 1.跨站脚本攻击(CSS or XSS, Cross Si ...
- XSSF - Cross Site Scripting Framework
2019独角兽企业重金招聘Python工程师标准>>> 跨站脚本框架 (XSSF) 是一个设计用来快速发现网站存在XSS漏洞的一个安全工具集. 该项目是为了验证网站存在的XSS漏洞及 ...
- Reflected Cross Site Scripting (XSS)
前言 反射型XSS, 即 Reflected Cross Site Scripting (XSS), 攻击者事先制作好攻击链接, 需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的 页 ...
- DVWA V1.9:Reflected Cross Site Scripting(存储型XSS)
DVWA V1.9:Reflected Cross Site Scripting(存储型XSS) 存储型 XSS 介绍 Low 级别 核心代码 官方提示 漏洞利用 Medium 级别 核心代码 官方提 ...
- Xss-reflected/stored跨站脚本分析(Cross site scripting)
Xss-reflected/stored跨站脚本分析(Cross site scripting) 基础知识 针对Dom - dochtml Url概念:协议+网址/dns+端口+路径 XSS原理:对U ...
- DVWA-Reflected Cross Site Scripting (XSS)
实验环境: DVWA靶机:172.16.12.10 靶场用户名:admin 密码:123 windos攻击机:172.16.12.7 kali攻击机:172.16.12.30 实验步骤: 反射型Xss ...
- xss(Cross Site Scripting)
目录 xss 跨站脚本攻击 原理: 反射型XSS 存储型XSS xss 跨站脚本攻击 原理: 恶意攻击者在web页面中会插入一些恶意的script代码.当用户浏览该页面的时候,那么嵌入到web页面中s ...
最新文章
- 《为iPad而设计:打造畅销App》——大胆创意
- 这24个高频存储问题,你一定要知道!如何不停机,安全更换数据库?大厂都怎么做MySQL到Redis同步的?...
- xml中1字节的UTF-8序列的字节1无效([字符编码]Invalid byte 1 of 1-byte UTF-8 sequence终极解决方案)
- xamarin使用mysql_[开源] .NetCore .NetFramework Xamarin 使用 ORM FreeSql 访问 MySql
- ActionScript 3.0 优化
- 查看代码 index.html,Javascript查看大图功能代码实现
- 如何给Xcode添加我们常用的插件呢?
- TikTok 与 Oracle 的交易将开创两个危险的先例
- 成不了数据分析师,都是这些套路搞的鬼!
- 移动数据通信网络工作原理(SGSNGGSN)
- gf(2 4)有限域的乘法c语言实现,有限域GF(2^n)的C语言实现浅析
- 2015.7.29国内TMT行业融资简报
- 美学设计专家解读小度智能音箱Play设计 天猫精灵被打脸了
- 如何将文件打包到jar包里面
- Xshell6下载与安装
- iOS开发简记(1):指定APP的图标与启动图
- 法大大首批通过ISO 22301:2019认证
- 防火墙策略添加linux,通过iptables设置Linux防火墙INPUT策略
- XMind思维导图教程:思维导图怎么画好看?(一)
- 帮你养好鸡:从农产品到社交产品,认养一窝鸡上线了