WMF 0-day漏洞进一步研究- -| 回首页 | 2006年索引 | - -中央政府网站的脚本注入

Exploit.WMF.SetAbortProc

关键词WMF    0day    SetAbortProc                                          

是时候写个模块,检测所有利用SetAbortProc()功能的WMF文件了,无论在回调函数中执行什么代码,一律报毒!希望以此抑制一下恶意WMF的泛滥。

KV今天会新增Exploit.WMF.SetAbortProc记录 :)

wmf_c

至于补丁的问题,写起来难度倒是不大,不过现在已经有一个非官方的了:http://www.hexblog.com/2005/12/wmf_vuln.html,微软的补丁下周二可以出来。是不是在KV疫苗里面加,似乎不太紧急,就看时间啦,呵呵。

【作者: daishuo】【访问统计:】【2006年01月4日 星期三 13:18】【 加入博采】【打印

Trackback

你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=4096404

博客手拉手

【转贴】0day术语解释 beiune
22日0day软件更新 wuhui3344
12月5日0day软件 wuhui3344
12月6日0day软件 wuhui3344
12月9日TLF 0Day更新 wuhui3344
12月10日0day软件更新 wuhui3344
12月3日0Day软件翻译更新 wuhui3344
图片格式转换 张家珩
中文RSS资源 wuhui3344
绿盟科技紧急安全通告 2005年12月30日 laozei

回复

- 评论人:guest   2006-01-23 12:15:00   

我发现机一安装kv2006后,所有用到将一个套接字直接绑到cmd.exe的输入输出句柄的程序都不能工作了(非创建管道),一卸装马上就可以用,
而且现在绑定cmd到一个端口的shellcode的实现普遍也这样:
si.dwFlags = STARTF_USESHOWWINDOW+STARTF_USESTDHANDLES;
si.hStdInput=si.hStdOutput=si.hStdError=(void *)sock;
CreateProcess(NULL,"cmd.exe",NULL,NULL,TRUE,0,0,NULL,&si,&pi);
搞得我以为是哪里的问题,反正就是卸装kv2006就正常,一安装kv2006的话就不能工作,虽然CreateProcess返回的是true,但的cmd立即结束,
我系统全新安装后很正常,然后一安装kv2006就来问题了,
到底是不是kv2006的问题啊?还kv2006为了安全考虑?我不想这样行么?怎么设置啊?

- 评论人:daishuo   2006-01-16 11:37:42   daishuo的博客  

to stardust: Placeable文件头的问题,在写这篇blog的时候的确没有考虑。后来经icyfox提示就加上了。1月10日以后的KV病毒库可以处理PlaceableMetaFile。如果有不能查的Exploit,还请mail给我啊 :) daishuo@gmail.com

- 评论人:stardust   2006-01-16 11:03:56   

似乎没有考虑PlaceableMetaHeader可选头的问题,如果从文件头部就直接检查WindowsMetaHeader的话会导致漏报。

- 评论人:daishuo   2006-01-10 01:01:04   daishuo的博客  

to icyfox: 嗯,FileType的问题,格式文档上面只有0,1两个值的说明,不过FrSIRT上的PoC源码(http://www.frsirt.com/exploits/20051231.ie_xp_pfv_metafile.pm.php)里面出现了2:
........
my $content =
#
# WindowsMetaHeader
#
pack('vvvVvVv',
# WORD FileType; /* Type of metafile (0=memory, 1=disk, 2=fjear) */
int(rand(2))+1,
# WORD HeaderSize; /* Size of header in WORDS (always 9) */
9,
......
我准备改正Version的值,去掉NumOfParams的判断。随KV 10号的病毒库升级。

- 评论人:icyfox   2006-01-09 19:14:36   

更正:
WORD FileType; /* Type of metafile (1=memory, 2=disk) */
我应该说错啦

- 评论人:icyfox   2006-01-09 18:03:08   

email/gtalk: icyfoxlovelace@gmail.com
修改下:
WORD FileType; /* Type of metafile (1=memory, 2=disk) */
好像是这样

header.Version !=3 这个应该是0x0300

header.NumOfParams != 0 这个没必要判断,因为这个可以为任意值

你的失误是在判断Version上
两个版本里有个版本的高低字节搞反拉

- 评论人:daishuo   2006-01-09 16:24:30   daishuo的博客  

to icyfox: 这几天我一直在等冰狐的WMF网马生成器啊,呵呵。方便留个联系方式么,日后好交流。我的email/gtalk: daishuo@gmail.com; MSN: dai_shuocn@hotmail.com。

- 评论人:daishuo   2006-01-09 16:03:06   daishuo的博客  

头部18字节我是加了几个限制条件:
typedef struct _WindowsMetaHeader
{
WORD FileType; /* Type of metafile (0=memory, 1=disk) */
WORD HeaderSize; /* Size of header in WORDS (always 9) */
WORD Version; /* Version of Microsoft Windows used */
DWORD FileSize; /* Total size of the metafile in WORDs */
WORD NumOfObjects; /* Number of objects in the file */
DWORD MaxRecordSize; /* The size of largest record in WORDs */
WORD NumOfParams; /* Not Used (always 0) */
} WMFHEAD;
...
if(header.FileType 〉2 ||
header.HeaderSize != 9 ||
header.Version !=3 ||
header.NumOfParams != 0 ||
header.FileSize 〉 File_Length/2 // FileSize is in words
)
{
return 0;
}

- 评论人:icyfox   2006-01-09 13:05:19   

我没公开
今天测试原因
估计是因为你的WMF头分析错误
你可以看下你的代码对于WMF头18字节的判断
你好像对于一些修改的判断出错
就是一个文件头判断上

- 评论人:icyfox   2006-01-09 13:02:04   

我没公开
今天测试原因
估计是因为你的WMF头分析错误
你可以看下你的代码对于WMF头18字节的判断
你好像对于一些修改的判断出错
就是一个文件头判断上

- 评论人:daishuo   2006-01-09 10:44:47   daishuo的博客  

to icyfox: Exploit.WMF.SetAbortProc为了扫描效率牺牲了部分检出率,哪里可以下载到你的WMF网马啊?或者寄一份(链接)到daishuo@gmail.com :)

- 评论人:ICYFOX   2006-01-08 23:24:14   

不是吧
留言直接被删除
算啦
不说拉
没意思

- 评论人:icyfox   2006-01-08 23:06:24   

今天晚上测试自己修改的wmf图片,利用kv 1月8号病毒库无法检测出来
呵呵
估计你的检测代码要升级一下拉哦,
测试国外的杀毒结果:

诺顿可以躲过
卡吧和麦咖啡没搞定

人家瑞星根本压根不管这个鸟 哈哈

- 评论人:mirr0r   2006-01-05 09:45:04   

项目还没完呢,我只是陪陈去看她哥了,请了两天假

- 评论人:daishuo   2006-01-05 01:17:35   daishuo的博客  

to smallmo: 呵呵,目前这个模块还是追求速度第一,检出率第二;先升上去看看,如果明天没人反应有异常,会再升级一个检出率高的 :)
to mirr0r: 怎么跑到广东去了,封闭开发完了放风了么?

- 评论人:蛋   2006-01-05 00:04:11   

胖子,我刚从广东回来。本来把本带去就想研究一下这个0day来着,看来我错了,基本没打开用过。不过你已经把这个东西研究得这么透彻了,我再研究也就多此一举了,这个东东牛就牛在它太好利用了:)

- 评论人:smallmo   2006-01-04 20:07:57   smallmo的博客  

看到了,dai哥,kv今天加了^_^

验证码:   
评论内容: