XSS攻击原理
php
xss诱使Web站点执行原本不属于它的代码,而这些代码由攻击者提供、为用户浏览器加载。攻击者利用 这些代码执行来获取信息。从本质上来说,XSS漏洞终究缘由是因为网站的Web应用对用户提交请求参数未作充 分的检查过滤。 例子: 咱们能够给输入框输入:<I><FONT SIZE=7>Java</FONT></I>,若是网站存在安全漏洞的话就会出现显示“Java”,若是将其换成不安全脚本将会产生危害
盗取用户的各种敏感信息,如帐号密码浏览器
读取、篡改、添加、删除企业敏感数据安全
读取企业重要的具备商业价值的服务器
控制受害者机器向其它网站发起攻击cookie
Javascript来对字符进行过滤,将一些如%、< 、>、 [、]、{、}、;、&、+、-、"、(、) 的字符过滤掉。session
使用HTML和URL编码xss
CSRF经过假装来自受信任用户的请求来利用受信任的网站,能够XSS来获取受信任用户tookie来假装为受信任用户。 例子: (1)若果一个论坛网站的发帖使用的是get请求咱们JS把发贴内容拼接成目标URL并访问 http://example.com/bbs/create_post.php?title=我是脑残&content=哈哈,只要你点击了这个连接便会在用你的用户名在论坛发这样一个帖子。为何会用你的用户名发帖呢,这是由于多窗口浏览器问题。 (2)图片连接有获取tookie的js代码,能够获取你的cookie冒充你。 多窗口浏览器问题: 多窗口浏览器永远都只有一个进程,各窗口的会话是通用的,即看新闻的窗口发请求到Blog是会带上我在blog登陆的cookie。
同XSS攻击post
检查访问源的报头,检查refer网站
使用秘密的没法预测的验证符号编码
使用定制的HTTP报头
限制验证cookie的到期时间,时间越短越安全,可是用户越不方便
Web应用程序是使用HTTP协议传输数据,而HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的链接就会关闭,再次交换数据须要创建新的链接。这就意味着服务器没法从链接上跟踪会话。为此引入cookie和session机制。
cookie其实是一小段放在客户端的文本信息,信息按照K——V的形式存放,好比常见的保存用户名、密码方便下次登陆。
session是服务器端使用的一种记录客户端状态的机制,做用是给客户端指定惟一通行证——sessionId,同时保存在“客户档案”中。
当客户端和服务器首次创建链接时,服务器就会给客户端分配惟一通行证——sessionId,同时session也会在本地创建一个客户档案,当下次客户端请求的时候只须要验证sessionId。