ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 57640|回复: 39

[原创] 更新:VBA Dumper v0.1.4.2, 提取office文档中的VBA代码,监查宏病毒恢复代码(演示版

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2013-1-11 14:23 | 显示全部楼层 |阅读模式
本帖已被收录到知识树中,索引项:保护和加密编程
本帖最后由 liucqa 于 2013-10-16 14:39 编辑

VBA Dumper 0.1.4.2更新,填补国内同类程序空白

此程序为演示版,可以在无office的环境下Dump出复合文档的VBA代码(Excel\Word\PPT等),每个模块最大Dump长度不超过六百个字符,用于简单判断病毒基本够了。也可以用来恢复受损文件中的vba代码。
使用VBA Dumper可以在不打开office文件的情况下检查vba代码,目前的宏病毒杀毒软件基本都是这个路子。

使用方法:
1、运行之后选择.xls?|.doc?|.ppt?|.bin文件,会生成以模块名开头的文本文件,用记事本打开查看即可(支持2003/2007/2010,2013未测试)。
2、支持命令行参数,在Dos下执行:程序名  文件名
3、需要.net 4.0环境支持

演示图片:
捕获.JPG
演示画面。


***********************************************************************

简单介绍一下原理:
程序启动之后,会遍历文件里面的Storge是不是Stream类型
如果是的话,再检查是不是宏Stream
是的话再检查有没有压缩的VBA代码,最后通过API解压缩,生成文本文件。

两点说明:
演示版不支持将全部的VBA代码Dump出来。也是为了防止有人用此程序做坏事,也避免可能被删帖。
本程序目前只测试了十几个个Excel、Word、PPT等文件,使用中发现Dump其他office文件有什么问题的话,请跟帖发附件。
PPT文件请另存成pptm再执行本程序

更新历史:
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领福利{:soso_e113:}!
2013.1.17 11:20   发布0.1.4.2版,修正 Search VBA compressed stream error;增加模块的字符长度输出。


更新0.1.4.3版 http://club.excelhome.net/thread-1026277-1-1.html  集成到DNA Tools工具箱里面了                                    
有交流技术问题的,请QQ联系



*****************************************

顺便推荐一个Excel Micro管理工具,这个工具可以管理非工程加密的文件中的所有宏,并建立宏库。可以随时从库里面提取宏到Excel文件里面。
http://www.sowsoft.com/excel-macros.htm
excelmp.zip (352.75 KB, 下载次数: 1652)




补充内容 (2013-4-28 12:06):
http://msdn.microsoft.com/en-us/ ... v=office.12%29.aspx  Office VBA File Format Structure

补充内容 (2013-4-28 12:32):
http://wenku.baidu.com/view/1c738a4cc850ad02de8041dd.html  COM+组件设计与应用



评分

11

查看全部评分

TA的精华主题

TA的得分主题

发表于 2013-1-11 14:34 | 显示全部楼层
2013 首个 创新奖

识货的来看看

TA的精华主题

TA的得分主题

发表于 2013-1-11 14:35 | 显示全部楼层
For security reasons, Demo version can only dump first 300 characters

For security reasons? or for others?

点评

代码泄露是不安全的  发表于 2013-1-11 15:54

TA的精华主题

TA的得分主题

发表于 2013-1-11 14:40 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
如果能够将VBA代码加入任意xls文档,而不只是提取,才会 Security issues arisen.

点评

你说的这个是可以实现的,我在一楼的文件还有一个功能是重新生成Storge文档,可以实现你的要求。不过修改的地方太多,俺就不写了。复合文档格式将来会逐步被OpenXML格式所取代。  发表于 2013-1-11 15:50

TA的精华主题

TA的得分主题

发表于 2013-1-11 16:22 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
liucqa可谓技术狂了,厉害。谢谢分享!

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-1-11 20:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
更新0.11版,欢迎测试,有问题请发附件

TA的精华主题

TA的得分主题

发表于 2013-1-11 21:10 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
恭喜新作!
看来任何想不打开文件就可以执行的分析 都离不开分析文档结构啊
看16进制就头晕 只能拜服了^^

TA的精华主题

TA的得分主题

发表于 2013-1-11 22:31 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2013-1-12 09:00 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
我这运行不了

TA的精华主题

TA的得分主题

发表于 2013-1-12 09:09 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
轻轻的从天上飘下一片雪,没想在地上砸个砊————我只能说:我真的是无意的。

不知道你打算啥时收手,不过我认为,不管是直接写入代码,或是仅仅提取代码,这对一般的VBA用户来说,带来的可能都是一种破坏。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-23 00:10 , Processed in 0.047988 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表