MS10-070 ASP.NET Padding Oracle信息泄露漏洞项目测试
MS10-070 ASP.NET Padding Oracle信息泄露漏洞
1 漏洞描述:
ASP.NET由于加密填充验证过程中处理错误不当,导致存在一个信息披露漏洞。成功利用此漏洞的攻击者可以读取服务器加密的数据,例如视图状态。 此漏洞还可以用于数据篡改,如果成功利用,可用于解密和篡改服务器加密的数据。 虽然攻击者无法利用此漏洞来执行代码或直接提升他们的用户权限,但此漏洞可用于产生信息,这些信息可用于试图进一步危及受影响系统的安全。
2 漏洞标识符:
Bugtraq ID: 43316
CVE: CVE-2010-3332
3 受影响系统
Microsoft .NET Framework 4.0
Microsoft .NET Framework 3.5 SP1
Microsoft .NET Framework 3.5
Microsoft .NET Framework 2.0 SP2
Microsoft .NET Framework 1.0 SP3
4 漏洞解决办法:
4.1 临时解决办法:
* 启用ASP.NET自定义错误并将所有的错误代码都映射到相同的出错页面。
* 创建包含有通用出错消息的error.html文件并保存到根目录。
4.2 微软补丁:
微软已经为此发布了一个安全公告(MS10-070)以及相应补丁:
http://www.microsoft.com/technet ... 10-070.mspx?pf=true
信息收集
目标:www.XXX.biz
Ip:180.23x.6x.21x
环境:用扫描工具发现 是个 iis7.5 表示解析漏洞byebye了,整个网站后缀是SHTML,查看源码得知是ASPX 网站,猜想权限应该很大!
思路:1、SQL注入 放弃(有可能存在POST 注入 但是我不会,)
2、找上传地址 查看源码发现有kindeditor的路径(但是后面发现用的是FCK)
3、找后台尝试弱口令 表示没有成功
4、旁站 旁站都是用的同一个程序,放弃!
漏洞扫描
直接上WVS 扫一个高危漏洞没有,今天的主角
这个漏洞利用的最关键的一点就是寻找WebResource.axd,说实话这个看人品的,有时候很好找,右击查看源码在查找一下就可以找到,但有时候你怎么找都找不到,在这里我分享一下我找 WebResource.axd的经验。
1、 一般我查看首页的源码,能有话 你赶快去买彩票,这么好的事都能有,不合理啊!!!
2、 查看后台源码,或者会员登录的网页,查看源码或许有惊喜哦!
3、 上面2个方法都找不到,只能靠工具了,WVS对网站做一个深度全方位的扫描,或许可以找到这个文件的位置,扫描结果中的文件列表显示栏也是可以直接看到WebResource.axd和它的参数和值的,如下:
看到
<script src="/WebResource.axd?d=VXKB3fkqegYIJXaI5b_q_A2&t=633802945995006876" type="text/javascript"></script>
我们要找的就是参数d的值,如果在源码中看到有其他的参数,不需要理会。复制&前面的一串WebResource.axd?d=VXKB3fkqegYIJXaI5b_q_A2
第二个高危漏洞我们可以忽视它,这个网站目录做的很死,属于误报,压根不存在列目录。
漏洞利用
下载 padBuster.pl Webconfig Bruter.pl(注意把Webconfig Bruter.pl 中间的空格去掉不然你死也不会成功)
padBuster.pl.txt (29.43 KB, 下载次数: 10)
Webconfig Bruter.pl.txt (4.18 KB, 下载次数: 9)
找到WebResource.axd参数的值之后,就可以开始利用了。
安装好perl环境,执行:
perl.exe e:\padBuster.pl http://www.xxxx.biz/cms/WebResource.axd?d=aLjVFOUQacvgdyNFUithWQ2 aLjVFOUQacvgdyNFUithWQ2 8 -encoding 3 -plaintext "|||~/web.config"
参数说明:
这里的16为每个数据块的字节数,分为8和16,目前还没有什么好的方法判断这个字节数,所以需要大家可以两种都试一下(大多数为16)。
encoding参数有4种,分别是0=Base64, 1=Lower HEX, 2=Upper HEX 3=.NET UrlToken, 4=WebSafe Base64,由于本次测试为asp.net,所以这里我们选择3。
plaintext为想读取内容的文件,本次测试以web.config为例
这里是让我们选择一个相应模式,并且**表示程序推荐的,那么这里就选择程序推荐的2号模式,等几分钟,(有些人或许只出现1没有出现有**的2,这样的话把第一个参数16改成8试试,或者8改成16)
到这里,就拿到了web.config的URL的加密地址。
下面就该上Webconfig Bruter.pl获取完整的访问地址了
执行:
perl.exe e:\Webconfig_Bruter.pl http://www.xxx.biz/ScriptResource.axd p_klglqaE5B_ouCiPQTQYgAAAAAAAAAA0 8
还记得前面说的Webconfig Bruter.pl 要去掉空格吗? 不去空格就一直报错!!!!!!
等几分钟,就得到了最终的加密字符串:
OK,记好这个加密字符串,使用浏览器访问
http://www.xxx.biz/ScriptResourc ... KI9BNBiAAAAAAAAAAA1
成功了,如预想的一样权限SA 可惜是内网,到这里我就没办法继续了
如果是外网服务器 直接3389连接就OK 了 不用我多说了吧
MS10-070 ASP.NET Padding Oracle信息泄露漏洞项目测试的更多相关文章
- [实战]ASP.NET Padding Oracle信息泄露漏洞
前言 这个漏洞是很多年前的了,刚好碰到网站有这个漏洞,利用一下也记录一下.具体原理请搜索学习,反正我不会. 推荐看这里,写得很清楚:http://www.91ri.org/6715.html 工具 p ...
- WordPress Backdoor未授权访问漏洞和信息泄露漏洞
漏洞名称: WordPress Backdoor未授权访问漏洞和信息泄露漏洞 CNNVD编号: CNNVD-201312-497 发布时间: 2013-12-27 更新时间: 2013-12-27 危 ...
- Linux kernel 内存泄露本地信息泄露漏洞
漏洞名称: Linux kernel 内存泄露本地信息泄露漏洞 CNNVD编号: CNNVD-201311-467 发布时间: 2013-12-06 更新时间: 2013-12-06 危害等级: ...
- Linux Kernel ‘/net/socket.c’本地信息泄露漏洞
漏洞名称: Linux Kernel ‘/net/socket.c’本地信息泄露漏洞 CNNVD编号: CNNVD-201312-037 发布时间: 2013-12-04 更新时间: 2013-12- ...
- Linux Kernel ‘mp_get_count()’函数本地信息泄露漏洞
漏洞名称: Linux Kernel ‘mp_get_count()’函数本地信息泄露漏洞 CNNVD编号: CNNVD-201311-054 发布时间: 2013-11-06 更新时间: 2013- ...
- Linux Kernel ‘/bcm/Bcmchar.c’本地信息泄露漏洞
漏洞名称: Linux Kernel ‘/bcm/Bcmchar.c’本地信息泄露漏洞 CNNVD编号: CNNVD-201311-053 发布时间: 2013-11-06 更新时间: 2013-11 ...
- PuTTY 信息泄露漏洞
漏洞名称: PuTTY 信息泄露漏洞 CNNVD编号: CNNVD-201308-380 发布时间: 2013-08-27 更新时间: 2013-08-27 危害等级: 低危 漏洞类型: 信息泄露 ...
- Linux kernel ‘key_notify_policy_flush’函数信息泄露漏洞
漏洞名称: Linux kernel ‘key_notify_policy_flush’函数信息泄露漏洞 CNNVD编号: CNNVD-201307-072 发布时间: 2013-07-05 更新时间 ...
- Linux kernel ‘net/key/af_key.c’信息泄露漏洞
漏洞名称: Linux kernel ‘net/key/af_key.c’信息泄露漏洞 CNNVD编号: CNNVD-201307-071 发布时间: 2013-07-05 更新时间: 2013-07 ...
随机推荐
- redis数据类型(四)list类型
一.list类型 list是一个链表结构,可以理解为一个每个子元素都是 string 类型的双向链表. 主要功能是push.pop.获取一个范围的所有值等. 操作中key理解为链表的名字. 二.Lis ...
- 10种jquery选择器操作详解(转)
jquery选择器大体上可分为4 类: 1.基本选择器2.层次选择器3.过滤选择器4.表单选择器 其中过滤选择器可以分为:1.简单过滤选择器2.内容过滤选择器3.可见性过滤选择器4.属性过滤选择器5. ...
- vue 获取数据联动下拉框select ,并解决报Duplicate value found in v-for="...": "". Use track-by="$index" 错误
公司项目中遇到一个问题,联动下拉框,并且数据是使用vue-resource从后台获取的,格式不利于输出联动下拉框,联动下拉框是第一个下拉框输出一个数组里每一项json的一个text值,从而第二下拉框输 ...
- IOS折线图
做项目要统计商品的销售情况,美工那边给了效果图,自己就按照效果图自定义了一个ScrollView.整体效果不错,在做的过程中遇到的问题也记录一下. 现在这个还有许多优化的地方: 1.一个表中只能画一个 ...
- Form身份验证
Forms身份验证Web.config<system.web><authentication mode="Forms"> <fo ...
- 理解B+树算法和Innodb索引
一.innodb存储引擎索引概述: innodb存储引擎支持两种常见的索引:B+树索引和哈希索引. innodb支持哈希索引是自适应的,innodb会根据表的使用情况自动生成哈希索引. B+树索引就是 ...
- Mac PHPStorm快捷键总结
全局搜索(command + shift + F) 显示类中的方法 (command + 7) 函数追踪 (command +鼠标点击) 单行注释/取消(command + /) 输入行号跳到某一行( ...
- PHP 经典算法
<? //-------------------- // 基本数据结构算法 //-------------------- //二分查找(数组里查找某个元素) function bin_s ...
- 判断有几个checkbox被选中
//判断是否有选中的checkbox的值是否为空 var number = $("input[type='checkbox']:checked").length; if(numbe ...
- 纯CSS实现3D照片墙
HTML部分: <body> <div class="photo-wrap"> <!-- 舞台 --> <div class=" ...