js解决跨站点脚本编制问题
1.前台处理(容易绕过):
<script type="text/javascript">
$(document).ready(function(){
var url=window.location.href; window.location.href=HTMLEnCode(url);
}); function HTMLEnCode(str) {
var s = "";
if (str.length == ) return "";
s = str.replace(/&/g, ">");
s = s.replace(/</g, "");
s = s.replace(/>/g, "");
s = s.replace(/ /g, "");
s = s.replace(/\"/g, "");
s = s.replace(/\'/g, "");
s = s.replace(/\n/g, "");
s = s.replace(/\//g, "");
s = s.replace(/\(/g, "");
s = s.replace(/\)/g, "");
s = s.replace(/\=/g, ""); return s;
} });
</script>
2.后台处理:
/**
* 危险字符过滤方法
* @param str
* @return
* @throws Exception
*/
public static String dangerousCharacterFilter(String str) {
//一种解决SQL盲注的后台过虑,其方式就是将可能出现的非法字符进行规制
//java代码替换特殊字符
//str="^&h\\/!@#$%^&*()+|/jgfj&%fgd''$#$@!)(}|";
if(str!=null){
str = str.replaceAll("(\\|)", "");
str = str.replaceAll("(\\&)", "");
str = str.replaceAll("(\\;)", "");
str = str.replaceAll("(\\$)", "");
str = str.replaceAll("(\\%)", "");
str = str.replaceAll("(\\@)", "");
str = str.replaceAll("(\\')", "");
str = str.replaceAll("(\\\")", "");
str = str.replaceAll("(\\>)", "");
str = str.replaceAll("(\\<)", "");
str = str.replaceAll("(\\))", "");
str = str.replaceAll("(\\()", "");
str = str.replaceAll("(\\+)", "");
//str = str.replaceAll("(\\CR)", ""); //回车符 ASCII 0x0d
//str = str.replaceAll("(\\LF)", ""); //换行 ASCII 0x0a
str = str.replaceAll("(\\,)", "");
str = str.replaceAll("(\\\\)", "");
str = str.replaceAll("(\\#|$)", "");
}
return str;
}
3.添加过滤器(暂时没做)
js解决跨站点脚本编制问题的更多相关文章
- 使用过滤器解决SQL注入和跨站点脚本编制
1 SQL注入.盲注 1.1 SQL注入.盲注概述 Web 应用程序通常在后端使用数据库,以与企业数据仓库交互.查询数据库事实上的标准语言是 SQL(各大数据库供应商都有自己的不同版本).Web 应用 ...
- 跨站点脚本编制-XSS 描述及解决方法
跨站点脚本编制可能是一个危险的安全性问题,在设计安全的基于 Web 的应用程序时应该考虑这一点.本文中,描述了这种问题的本质.它是如何起作用的,并概述了一些推荐的修正策略. 当今的大多数网站都对 We ...
- 跨站点脚本编制实例(AppScan扫描结果)
最近工作要求解决下web的项目的漏洞问题,扫描漏洞是用的AppScan工具,其中有很多是关于跨站点脚本编制问题的.下面就把这块东西分享出来. 原创文章,转载请注明 ------------------ ...
- 跨站点脚本编制 - SpringBoot配置XSS过滤器(基于mica-xss)
1. 简介 XSS,即跨站脚本编制,英文为Cross Site Scripting.为了和CSS区分,命名为XSS. XSS是最普遍的Web应用安全漏洞.这类漏洞能够使得攻击者嵌入恶意脚本代码 ...
- 跨站点脚本编制 - SpringBoot配置XSS过滤器(基于Jsoup)
1. 跨站点脚本编制 风险:可能会窃取或操纵客户会话和 cookie,它们可能用于模仿合法用户,从而使黑客能够以该用户身份查看或变更用户记录以及执行事务. 原因:未对用户输入正确执行危险字符清 ...
- 跨站点脚本攻击XSS
来源:http://www.freebuf.com/articles/web/15188.html 跨站点脚本攻击是一种Web应用程序的攻击,攻击者尝试注入恶意脚本代码到受信任的网站上执行恶意操作.在 ...
- ASP.NET Core中的OWASP Top 10 十大风险-跨站点脚本攻击 (XSS)
不定时更新翻译系列,此系列更新毫无时间规律,文笔菜翻译菜求各位看官老爷们轻喷,如觉得我翻译有问题请挪步原博客地址 本博文翻译自: https://dotnetcoretutorials.com/201 ...
- 【漏洞三】跨站点脚本(XSS)攻击
[漏洞] 跨站点脚本(XSS)攻击 [原因] 跨站点脚本(也称为xss)是一个漏洞,攻击者可以发送恶意代码(通常在(Javascript的形式)给另一个用户.因为浏览器无法知道脚本是否值得信任,所以它 ...
- 网站跨站点脚本,Sql注入等攻击的处理
从360安全论坛里找到的一段代码,经过整理封装,直接在站点Global.asax文件或写一个HttpModule来拦截恶意请求即可: http://bbs.webscan.360.cn/forum.p ...
随机推荐
- ubuntu 包管理详解
http://www.cnblogs.com/forward/archive/2012/01/10/2318483.html
- Coreseek:区段查询及增量索引取代实时索引
1.区段查询 索引系统须要通过主查询来获取所有的文档信息,一种简单的实现是将整个表的数据读入内存,可是这可能导致整个表被锁定并使得其它操作被阻止(比如:在MyISAM格式上的INSERT操作),同一时 ...
- hdu4445 CRAZY TANK 2012金华赛区现场赛D题
简单推下物理公式 对角度枚举 物理公式不会推啊智商捉急啊.... 到现在没想通为什么用下面这个公式就可以包括角度大于90的情况啊... #include<iostream> #inclu ...
- Memcached源码分析——连接状态变化分析(drive_machine)
这篇文章主要介绍Memcached中,基于libevent构造的主线程和worker线程所处理连接的状态互相转换的过程(不涉数据的存取等操作),也就是drive_machine的主要业务逻辑了.状态转 ...
- Selenium2+python自动化70-unittest之跳过用例(skip)
前言 当测试用例写完后,有些模块有改动时候,会影响到部分用例的执行,这个时候我们希望暂时跳过这些用例. 或者前面某个功能运行失败了,后面的几个用例是依赖于这个功能的用例,如果第一步就失败了,后面的用例 ...
- iOS中 imageNamed方法 非常多图片占用大量内存问题
当我们须要载入非常多图片(相冊)的时候我们通常会用[UIimage imageNamed:imageName]; 实际上[UIimage imageNamed:imageName]这种方法在图片使 ...
- Flume目录
1. Flume的安装配置 2. flume和kafka整合(转) 3. Flume NG 配置详解(转) 4. Flume-NG一些注意事项(转) 5. FLume监控文件夹,将数据发送给Kafka ...
- iOS:上线的基本流程
1.创建唯一标书符App ID 首先打开开发者网站,进入证书页面,我们点击Identifiers下边App IDs选项,然后点击右上角加号,如图: 2.申请发布证书 我们点击Certificates下 ...
- FreeBSD与Linux十个本质上的区别
Linux的标志是一只十分可爱的小企鹅,而FreeBSD的标志是一个拿着叉子的小恶魔.你是否经常会听到人们把 Linux及 BSD 系统混为一谈?是的,我有时会经常听到一些新手,甚至于媒体都这么说.当 ...
- 讨论一下TaskManager中监控磁盘性能的一些小问题
今天研究了一下命令"diskperf -Y". 我把发现Share给了同事, 原文写在了下面, 就不翻译了. ^_^ Try this command (CMD or Powe ...