本文来自:gglinux,原文地址:http://blog.csdn.net/gglinux/article/details/45538889,转载请注明
跨站脚本攻击。攻击者向网站恶意添加前端代码(js,html,css都有可能)。当用户浏览时,这段恶意代码得以执行,便可能造成攻击,如盗取用户cookie,破坏页面结构,跳转到其他网站等。
http://www.cnblogs.com/TankXiao/archive/2012/03/21/2337194.html
1.含义:将用户输入的数据通过后端直接输出
2. 实例:get参数,用户输入伪造get参数后,输出参数便可能导致攻击
3. 特点:get参数被伪造
4. 解决方案:1:对get参数进行过滤。如果要输出内容,将其中的“<”,”>”,” ‘ “,”&”,” “ “等转义输出,避免浏览器在输出时解析js代码,造成污染。2:验证get参数,判断是否满足要求
防范方法:1:对输出数据进行过滤,转义”<“,”>”,” ’ “, ” “,”&”等标签。2:设置cookie的值为http only。
php设置方法
header("Set-Cookie: hidden=value; httpOnly");
1:设置cookie标记为http only
2:只允许用户输入我们期望的数据。 例如: 年龄的textbox中,只允许用户输入数字。 而数字之外的字符都过滤掉。
3:对数据进行Html Encode 处理
4:过滤或移除特殊的Html标签, 例如: <script>, <iframe> , < for <, > for >, " for
5:过滤JavaScript 事件的标签。例如 "onclick=", "onfocus" 等等。
http://www.cnblogs.com/dolphinX/p/3403520.html
<img alt="" arc="http://www.qzone.com/list.php?action=delete&id=12"/>
。因为用户已经登录了,session信息已经存在,get请求会被实现。(当然腾讯不会这么笨了) 1. 使用post,不使用get修改信息
2. 验证码,所有表单的提交需要验证码,但是貌似用起来很麻烦,所以一些关键的操作可以
3. 在表单中预先植入一些加密信息,验证请求是此表单发送
https://www.owasp.org/index.php/Clickjacking
1:设置X-Frame-Options,防止页面被frame
设置方法的链接:http://www.css88.com/archives/5141
apache:Header always append X-Frame-Options SAMEORIGIN
nginx:add_header X-Frame-Options SAMEORIGIN;
2:设置代码使其不能被frame,例如
(function () {
if (window != window.top) {
window.top.location.replace(window.location); //或者干别的事情
}
})();
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。