Chr*_*ix3 8 obfuscation excel vba
有哪些工具可以在表单,模块和类模块之间混淆VBA代码?
我已经做过一些研究,并在档案中阅读,但是一段时间内没有提到任何内容,所以我认为这些建议可能已经过时了.
在其他地方阅读的几个人是:
另外,如果我错了,请纠正我,但根据我的理解,混淆器的简化逻辑是:
那是对的吗?选择"定义逻辑"时我需要注意什么?之前我和CrunchCode一起玩过,有很多选择,但它们对我来说都很陌生.
谢谢你的帮助 :)
我之前的答案没有经过充分研究,而且由于没有其他人回复,我认为您应该得到更好的答案。经过测试 CrunchCode,它似乎通过以下技术进行混淆:
第一个混淆技术是去除所有语义并减少推断任何上下文的可能性。在汇编代码时代,这通常是一个问题,除非您熟悉代码,否则很难判断代码将要做什么。
大写和小写字母,间距不佳,使其很难阅读。
如上所述,这消除了理解所推断的代码的机会。
运算符重载(通过使用用户定义函数)是一种有用的技术。你可以在 VBA 中做到这一点,我一直记得这是我在面试中被问到的一个问题:
子 1:x = z + y 子
2:x = y + z
事实证明,Sub 2 比 sub 1 花费的时间更长。这是为什么?
在 10 名受访者中,我是唯一一个猜测操作符超载的人,所以这一点一直困扰着我。您可以使代码的行为与预期的完全不同。加法符号可用于减法、除法或任何其他数量的组合。当代码中的某些基本内容发生变化时,理解源代码就会变得更加困难。
作为一个额外的步骤,我可能会想在源代码中添加许多冗余方法。本质上是根据条件为真执行无意义代码的代码片段。这个条件永远不会成立,但由于代码难以阅读,因此很难理解。
从本质上讲,它的工作原理与我过去几年读过的所有编码标准完全相反。作为开发人员你应该做的一切都是为了让你的代码更具可读性(毕竟我们都应该为其他开发人员编写代码,而不仅仅是为机器 - 谁在乎如果没有人能理解你可以将该方法减少到一行)它?)。
警告:没有可靠的方法可以阻止某人窃取您的源代码。我知道有人停止了他们的开源项目,因为人们将其编译版本作为自己的版本出售。这只是开发人员要做的事情之一。混淆会起到一定作用,但不能 100% 保证阻止坚定的开发人员窃取它,但这是一种让它变得比其价值更麻烦的情况,因此他们的回报递减(例如,他们可以在对代码进行逆向工程所需的时间)。
希望这会有所帮助 - 要了解更多信息,请查看此处的 YouTube 视频(带有听起来非常不祥的音乐!)
| 归档时间: |
|
| 查看次数: |
11309 次 |
| 最近记录: |