浅谈免杀技术

作者: 极客圈 | 来源:发表于2017-05-23 10:17 被阅读104次

    完美的免杀方法
    到目前为止,要实现恶意软件的“FUD”,加密恶意代码被认为是个不错的选择,不过有几点要注意:
    1.恶意程序在解密时,应当也进行代码混淆
    2.当恶意文件在内存中运行解密代码时,我们必须要保证在不重定位绝对地址的情况下进行
    3.恶意软件是否在沙箱环境中运行,如果是,则立马停止恶意文件的解密
    4.应当只对 PE 文件中的 shellcode 或 只有二进制文件的.text部分进行加密,而不是对整个 PE 文件进行,以便把信息熵和降到最低
    以下是恶意软件流程图。

    4.png
    我们的“杀软检测”功能将检测恶意软件是否正在沙箱中被动态分析,如果功能检测到AV扫描器的任何迹象,则它将再次调用主函数或者仅当 “AV Detect” 函数来用。如果没有发现AV扫描器的任何迹象,它会调用 “解密Shellcode” 的功能。
    以下就是 meterpreter 反汇编 shellcode 的原始格式。
    5.png
    为了让信息熵保持适当的大小,我们需要将shellcode注入方法改为使用多字节键的xor加密,xor加密标准不同于RC4或blowfish。因为恶意软件根本就用不到像RC4或blowfish这样的强加密,所以杀软产品也不会企图去解密信息熵中的shellcode,因此我们在编写恶意软件时,只需保证shellcode具备不可读和不可检测的静态字符串就足够了,如果使用xor,那解密过程更快,加密库中的代码量也会少很多。
    同一个 meterpreter 代码使用 XOR 加密的前后对比
    6.png

    相关文章

      网友评论

        本文标题:浅谈免杀技术

        本文链接:https://www.haomeiwen.com/subject/wadbxxtx.html