最近我正在阅读恶意软件分析。我正在浏览此恶意软件存储库(https://github.com/ytisf/theZoo)。在这里我们可以找到恶意软件的二进制文件。二进制文件可以打包吗?如果是这样,我们怎么能说这些二进制文件已打包?
PS :打包程序压缩程序并尝试向我们隐藏内部内容(某种压缩或加密方式)。我对此表示怀疑。二进制文件可以打包吗?
Edit2 :在此存储库中,他们只是为了安全起见才将其压缩,这并不是我在说的实际包装。解压缩后,我们将获得一个二进制文件。可以打包吗?
答案 0 :(得分:0)
首先,您在“打包程序”和存档程序(ZIP等)或压缩程序之间的区别似乎没有任何依据。
“打包”的可执行文件不能直接执行。必须先打开包装。 (例如)与包含恶意软件的ZIP文件或已使用标准压缩程序压缩的恶意软件文件完全相同。
由一个以“秘密”方式“打包”……逃避检测的程序创建的“打包”可执行文件呢?好吧,那行不通。恶意软件在执行之前仍必须先解压。因此,这意味着坏的肠道现在有第二个问题:将拆包器放到受害者的机器上。一旦有人(反黑客)掌握了超级秘密的拆包程序,它就不再是秘密。它可以进行逆向工程...或由AV产品按原样使用在可疑的二进制文件上。
我能想到的“打包”的唯一实际用途是为恶意软件添加自动解压缩功能。该恶意软件(已分发)将由可执行文件和少量实现拆包程序的代码组成。可执行文件的其余部分将打包为可实现讨厌内容的代码。当用户运行恶意软件时,它将解压缩打包的代码,将其加载到内存中并开始执行。
但是,有潜在的方法可以检测或预防这种情况。
简而言之,恶意软件可以使用某种“打包”来隐藏自身,但必须在某处有一个可执行组件才能对其进行“解压缩”。
如果是这样,我们怎么能说这些二进制文件已打包?
如果该恶意软件以非可执行文件的形式分发,您会弄清楚如何将其拆包。
如果恶意软件是自解压的,则对自解压组件进行反向工程以了解其工作原理。