首页
论坛
课程
招聘
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝

[原创]CVE-2014-1761分析笔记

2014-9-16 22:29 4650

[原创]CVE-2014-1761分析笔记

2014-9-16 22:29
4650
小弟第一次尝试独力分析漏洞,贡献小菜文一篇,水平有限,如有谬误,恳请各位大大批评指正。

附件包括:cve-2014-1761分析笔记(含格式转换小程序),
               调试用poc,
               相关外文两篇及翻译,
               RTF格式官方文档

[看雪官方培训]《安卓高级研修班(网课)》9月班开始招生!顶尖技术、挑战极限、工资翻倍!

上传的附件:
最新回复 (40)
雪    币: 4
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
追梦zhuimeng 活跃值 2014-9-16 23:09
2
0
谢谢分享,分析的不错,继续加油哈!
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-17 08:08
3
0
谢谢追梦兄的鼓励,小弟一定继续努力,希望有机会多多交流哈!
雪    币: 132
活跃值: 活跃值 (10)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
fatecaster 活跃值 1 2014-9-17 08:35
4
0
学习,我也刚开始学这个,晚上忙完就看看这么弄的。
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-17 09:05
5
0
一起加油,我也是自己摸索,文章写得水平一般,有机会多多交流O(∩_∩)O~
雪    币: 16
活跃值: 活跃值 (10)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
hai海豚 活跃值 2014-9-17 10:42
6
0
感谢楼主的分享~~顺便膜拜一下poc的作者....

我有幸也分析过这个poc,有几个有意思的地方不知楼主有没有注意,共同讨论一下:
1、首先楼主有没有分析为什么要用25这个数字,如果是单纯的溢出的话其它数字也是可以的。但是改为其它数字之后申请的堆空间将不会在虚表附近。
2、listoverridecount所在leveltext之前有正好有25个leveltext,然而当中的结构很“混乱”,不知是不是老外说的混淆。
3、这个poc的“{”和"}"数量不不一致....
以上这两点我只跟了个皮毛,能力和体力有限没再细跟,希望楼主有精力看看。然后作者的rop链写的也很牛X

再次感谢楼主的慷慨大方。
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-17 11:09
7
0
谢谢海豚兄的问题,这几个问题应该都与RTF格式有关,小弟惭愧,对RTF格式的理解连皮毛都算不上,所以文章里只是满足于走通了整个触发利用过程~~~

第一个,在相关文章[1]中好像提到,listoverridecount参数的合法值应该是0,1,9吧,当时看到poc中设置为25确实疑惑了一下,不过因为当时连整个过程都没走通,所以就暂时放下了~

第二个和第三个,说实话真的没有注意到~汗颜汗颜~~~~当时只是找到疑似ShellCode的地方就满足了,附近的结构也只是关注了下leveloverridecount的参数, lfolevel控制字的个数以及levelold等影响伪造虚函数表的关键字及其参数~

poc构造的rop链我倒是完整跟下来了,确实是膜拜啊Orz 具体的一些程序流转换实在是构思巧妙,作为安全菜鸟,能做的就是向大神学习,努力追赶吧~

关于这个漏洞,其实小弟有一些后续的想法,分析下来发现poc利用rop链确实实现了过DEP的目的,也充分利用了MSCOMCTL没有启用ASLR的特点,但是缺点也很明显,即对版本的依赖性太强了,所以下一阶段的工作就是对这个poc进行深入分析改造,最高目标是改造成通用版本,最低目标是找到改成适应各版本的思路并实现。

技术在交流中进步。今年小弟考研,客观原因没办法。希望忙完这段时间,能够有机会和大家多多交流O(∩_∩)O~
雪    币: 45
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
llongwei 活跃值 2014-9-17 14:54
8
0
嗯~~这个漏洞几个月前刚出来的时候跟踪了一下,但也只是跟踪了rop链和shellcode,确实版本限制比较厉害,不通用,自己也就没深入了!!希望早日看到你的通用版本,共同学习!!
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-17 15:25
9
0
对的,哪怕同是office2010(非14.0.7113.5001),该POC都无法利用,关键是第一步的固定地址构造太巧了,个人猜想poc作者可能也只是用作研究吧~

如果还是现在的原理,我觉得通用版本实在够呛,原因也就在于没办法随意控制第一步的固定地址,不过据说有大大将该样本改到office2007下了,希望能够共同学习
雪    币: 202
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ilovehk 活跃值 2014-9-18 22:42
10
0
先下载拜读下
雪    币: 4
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
追梦zhuimeng 活跃值 2014-9-19 02:05
11
0
我向你学习(我很菜的),论坛还是需要你这样的人才!
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-19 08:16
12
0
谢谢支持哈,多提批评建议,互相交流哦~
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-19 08:18
13
0
。。我还真是安全新手,一直在追赶大大们,再说在这儿说人才实在太贻笑大方了~
雪    币: 4
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
追梦zhuimeng 活跃值 2014-9-25 23:29
14
0
一起学习吧,最近打算认真学习android安全
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-26 08:15
15
0
嗯嗯,加油么么哒
雪    币: 4
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
追梦zhuimeng 活跃值 2014-9-27 22:51
16
0
你联系方式给我一下.
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-28 07:54
17
0
额,就在看雪上联系吧,其他联系方式都不太方便~
雪    币: 55
活跃值: 活跃值 (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
LessonXK 活跃值 1 2014-9-28 08:20
18
0
向楼主学习了,可以多多交流
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-28 16:48
19
0
互相学习,互相交流哈~
雪    币: 218
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
lmbi 活跃值 2014-9-28 17:26
20
0
学习中!
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-9-29 08:03
21
0
互相学习,欢迎讨论批评!
雪    币: 4
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
追梦zhuimeng 活跃值 2014-9-29 10:51
22
0
ok!..
雪    币: 23
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
by苏格兰 活跃值 2014-10-5 19:20
23
0
学习了。
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-10-9 15:12
24
0
请多指教。
雪    币: 450
活跃值: 活跃值 (10)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
lizhenhuan 活跃值 2 2014-10-9 16:06
25
0
在对软件结构不熟悉的情况下,仅仅通过样本来分析漏洞,博主给出了很好的方法。点赞。
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-10-9 16:48
26
0
谢谢,因为时间不充裕,来不及仔细研究RTF格式标准和office内部机制,加之水平有限,所以只是简单回溯了整个触发流程,技术粗糙,见笑了~
如果真正要从底层摸透该漏洞原因,回答诸如6楼的海豚兄的若干问题,还是要从软件和格式入手,希望有机会多多指点交流~
雪    币: 178
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
lmdetectiv 活跃值 2014-10-22 11:04
27
0
我怎么下载不了?求助!!
雪    币: 4
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hilsonl 活跃值 2014-10-30 17:07
28
0
学习了,好好看一遍再交流
雪    币: 4
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hilsonl 活跃值 2014-10-31 09:17
29
0
我用windbg调试的时候,打开哪个文件?你给的poc好像不全啊。打开这个文件?cve20141761_POC.bin?你给的august.doc文件没有啊???打开这个.bin文件会提示找不到Documents.doc,找不到and.doc...
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2014-10-31 21:27
30
0
呃,cve20141761_POC.bin就是poc文件,把后缀改成doc就好~

windbg打开WINWORD.exe,参数是poc文件名~

我觉得分析笔记里的步骤还算详细,个人建议可以先把"猜想验证阶段"走一遍,然后再根据两篇外文正向分析一下,应该就差不多了~

再有问题,欢迎继续交流
雪    币: 49
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
leonrain 活跃值 2015-1-9 21:19
31
0
为何word的版本号我找不到呀?求word版本号。
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2015-1-12 08:43
32
0
实在抱歉leo兄,时间间隔有点久,记忆有点模糊了~

文章中所说的版本号14.0.7113.5001,我记得不是word的版本号,而是wwlib.dll的文件版本,需要先安装 word 2010,然后到 Microsoft 官网下载两个升级补丁,具体是哪两个你查一下,实在找不到我们再交流
雪    币: 49
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
leonrain 活跃值 2015-1-13 00:19
33
0
恩恩,我找了一些,最接近的word版本号为14.0.7113.5005。这里的POC应该是WIN7下的,而不是XP下的吧?您是在XP下调试的吧?
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2015-1-13 08:56
34
0
当时我也在版本上卡了好久,试了好多次才搞定,你可以多在Microsoft官网上找找相应的升级补丁~我的具体调试是在XP下进行的,这个POC对word和wwlib.dll文件的版本要求很严格,对操作系统要求倒是没那么严~
雪    币: 49
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
leonrain 活跃值 2015-1-15 23:34
35
0
好的,多谢木木兄
雪    币: 37
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
痕无天 活跃值 2015-1-16 01:06
36
0
mark一下
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2015-1-17 14:26
37
0
客气,共同交流共同进步
雪    币: 1761
活跃值: 活跃值 (15)
能力值: ( LV12,RANK:310 )
在线值:
发帖
回帖
粉丝
木无聊偶 活跃值 4 2015-1-17 14:28
38
0
欢迎多多交流
雪    币: 9
活跃值: 活跃值 (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
KantSFun 活跃值 2016-1-7 17:22
39
0
好好学习一下~~~
雪    币: 1
活跃值: 活跃值 (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
kading 活跃值 2016-1-15 14:22
40
0
多谢楼主无私分享
雪    币: 774
活跃值: 活跃值 (17)
能力值: ( LV12,RANK:270 )
在线值:
发帖
回帖
粉丝
Ox9A82 活跃值 3 2016-8-10 02:03
41
0
如果是只有漏洞描述的情况下该怎么定位shellcode呢
游客
登录 | 注册 方可回帖
返回