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 ...
随机推荐
- SQL Server 2000 ——DBCC命令
http://blog.163.com/ruifeng_00/blog/static/6904584200971291923462/ 一.定义 微软当初从SYBASE将DBCC是作为数据库一致性检 ...
- Caliburn.Micro对目录结构的要求
Caliburn.Micro对MVVM目录结构的要求判定规则是如下正则表达式: (?<nsbefore>([A-Za-z_]\w*\.)*)(?<subns>ViewModel ...
- 重装Windows系统后,Mysql的恢复
在原地直接恢复MySQL的自动启动的数据库服务,操作如下. (1)环境变量里配置一下Mysql的bin目录 (2)管理员方式启动cmd,运行命令mysqld –install (3)启动Mysql服务 ...
- OpenERP实施记录(13):出库处理
本文是<OpenERP实施记录>系列文章的一部分. 在前面的文章中,业务部门接到沃尔玛3台联想Y400N笔记本电脑的订单,ABC公司立即采购了8台(3台送货+5台备库存)回来,完成了入库和 ...
- MRIcro tutorial -- mricro 教程
MRIcro tutorial 参考网址:http://www.mccauslandcenter.sc.edu/mricro/mricron/ http://www.cabiatl.com/mri ...
- linux有用技巧:使用ntfs-3g挂载ntfs设备
1.几种文件系统的比較 (1)在linux系统中支持一下文件系统: Ext2 第二扩展文件系统(简称 ext2 或者 ext2) 非常多年前就已经成为 GN ...
- java学习笔记8--接口总结
接着前面的学习: java学习笔记7--抽象类与抽象方法 java学习笔记6--类的继承.Object类 java学习笔记5--类的方法 java学习笔记4--对象的初始化与回收 java学习笔记3- ...
- 字符串转成整型(int)
1 题目 Implement atoito convert a string to an integer. Hint: Carefullyconsider all possible input cas ...
- Microsoft Office Word 2007 文档结构图突然变小的解决办法
前记: 一个word文档不知道修改了什么,突然发现文档结构图显示的文字变得非常的小了. 用ctrl+鼠标滚轮只能放大或是缩小行间距,对文字没有什么变化. 解决办法: 1.打开文档结构图 点击视图,勾选 ...
- Android中的一些小技巧
这个是App判断是pad还是手机的代码: public boolean isTabletDevice() { TelephonyManager telephony = (TelephonyManage ...