工具:熵识别FilelessMalware之注册表检测

admin 2025-12-14 22:38:22 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文介绍了使用熵识别技术检测无文件恶意软件的方法,特别是针对隐藏在注册表中的恶意代码。文章解释了无文件恶意软件的三种主要入侵方式:在内存中运行、通过脚本感染主机以及藏身于注册表。作者介绍了一个名为reg-entropy-scanner的工具,可以扫描注册表并分析熵值来识别潜在的恶意代码。虽然这种方法无法做到100%精准,但能缩小排查范围,在安全检测中具有实用价值。 综合评分: 83 文章分类: 恶意软件,漏洞分析,安全工具,应急响应,威胁情报


cover_image

工具:熵识别Fileless Malware之注册表检测

原创

MicroPest

MicroPest

2020年5月22日 00:02

“Fileless Malware”:无文件恶意程序,意味着这是个不在你硬盘上落地文件的恶意程序,也是当今最为主流的恶意程序使用的技术。因为不留文件在硬盘上,没有痕迹,所以很难发现,更谈不上识别出来。

    今天,我们利用熵来进一步阐述下这个话题。

    熵的特性,使我在实测过程中(可能是我用得少、实验数据少)无法对它的检测识别程度的正确率做到精准,只能缩小排查范围;实际效果是:和正常程序混搭,它的检出率很高;但如果是一堆精心安排的文件,检出率就差强人意了。

     一、Fileless的方式

     Filelsss malware 通过 2 种方式入侵系统:

    ·  恶意软件代码在 RAM内存 或系统注册表中;

    ·  恶意软件通过脚本感染主机。

    ①在内存中运行,会创建一个注册表,通过启动注册表 BLOB 中保存的“混淆过的、含有反射 PE 加载器、可加载从注册表中加载 Base64 编码的 PE 文件”的一行PowerShell脚本。

    我们通常会dump出内存,但现在的具备反取证功能的恶意程序会破坏内存,主要有两种破坏方式:A、在写shellcode的位置填充数据进行抹除操作;B、禁用转储功能 ,制造蓝屏BSOD。

    ②通过脚本感染主机,主要是利用powershell脚本来下载shellcode,利用反射的方式载入到内存中,最后注入到进程中,全程无文件落地。

    ③最后一种:藏身于注册表的shellcode,这也是我们本篇的内容,如何识别?

    二、信息熵

    百度百科:熵定律是科学定律之最,这是爱因斯坦的观点。我们知道能源与材料、信息一样,是物质世界的三个基本要素之一,而在物理定律中,能量守恒定律是最重要的定律,它表明了各种形式的能量在相互转换时,总是不生不灭保持平衡的。熵,即为衡量混乱程度的度量,熵定律也被称为热力学定律。热力学第二定律,又称“熵增定律”,表明了在自然过程中,一个孤立系统的总混乱度、总稳定度(即“熵”)不会减小。

    在信息论中,熵被用来衡量一个随机变量出现的期望值。它代表了在被接收之前,信号传输过程中损失的信息量,又被称为信息熵。信息熵也称信源熵、平均自信息量。在1948年,克劳德·艾尔伍德·香农将热力学的熵,引入到信息论,因此它又被称为香农熵。

    三、程序的使用

 在Github中有个熵扫描器(https://github.com/woanware/reg-entropy-scanner),就是针对Fileless malware藏身注册表的扫描,官方描述如下:

    我将它编译成Exe,放在百度网盘中。

    ·链接:https://pan.baidu.com/s/1t1b16JoiHo8Y9_Fbbfsirw

    ·提取码:ft1q

    用法:reg-entropy-scanner.exe -i 1.hive -o c:\ls

    1.hive是你生成的注册表项目,这个应该会吧。

    在c:\ls目录下生成一个TSV格式的清单列表和一堆Bin文件,如下图:

    整理后,成这样:

         四、熵值的认定

    至于哪个键值下藏了shellcode,哪个熵值可以认定,我这里借用一篇老外文章来回答:

    虽然无法做到很精准,但作为一种新应用提了出来,还是有它的用武之地的,希望能在这块有更加深入地研究。


评论:0   参与:  8