Javascript 输入框 xss注入 以及防范
2016-12-02 23:06
183 查看
注入
类似于sql注入,在输入内容上动手脚,然后造成标签闭合的现象,再写入恶意 的js;
例如:<input type="text" value="$var">
输入的内容如果是
" onclick = "javascript_function()" >
在遇到有字符限制的情况下,可以将两个input之间的内容注释掉, 再在之间构建恶意的js
<input type="text" value="" <!-->
...
<input type="text" value="" --> onclick="function eval()" >
还看到MySpace的蠕虫的构建方式, 其中的方法也真是巧妙地避开了所有的限制规则:
比如限制了 javascript,onreadystatechange等等关键字以及 iframe, script,style等等标签;
但是,这并不表明木有漏洞了;
其中, 可以使用拼接字符串的方式,将字符串拼接起来:
<input type="text" value="" style="background:url(expr)" expr="document.getElementById('id').onready"+"statechange">
防范:
采取完全不信任用户输入的心态去对待,前端过滤特殊字符, 类似 ” ’ & * ^ ! 等等;
var reg = /\~|\!|\!|\@|\#|\$|\^|\¥|\%|\…|\&|\*|\(|\)|\—|\+|\{|\}|\“|\”|\《|\》|\?|\?|\<|\>|\'|\"/g; $("#ind_name").val($(this).val().replace(reg, ""));
将输入内容进行编码:
encodeURIComponent
还得防范css的xss, 比如: Img的src属性, 就可以实现将用户的隐私发送到指定地址;
background的url 也可以实现蠕虫攻击(Facebook和微博都发生过)
但主要防范还是要在后端,后端必须过滤输入和输出, 对特殊字符 < > script 等等更是要防范,还有就是对cookie设置
httponly:true
标识符;
相关文章推荐
- 网站安全之XSS漏洞攻击以及防范措施
- JavaScript注入攻击介绍和防范
- 网站安全之XSS漏洞攻击以及防范措施
- JavaScript注入漏洞的原理及防范
- JavaScript注入漏洞的原理及防范(详解)
- 【FastDev4Android框架开发】重写WebView网页加载以及JavaScript注入详解(二十三)
- 网站安全之XSS漏洞攻击以及防范措施
- xss注入和防范的方法
- 【FastDev4Android框架开发】重写WebView网页加载以及JavaScript注入详解(二十三)
- 关于cnodejs中的xss注入防范
- 【FastDev4Android框架开发】重写WebView网页加载以及JavaScript注入详解(二十三)
- XSS中JavaScript加密以及Filter bypass
- 网站安全之XSS漏洞攻击以及防范措施
- 黑客常用的攻击方法以及防范办法 推荐
- JavaScript页面的弹出以及查询结果的返回
- SQL注入以及防注入代码
- Linux 服务器的安全隐患以及防范对策zz
- ***常用的***方法以及防范办法
- 给出一个表达式以及表达式里面所有变量的值。求出这个表达式的值。类似javascript中的Eval().
- javascript实现加载页面全屏以及禁用鼠标右键和选取功能