计算机恶意软件:比变形更复杂?

逆向工程 恶意软件 混淆
2021-06-17 03:15:37

我已阅读有关oligo-、poly- 和变形恶意软件的主题我在谷歌上进行了快速搜索,似乎变形恶意软件的概念在 DOS 时代和 1990 年代的 32 位 Windows 中已经为人所知(根据Ször 和 Ferrie 的 Hunting For Metamorphic)。

现代计算机恶意软件中是否存在比变形更复杂的自我修改方法?

编辑

Jason Geffner 的回答非常有趣,涉及有问题的逆向工程技术。有了明文代码,就可以创建检测机制吗?我理解对于多态性(其中有一个未受保护的底层)或 VM。但是那些可以改变这个底层的代码呢,比如变形代码呢(见上面的参考)?

在那里,反转为您提供了底层,它不是恒定的 - 对吧?我也想知道最近10年左右有没有先进的变质技术,或者这种自我改造已经灭绝了?

Edit2 由于朋友点太少,我无法发表评论,杰森:我打算把这个作为我最初的问题来问。您提供的信息很有趣,不幸的是它并没有完全回答我的原始问题(我似乎已经说明得不够好)。通过上面的编辑,我想澄清我想知道的内容。我认为不需要新问题,因为这是最初打算提出的问题,您同意吗?

1个回答

Metamorphism 并没有像用于击败静态 AV 签名那样用于混淆。

就现代*混淆而言:

  • 自定义虚拟机可能很难分析,特别是如果它是定制的虚拟机(而不是像 VMProtect 这样被更广泛研究的东西)。
  • 涉及在内核中运行的代码的混淆对于许多逆向者来说也是具有挑战性的,因为许多常见的逆向工程工具都是为用户模式目标设计的。
  • 分块打包,其中并非所有代码都同时被反混淆,可能难以分析。

还有很多其他复杂的混淆方法,我相信其他人会在这个线程上命名:)

虽然您没有问过它,但现代*多态技术是服务器端多态性,其中多态引擎位于远程服务器上,用于生成恶意软件样本的数百万种变体。

*请注意,这里的“现代”是指过去 10 年左右的时间。