导语:Samsam的新变体又出现了,自2016年SamSam被发现后,该勒索软件就一直处于活跃中,且每次攻击都有新的变体出现。最近,Malwarebytes Labs就对最新的SamSam勒索软件进行了分析。
Samsam(也称为Samas 或Samsa)的新变体又出现了,自2016年SamSam被发现后,该勒索软件就一直处于活跃中,且每次攻击都有新的变体出现。最近,Malwarebytes Labs就对最新的SamSam勒索软件进行了分析。
在阅读本文之前,我想先强调的是,虽然SamSam的功能发生了很大的变化,但这些功能的变化并不一定会使它变得更加危险,有时是为了让它变得更难以检测或追踪。
将早期样本与最近的样本进行比较时,研究人员可以发现有一点是不变的,就是SamSam的有效载荷(实际执行磁盘加密的代码)是在运行时才解密的。这是SamSam最显着的特征,也是其独一无二的特征。这个加密的有效载荷方案,也解释了为什么找到实际有效载荷代码的样本是如此的困难。
新版和旧版SamSam之间的主要区别是以下两部分:
1.使用的模块的不同;
2.模块之间的相互作用不同;
注意:在进行分析时,研究人员不会覆盖旧版本的代码,然后再讨论新版本,而是通过更新的SamSam代码,与旧版本进行一些比较,以便了解其演变过程。
最近的SamSam分析
SamSam的攻击是由五个主要组成部分,其中四个是实际文件,第五个是攻击者手动设置的文件。
文件1是一个批处理文件,其中包含勒索软件的一些设置,并且是攻击者手动执行的唯一部分。它负责运行一个.NET EXE,最终解密一个加密的stub文件,攻击者以密码作为命令行参数,在受攻击的计算机上执行bat文件。这是在.NET文件使用它进行解密之前传递下来的密码。在旧版本中,似乎这个bat文件不在传递的密码中。研究人员分析,攻击者可能直接执行了.NET文件。
各部分详情如下:
在本文研究人员分析的样本下,mswinupdate是“runner”,负责调用。基本上,“runner”是加载程序文件,它是一个.NET exe文件,它负责在当前文件夹中查找要解密的勒索软件的恶意载荷。
接下来,你会看到SET密码行,就像上面谈到的一样,它通过命令行参数接收密码。
由于该密码是在不使用文件的情况下输入的,且攻击者在攻击完成后还会擦除一些文件和日志,所以研究人员可能无法重构完整的手动攻击场景,这就是为什么对主要载荷进行分析时会有这么大困难的原因。正因为如此,理论上,研究人员能够获得密码的唯一方法就是在SamSam正在攻击时,进行拦截。
再看看bat文件里的其余内容,有些参数的作用不言自明。再看看下一行代码执行“runner”,然后自我删除,runner和加密DLL。
上面是文件2——“runner”,即有效载荷解密器和启动器。这个文件没有被混淆,功能也很简单。它负责搜索扩展名为.stubbin的文件的目录,该文件将被攻击者放置在那里。stub文件是加密的勒索软件,它会立即从文件中读取字节,然后从磁盘中删除文件。该文件的内容是AES加密的,所以即使有stubbin文件也不能帮助研究人员进行分析,除非他们获得攻击者手动输入的密码。
stub文件调用了assembly.Load函数,该函数会动态加载.NET文件。另外,该函数会接收一个参数,它是解密方法的输出内容,这意味着这个输出的参数会解密stub文件,将其转换为适当的PE,然后动态加载它。从bat文件输入的密码是args [0],而Arg_4E_0是加密的字节流,然后它启动解密的文件进行执行。
接下来,谈谈文件3,在最近的SamSam版本中,解密代码包含在单独的DLL中,而在旧版本中,它全部包含在runner EXE中。因此,旧版本只有三个文件,而不是四个。
以下是解密代码的屏幕截图:
在整个程序代码中,你将看到以下内容。
这也是最近版本中添加的内容,由于这些内容还未被使用过,研究人员分析,这可能只是用于混淆或删除签名而插入的垃圾代码。
最后,在文件4中,加密的恶意软件有效载荷的内容为* .stubbin。
SamSam的有针对性攻击
在本文的分析中,研究人员谈了很多关于密码以及攻击者手动输入密码的事实。这是SamSam活动最重要的一点。对于一名研究人员来说,在不知道密码的情况下,他们是无法分析SamSam代码的。但是更重要的是,研究人员甚至无法在受害者或测试机器上执行SamSam,这意味着只有攻击者或截获了SamSam密码的人,才能执行此攻击。
由此可见,SamSam和较常见的勒索软件确实有所不同,它不是那种被随意滥用的勒索软件,事实上,SamSam也确实无法自动传播。
意外下载并执行此恶意软件的受害者完全不会受到攻击,因为有效载荷需要密码才能运行。因为要允许得需要SamSam的攻击者手动设置,这意味着它是为了特定目的而开发的,只进行有针对性的攻击。这就是SamSam如此有趣的原因,它不像其他恶意载荷一样,只要安装了就开始发起攻击,相反,攻击者更愿意让有效载荷保持秘密运行。
IoC
BAT文件
9C8AD4147F5CBDDA51317A857D75720C84BDDB16338DABE374A3E60C64C2F0DE
加密DLL
DA9C2ECC88E092E3B8C13C6D1A71B968AA6F705EB5966370F21E306C26CD4FB5
跑步者
738C95F5BFE63A530B200A0D73F363D46C5671C1FCBB69C217E15A3516501A86
Runner
594B9B42A2D7AE71EF08795FCA19D027135D86E82BC0D354D18BFD766EC2424C