ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
Python自动化办公应用大全 Excel 2021函数公式学习大典 Kutools for Office 套件发布 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: cumulonimbus

[求助] 这个隐藏模块是怎么回事?看不到模块,宏安全性再高也防不住。谢谢

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2013-5-24 22:42 | 显示全部楼层
本帖最后由 HUNGCHILIN 于 2013-5-24 23:24 编辑

在开发此功能期间与后续的版本测试的过程中,共测试过  EXCEL 97 2000 2002 2003 2007 2010
都有留存原始开发文本与测试纪录文本文件.EXCEL文件累积知识

发现 97 2000 2003版都各有不同反应,(像2000版要用2000制作模块隐藏,2000版才能用,其他版本制作的不行),而2007以上版本,会判断档案有没有宏,这种会突破安全性的 XLS档,因为把所有的模块都隐藏了,所以EXCEL2007将他判断为没有宏的档案,所以就不会执行宏,甚至做存盘隐藏的宏模块会被删除,就像 XLSX档一样。

如何让这个档的宏能在EXCEL2007以上版本使用,在制作时保留一个或多个模块不做模块隐藏就可以,让EXCEL判断这是一个有宏的档案即可,当然保留模块不做模块隐藏,就无法突破EXCEL安全性.看以前的回文第2条
-------------------------------------------------------------------------------------
Posted by HUNGCHILIN 阿吉  on 2013/1/17 下午 09:21 回复  



这一则文章,确实对EXCELVBA程序防护是有帮助

这则方法可以
1.主要功能可以隐藏并保护模块程序 方法分成多种附属功能.不是只有一种.也有多种呈现
2.次要对于 EXCEL2003来说,这个技术是个梦靥,当全部使用隐藏保护模块后,可以无视安全等级就算是[更高],也能自动执行 自动宏 程序,我想这个消息无疑对 EXCEL2003版来说是个打击,而对于EXCEL2007/2010版来说.他就只是能隐藏并保护模块程序,无作用
3.微软看到这个讯息会很高兴,因为这意味着,大家需要更换新版本,像2010版,才能防止宏病毒的自动执行.这样他们就能赚钱
4.如果要让人全部换EXCEL2010版,我想使用此方法,肆虐EXCEL2003版,大家就会换软件了.这也算是促进升级的方法吧
5.上述大家的方向好像愈走越偏离,我觉得应该要走,原档案模块隐藏 与 原档案模块隐藏解除 会比较好,而不是汇出VBA模块
6.这方法颠覆大家以前的想法[模块不能隐藏?],现在证明是可以的

TA的精华主题

TA的得分主题

发表于 2013-5-24 23:44 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
HUNGCHILIN 发表于 2013-5-24 22:42
在开发此功能期间与后续的版本测试的过程中,共测试过  EXCEL 97 2000 2002 2003 2007 2010
都有留存原始开 ...

对于上面的观点并不完全认同:
一、通过修改那两个流的内容确定可以实现模块不可见的效果,但这个方法也并不是只有利没有弊的——如果被隐藏的模块包含恶意代码,将会给普通用户带来不可预见的危害。
二、直接从文件流中导出代码文件,也并不见得就是有害的,至少大多数的杀毒软件也是这么做的;毕竟,如果是查杀病毒文件,不可能要求机器上必须安装有指定的软件才能用。
三、Office的VBA本身就是明码保存的,我认为代码的共享性要高于保密性。否则,微软就应该将其它编译后保存,而不是仅仅保存代码本身。
故而综合上面三点,我的观点是:没有有害的技术,只有有害的用途。同样一把刀,在厨师的手上,就是必须的工具,在恶徒手上,那就是凶器。刀没有罪,有罪的是用刀的人。

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-5-25 01:01 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
joforn 发表于 2013-5-24 23:44
对于上面的观点并不完全认同:
一、通过修改那两个流的内容确定可以实现模块不可见的效果,但这个方法也 ...

这是如何做到的呢?我找了半天不知道那个高手用什么方法隐藏了代码。

TA的精华主题

TA的得分主题

发表于 2013-5-25 02:01 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
^^joforn 说的 也是我想说的。有利有弊,工具方法只看使用者,上述的第2则是我以前硕士论文的结论的一部分,只是为了凸显它的功能、性质并对2007以后的版本有所连结

想说明的是,那个回复言,写了有一阵子且是在看了DUMP导出代码文件的方法之后,所做回复的,我很喜欢joforn兄还有liucqa 兄发表的DUMP的方法,很实用,是华语区一个全新的做法,以前在华语区没人做过。

我回复了[5.上述大家的方向好像愈走越偏离,我觉得应该要走,原档案模块隐藏 与 原档案模块隐藏解除 会比较好,而不是汇出VBA模块]。
原因是模块隐藏是可逆的且VBA在使用上我们可能混合了多种方法,如程序或函数放在单元格或计算、如程序或公式数据等放在隐藏定义内,这些方法在 EXCEL4.0时代使用时是很常见的方法,就算不使用宏表,也常在隐藏定义内放程序或判断公式给VBA使用,我的档案内很常这样做,如果只导出VBA程序与模块,会有档案程序不完整的现象,所以我直觉回复了...只是很单纯的想法(针对模块隐藏想到还有别种作法)总之好玩就好...真的没想到会引出DUMP这方法^^
真的不错,很久没好文章了学习起来才有动力

TA的精华主题

TA的得分主题

发表于 2013-5-26 21:10 | 显示全部楼层
其实在 VBE 的对象浏览器里还是可以看到这个模块以及里面的过程的,如图

01.jpg

TA的精华主题

TA的得分主题

发表于 2013-5-26 21:23 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
好 学习了 太不能够了

TA的精华主题

TA的得分主题

发表于 2013-5-26 23:16 | 显示全部楼层
本帖最后由 liucqa 于 2013-5-26 23:23 编辑
wangminbai 发表于 2013-5-26 21:10
其实在 VBE 的对象浏览器里还是可以看到这个模块以及里面的过程的,如图
07下连名字都看不到。

你是哪个版本看的?2013对这个如何?你测试过没有

TA的精华主题

TA的得分主题

发表于 2013-5-27 09:45 | 显示全部楼层
本帖最后由 wangminbai 于 2013-5-27 10:05 编辑
liucqa 发表于 2013-5-26 23:16
07下连名字都看不到。

你是哪个版本看的?2013对这个如何?你测试过没有

2007以上版本至少需要一个模块是可见的,不然会自动忽略隐藏的宏代码,就是里面的宏代码不会执行,保存或者另存这个文档时会自动删除里面的代码

TA的精华主题

TA的得分主题

发表于 2013-5-28 12:18 | 显示全部楼层
对于03版来说,作为宏毒的促发(炸弹引信),非常不错。

TA的精华主题

TA的得分主题

发表于 2014-3-11 21:18 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
wangminbai 发表于 2013-5-24 22:09
这个文件本身有点问题,在 2007 及以上版本,其中的代码不会正确运行
我自己的小工具倒是可以实现这个功能 ...

这个小工具能发一个给我吗?谢谢了!dx-wu@163.com
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2025-12-14 06:23 , Processed in 0.032012 second(s), 11 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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