VBA Dumper v0.1.4.2, 提取office文档中的VBA代码,监查宏病毒恢复代码(演示版)
VBA Dumper 0.1.4.2,填补国内同类程序空白,至少俺没在百度上找到国内谁在俺之前公开发布过类似软件,俺之后倒是有...
有交流技术问题的,请联系QQ:564955427 Email:charltsing@gmail.com,转载请声明。
此程序为演示版,可以在无office的环境下Dump出复合文档的VBA代码(xls\doc\pptm等),每个模块最大Dump长度不超过六百个字符,用于简单判断病毒基本够了。也可以用来恢复受损文件中的vba代码。
使用VBA Dumper可以不依赖office环境检查vba代码,目前的宏病毒杀毒软件基本都是这个路子。
使用方法:
1、运行之后选择.xls?|.doc?|.ppt?|.bin文件,会生成以模块名开头的文本文件,用记事本打开查看即可(支持2003/2007/2010,2013未测试)。PPT文件请另存成pptm再执行本程序。
2、支持命令行参数,在Dos下执行:程序名 文件名
3、需要.net 4.0环境支持
***********************************************************************
简单介绍一下原理:
程序启动之后,会遍历文件里面的Storge是不是Stream类型
如果是的话,再检查是不是宏Stream
是的话再检查有没有压缩的VBA代码,最后通过API解压缩,生成文本文件。
两点说明:
演示版不支持将全部的VBA代码Dump出来。也是为了防止有人用此程序做坏事.
本程序目前只测试了十几个个Excel、Word、PPT等文件,使用中发现Dump其他office文件有什么问题的话,请留言。
更新历史:
2013.1.11 14:00 发布0.1版。
2013.1.11 20:00 发布0.1.1版,支持命令行参数,最大Dump字符数改为600。
2013.1.12 12:30 发布0.1.1.1,删掉了中间生成Storge文件的功能(无用),更换App Ico,修正Dos窗口识别bug
2013.1.12 15:30 发布0.1.2版,支持识别第三方程序直接写入的VBA模块(非标准Stream流),该功能长期测试中,欢迎提供文档...
2013.1.13 1:00 发布0.1.3版,俺和德国哥们frank联系上了(宏扫描工具的原作者),他对俺的程序很感兴趣。考虑到程序不能写的太烂给论坛丢人,就加上了Dump 2007以上版本的功能,同时控制台输出美化了一下,俺个人觉得其实还是挺丑滴 :)
2013.1.15 23:00 发布0.1.4版,修正 Search VBA compressed stream error;Packing dll & exe to one exe file 。
2013.1.16 23:30 发布0.1.4.1版,修正 递归错误,感谢Moneky提供测试文档,请加我的QQ领福利!
2013.1.17 11:20 发布0.1.4.2版,修正 Search VBA compressed stream error;增加模块的字符长度输出。
代码使用C#写的,也有VBA版本,不过后者没法保证源代码安全,没法上传。