勒索软件Locky、Tesalcrypt等使用了新的工具躲避检测

今天我们发现Locky勒索软件家族使用一种新的工具来躲避检测,并且可能已经感染了很多节点。
自从我们通过AutoFocus智能威胁分析服务发现42个Locky勒索软件存在一定的变化,结合全局数据发现勒索软件家族已经被新型的工具进一步加密了。攻击者不断地寻找新的技术绕过安全机制,根据AutoFocus的数据源和威胁情报,这种技术已经被广泛应用了。
在我们的分析中,多个恶意软件样本比较特殊的采用类似混淆API调用的,来源于嵌入的术语词典中,以解决系统的功能同时隐藏自己的真实功能以躲避静态分析工具。

传入API函数奇怪的变量名称
通过关键字来处理API的调用,因此这样可以降低恶意软件的检测率。这也是比较有趣的地方,然而这只是一系列干扰研究员中的第一步。
当我们查看这些新的样本时,这些加载库的导入表很明显都是不同的,并且在执行过程中根本都没有被使用。这些可以阻止任何通过导入表哈希值进行的有意义的检测。此外,这些可执行文件的版本信息表明,每个样本的信息都是多样性的,但是这些很明显的模式可以用于以后的鉴别。
LegalCopyright Copyright \xa9 2017
InternalName   Phoneticist
FileVersion     218, 158, 104, 112
CompanyName Cyber Power Systems Inc.
ProductName  Nesting Punk
ProductVersion 221, 202, 46, 180
FileDescription Skittles
 
 
 
LegalCopyright Copyright \xa9 2015
InternalName  Grated
FileVersion     82, 233, 256, 103
CompanyName SafeNet Inc.
ProductName     Geomagnetic Espadrilles
ProductVersion 176, 194, 91, 229
FileDescription Connectivity
 
在每个恶意软件的样本中我们发现都嵌入了不同的字符串,一些使用了一些未使用。

(用词列表)
仔细分析之后发现,作者使用大量的术语产生一些混淆的无意义的指令来试图让分析工作变得更加困难。下面图片中红色标注的地方是样本开始真正解压并通过PEB结构来定位Kernel32.dll基址。

(PEB开始处)
每次运行时,将一个Dword数据和0x958B9963进行异或之后判断是否为要找的Kernel32.dll。

(上图找到目标DLL之后保存至寄存器中)
现在有了Kernel32.dll的基址了,然后开始枚举函数,在执行过程中,不断的改变栈中的变量,来更深层次的达到误导的效果。

(函数迭代)

(找到目标)
一旦在kernel32.dll中找到VirtualAlloc函数,就开始在栈中安置一些变量来进一步达到隐藏和混淆的效果。在下图中,一旦栈布置好后,直接JMP至VirtualAlloc函数处,产生一个返回地址,这个地址最终存放解密数据。

(跳转至VirtualAlloc分配解密后数据的内存)

(解密数据值分配的空间)
一旦这个过程结束,恶意软件开始执行新解密的数据,并且还会通过迭代继续混淆自身。

(运行时自修正代码)
还是回到刚开始的一些不规则的传入API函数的参数,这个第一线索开始改变。在这个阶段,你可以按照自修改直到下一个横线处。

(代码继续跳转至新的偏移地址,修改随后的指令)

(JMP后的JMP,有一个隐藏很深的指令)
这个最终会导致调用LoadLibraryA伪造的名字从而不会被映射,而这样的话最终会调用错误从而返回NULL,效果就是服务没有响应但是达到混淆的地步。

(更多的误导)
一旦这些完成,开始分配其他的内存单元,然后开始拷贝并解密真正的恶意软件,和上面的过程相似。

(最后解压的Payload)
当我们提取这个Payload时,可以证实这个就是真正的Locky并且可以被检测到。

Palo Alto已经证实了这种应用在Locky中的技术,但是我们同样在TeslaCrypt 和 Andromeda 恶意软件中检测到,时间追溯到2016.3.14。需要重点提及的是这种技术可以被动态分析检测出来,这种和WildFire的静态分析结合的技术可以保护Palo Alto网络用户免于威胁。

勒索软件Locky、Tesalcrypt等使用了新的工具躲避检测的更多相关文章

  1. 【翻译】旧技术成就新勒索软件,Petya添加蠕虫特性

    原文链接:https://blogs.technet.microsoft.com/mmpc/2017/06/27/new-ransomware-old-techniques-petya-adds-wo ...

  2. 不修改加密文件名的勒索软件TeslaCrypt 4.0

    不修改加密文件名的勒索软件TeslaCrypt 4.0 安天安全研究与应急处理中心(Antiy CERT)近期发现勒索软件TeslaCrypt的最新变种TeslaCrypt 4.0,它具有多种特性,例 ...

  3. 发送垃圾邮件的僵尸网络——药物(多)、赌博、股票债券等广告+钓鱼邮件、恶意下载链接、勒索软件+推广加密货币、垃圾股票、色情网站(带宏的office文件、pdf等附件)

    卡巴斯基实验室<2017年Q2垃圾邮件与网络钓鱼分析报告> 米雪儿 2017-09-07 from:http://www.freebuf.com/articles/network/1465 ...

  4. ocky勒索软件恶意样本分析1

    locky勒索软件恶意样本分析1 1 locky勒索软件构成概述 前些时期爆发的Locky勒索软件病毒这边也拿到了一个样本,简要做如下分析.样本主要包含三个程序: A xx.js文件:Jscript脚 ...

  5. ocky勒索软件恶意样本分析2

    locky勒索软件恶意样本分析2 阿尔法实验室陈峰峰.胡进 前言 随着安全知识的普及,公民安全意识普遍提高了,恶意代码传播已经不局限于exe程序了,Locky敲诈者病毒就是其中之一,Locky敲诈者使 ...

  6. android86 监听SD卡状态,勒索软件,监听应用的安装、卸载、更新,无序广播有序广播

    * 添加权限 <uses-permission android:name="android.permission.RECEIVE_SMS"/> * 4.0以后广播接收者 ...

  7. Android勒索软件研究报告

    Android勒索软件研究报告 Author:360移动安全团队 0x00 摘要 手机勒索软件是一种通过锁住用户移动设备,使用户无法正常使用设备,并以此胁迫用户支付解锁费用的恶意软件.其表现为手机触摸 ...

  8. 360安全中心:WannaCry勒索软件威胁形势分析

    猫宁!!! 参考链接:http://zt.360.cn/1101061855.php?dtid=1101062360&did=210646167 这不是全文,而是重点摘要部分. 2017年5月 ...

  9. 网络安全意识有多重要?SamSam勒索软件敲诈了近600万美元

    近年来,对于网络犯罪分子来说,勒索软件已成为数百万美元的黑市业务,SamSam就是一个很好的例子. 中国信息安全新研究显示,自2015年12月以来,SamSam勒索软件从受害者手中敲诈了近600万美元 ...

随机推荐

  1. Scrum立会报告+燃尽图(十二月十一日总第四十二次):贡献分配和收集用户报告

    此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2484 项目地址:https://git.coding.net/zhang ...

  2. LeetCode 638 Shopping Offers

    题目链接: LeetCode 638 Shopping Offers 题解 dynamic programing 需要用到进制转换来表示状态,或者可以直接用一个vector来保存状态. 代码 1.未优 ...

  3. Beta版本冲刺(四)

    目录 组员情况 组员1(组长):胡绪佩 组员2:胡青元 组员3:庄卉 组员4:家灿 组员:恺琳 组员6:翟丹丹 组员7:何家伟 组员8:政演 组员9:黄鸿杰 组员10:刘一好 组员11:何宇恒 展示组 ...

  4. 第二章:蓝色巨人 IBM公司

    COBOL(面向商业的通用语言) DEC(数字设备公司)华生实验室 造成失败的原因: 1,没有经营终端消费型产品 2,技术的流失 3.没有在意对手 成为的方法:合并,保守,谨慎 研究员的工作: 1,发 ...

  5. 常用的cpl 命令 运行直接打开控制台的简单方法

    转载百度百科   工作中处理 windows机器 有时候 打开 网路修改ip地址特别繁琐,所以找了下 快速打开一些简单的控制台 能提高工作效率.   (Control Panel extension) ...

  6. Android 出现 maybe missing INTERNET permission 错误问题解决

    在AndroidManifest.xml中,需要进行如下配置:<manifest> //加入以下许可 <uses-permission android:name="andr ...

  7. 一本通1635【例 5】Strange Way to Express Integers

    1635:[例 5]Strange Way to Express Integers sol:貌似就是曹冲养猪的加强版,初看感觉非常没有思路,经过一番艰辛的***,得到以下的结果 随便解释下给以后的自己 ...

  8. 【Java并发编程】之十四:图文讲述同步的另一个重要功能:内存可见性

    加锁(synchronized同步)的功能不仅仅局限于互斥行为,同时还存在另外一个重要的方面:内存可见性.我们不仅希望防止某个线程正在使用对象状态而另一个线程在同时修改该状态,而且还希望确保当一个线程 ...

  9. POJ 3436 ACM Computer Factory (网络流,最大流)

    POJ 3436 ACM Computer Factory (网络流,最大流) Description As you know, all the computers used for ACM cont ...

  10. 21天实战caffe笔记_第三天

    1 深度学习工具汇总 (1)  caffe : 由BVLC开发的基于C++/CUDA/Python实现的卷积神经网络,提供了面向命令行.Matlab和Python的绑定接口.特性如下: A 实现了前馈 ...