哪些工具的建议可以混淆VBA代码跨表单、模块和类模块?
我做了一些研究,在档案馆里阅读过,但是有一段时间没有提到任何东西,所以我认为这些建议可能已经过时了。
从其他地方读到的几本书是:
此外,如果我错了,请纠正我,但根据我的理解,混淆器的简化逻辑是:
对吗?在选择“定义逻辑”时,我需要研究什么?我以前和CrunchCode一起玩过,有很多选择,但它们对我来说都是陌生的。
(谢谢你的帮助:)
发布于 2015-07-04 04:18:07
我买了CrunchCode,并注意它不支持64位系统。支持真的很糟糕(几周内没有电子邮件回复)。字符串加密功能会破坏所有的字符串比较和MsgBoxes,因为解密的字符串与原始字符串不一样。建议避免使用此产品!
发布于 2014-10-13 10:09:03
我以前的回答研究得很差,因为没有其他人回答,我认为你应该得到一个更好的答案。在测试了CrunchCode之后,它似乎通过以下技术混淆:
第一种混淆技术是剔除所有语义,减少任何上下文被推断的可能性。在汇编代码的时代,这通常是一个问题,因为除非您熟悉它,否则很难知道代码将做什么。
大写字母和小写字母的间距都很差,所以很难读懂。
如前所述,这将消除理解正在推断的代码的机会。
操作符的重载(通过使用用户定义的函数)是一种有用的技术。你可以在VBA中这样做,我一直记得这是我在面试中遇到的一个问题:
分段1: X=z+y
第2分节:X=y+z
潜艇2的时间比潜艇1长,这是为什么?
在10名受访者中,我是唯一一个猜到操作者超载的人,所以这一直困扰着我。您可以使代码的行为与它应该做的非常不同。加法符号可以作减法、除法或任何其他数目的组合。当在代码中更改了这个基本内容时,就很难理解源代码了。
作为另一个步骤,我可能会尝试向源代码中添加许多冗余方法。本质上是基于条件为真执行无意义代码的代码片段。这种情况从来都不是真的,但是由于代码很难阅读,所以很难理解。
本质上,它的工作方式与我在过去几年中所读过的所有编码标准完全相反。作为一个开发人员,你应该做的每一件事都能让你的代码更加可读性(毕竟,我们都应该为其他开发人员编写我们的代码,而不仅仅是为机器编写--如果没有人能够理解,谁会关心您可以将该方法简化为一行呢?)
警告:没有确切的方法可以阻止别人窃取你的源代码。我知道有些人停止了他们的开源项目,因为人们把开源项目的编译版本作为自己的版本出售。对于开发人员来说,这只是其中之一。混淆将走一些路,但不能100%保证阻止坚定的开发人员窃取它,但这是一个使它比它的价值更麻烦的情况,因此他们的回报递减(例如,他们可以在逆向设计代码所需的时间内编写相同的功能)。
希望这会有所帮助-想了解更多信息,请访问这里的YouTube视频 (带有非常不祥的音乐!)
发布于 2015-07-24 15:22:55
如果你不介意一些复制和粘贴,并反复检查产品vbobfuscator似乎是不错的。同时做vba和vbscript。更改变量和函数名。www.vbobfuscator.net。混淆比简单的发现和替换要复杂得多.提供不起作用的代码;)
https://stackoverflow.com/questions/16765277
复制相似问题