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

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(document.cookie)</script>, 把这段字符串提交给应用程序页面的参数,监控它的响应,如果字符串按原样出现在响应中,几乎可以确定程序存在xss漏洞。
       许多WEB程序会对用户的输入进行过滤,来避免xss攻击。例如,过滤<script>表达式,对表达式进行编码,这种情况,我们就不使用<script>标签,甚至不使用< >和/这些常被过滤掉的字符,也可以利用xss漏洞。如果应用程序过滤<script>字符串,我们可以尝试下面的语句 ①"><script >alert(document.cookie)</script>   ②"><ScRiPt>alert(document.cookie)</ScRiPt>   ③"%3e%3cscript%3ealert(document.cookie)%3c/script%3e   ④"><scr<script>ipt>alert(document.cookie)</scr</script>ipt>   ⑤%00"><script>alert(document.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(document.cookie)</script><!–
如果程序过滤了script关键字,我们还可以这样 "onfocus="alert(document.cookie)" ;利用onfocus方法嵌入js语句。又如: 页面中包含<script> var a=’hello world’; b=’some’;……</script>, hello world 来自用户的输入,我们可以这样构造输入 ‘; alert(document.cookie); var tem=’  ,这样我们闭合了变量a,加入了一条js语句,最后变量tem保证了语法的正确性,还可以利用//还注释掉后面的语句。服务器有这样的代码:<img src="hello world">, 我们可以这样构造输入javascript:alert{document.cookie}; 如果要实施攻击,可以配合 "onerror="alert(document.cookie)",这样如果图片加载失败,就会执行onerror里面的语句。
本为是由youthflies发表在易踪网(yeetrack.com)上的原创文章,原文地址https://www.yeetrack.com/?p=79

跨站点脚本(xss)解析(一)反射型xss漏洞

 

跨站点脚本(xss)解析(二)保存型xss漏洞

 

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

发表评论

邮箱地址不会被公开。 必填项已用*标注

(Spamcheck Enabled)