由 MS12-005 : 嵌入式对象任意代码执行引发的思考

来源:互联网 发布:道路桥梁设计软件 编辑:程序博客网 时间:2024/05/19 16:37

Author :instruder of code audit labs of vulnhunt.com

由下面文章引起的一些思考
Ref:http://bbs.pediy.com/showthread.php?t=145558

这个想必大家都知道,这个漏洞是对ole嵌入文件扩展名是否是可执行文件识别没有识别全,并且认为不是可执行文件就没有对用户进行提示。

通过这个漏洞 你能想到什么?

老大说过的一句话:

这个漏洞其实就是在简单现象深挖一下
我们打开OFFICE看见对关联EXE有检查就放过了
但看下代码就知道他是黑名单模式,就能去想到更多的不在黑名单当中但其实也有执行能力的东西。
很多安全漏洞就是这样被我们漏过去的。”

于是我们来看看其他软件对文件后缀的过滤情况。

1 聊天工具文件传输

qq

大家都知道我们qq在聊天时,别人给你发附件 若是exe 或者msi 等扩展名时就会自动重命名,防止用户运行,但是他防护的全吗???

Qq的默认配置如下图

简单测试了下,如下结果:

以过滤的文件扩展名,会自动加上.重命名

com
exe
msi
bat
scr
chm
vbs
js
dll

对如下后缀没有检测
cmd
Jar
vbe
jse
wsh
py
sct
wsc
wsf
wmz
pl
pif
lua
mdb
application

测试图:

也许装了py的人大概知道py能直接运行,其他的呢,例如application的 装了.net就可以了,win7都是自带了.net程序的

设置成安全级-中级时,
以下的扩展名还是直接可以接受并不过滤
wsh sct wsc py wmz mdb wsf vbe pl lua application jse jar cmd

bat com dll scr chm vbs js 扩展名直接过滤不让传输

exe和msi 的会加上重命名后缀

飞信

在顺便测试下飞信

已过滤的可执行文件扩展名
Exe
Dll
Pif
Bat
Cmd
com
src
chm
vbs
js
jar
wsf
vbe
wsh

没有过滤的扩展名:
Sct
Py
Pl
Wsc
wMz
lua
jse
application

呵呵 飞信以前没过滤这么全的 dll后缀都不过滤的,可能由于之前测试过一个其他的漏洞 然后就大部分都给过滤了;)

2邮件客户端

foxmail

邮件传输中默认对传输的文件扩展名进行了限制 例如exe的 就直接不让传输

例如pif 默认显示图标都是打不开的 ,但是点右键 打开 直接就执行了代码。
Exe bat com等扩展名 直接不允许添加。

当邮件内容中包含了smb或者WebDAV url,直接点击url ,不会提示任何信息,即可执行任意代码(可执行文件扩展名是py pl jar 等等)

上面的可能大家还会觉得有py后缀,有点不靠谱,但是下面的呢

这样 炸眼看去 是个目录? 但是点击 还是同样的执行了calc.py 哈哈

如果是

Pif exe 这种 点击url 就会提示

没有逆向分析foxmail对于不同的扩展名的处理了,简单的黑盒看了下

结束语

当然,ms12-005根我们上面讨论的还不完全一样,我们上面讨论的只能被看作是有潜在隐患,还算不上是漏洞,但的确有被利用的可能和风险。

假如你是开发人员,当设计人员在设计程序的时候,黑名单模式的情况下稍有不注意就会有漏网之鱼。

假如你是漏洞研究分析人员,当大家分析漏洞的时候,分析完了 之后 要问下 自己从这个漏洞 学习到了什么?

这个漏洞成因是什么?
作者是怎么找的?
作者找的思路是什么?
漏洞怎么利用的?
利用思路是什么?
下次在同样类型的漏洞在你面前 你会找到吗?

0 0
原创粉丝点击