资讯专栏INFORMATION COLUMN

暗渡陈仓:披着图片外衣的特洛伊木马

qujian / 611人阅读

摘要:下图显示了通过修改此注册表项禁用的程序的列表。同样利用修改注册表项禁用安全组件。通过对注册表项键值进行设置,设置为禁用,就可以关闭的保护模式。注册表项的种类是,设置成就是禁用设置成就是启用。

InfoStealer是一种木马,功能为收集受害计算机系统用户的敏感信息,并将其转发到一个预定的位置,而搜集的信息包含财务信息,登录凭据,密码或者都有,这些信息可能被出售在黑市上。AVAST将其命名为MSIL:Agent-AKP。

下面,我们就来看看一个通过exploit kit(全自动攻击工具)部署在受害者电脑上的恶意.NET文件。用反编译器打开该文件后,发现资源中只包含如下干扰图片:

以位图方式打开图片,一个像素一个像素的处理。对于每个像素,它并不是非黑即白(ARGB不等于0×00000000),3种颜色提取并保存在一个列表中,一个值接着一个值,一列接着一列。

当我们提取出整张列表后,得到如下的结果。注意MZ标识,正是可执行文件的开头:

很明显,我们正在对付一个obfuscator(混淆器),它从位图中转换数据,构造可执行文件。

单单的查看这个位图文件,并不能立即意识到它还存储着可执行文件。对照BITMAPINFOHEADER和它的bitHeight项,我们可以看到它的值是0X134。

根据文档,如果biHeight是正值,相应的位图就是自底而上的DIB(与设备无关的位图),它的起始点在较低的靠左的位置。

下图展示了这个可执行文件的前9个字符是如何隐藏在位图中的。一个像素包含3个字符,随后的下一列是下一组3字符(自底而上)。我们发现红色标识的字符正是可执行文件的MZ特征:4D5A90 000300 000004。

仔细观察Payload

Payload从位图中被提取出来,原始文件有两个位图,其中一个解析后是用.NET写的加载器,装载进内存并执行第二个二进制文件。第一个二进制文件通过修改zone.identifier 来修改数据流。 

硬盘上的任何文件都被赋予了:zone:identifier数据流,它包含了这个原始文件的zone信息。如果文件来自Internet,它的zone值是3;如果来自本地,zone值就是0。

这里的恶意文件试图将zone值设为2,表明是URLZONE_TRUSTED。

这个区域的存在是由于安全原因考虑。某些程序/操作系统可能会报告与此类文件有关的安全信息。

第二个汇编码是从第二个位图源文件中提取的。它通过创建Win7zip注册表Uuid值来生成。

通过创建[HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options],运行之后将禁用几个安全方案,将调试器的值设置成一个不存在的exe文件路径,每当用户试图使用受影响的程序时,Windows将运行“调试”出来的值来代替原本的值,这样就可以成功的禁用此类程序。下图显示了通过修改此注册表项禁用的程序的列表。

同样利用修改注册表项禁用安全组件:

[HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersionPoliciesExplorer]。将HideSCAHealth的值设置成1来禁用Action Center。Notification balloons的禁用可以通过修改TaskbarNoNotification的注册表项来达成。

在[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionWindowsBackup],修改DisableMonitoring注册表项,可以禁用Windows备份通知。

通过对注册表项2500键值进行设置,设置为3-禁用,就可以关闭Internet Explorer的保护模式。

如果发现装有如下的FTP软件,就会窃取它们的认证日志:

FileZilla

SmartFTP

CoreFTP

FlashFXP

WinSCP

FTP Commander

可以在它的body中看到下列字符:

FileZillasitemanager.xml

SmartFTPClient 2.0Favorites

SmartFTP

SoftwareFTPWareCoreFTPSites

FlashFXP

Sites.dat

Quick.dat

SoftwareMartin PrikrylWinSCP 2Sessions

%sFTP Commander

%sFTP Commander Deluxe

Ftplist.txt

它同样可以修改注册表项:

注册表项[HKEY_LOCAL_MACHINESoftwareJavaSoftJava Plug-in{version}UseJava2IExplorer]的种类是REG_DWORD,设置成0的意思就是禁用JAVA;设置成1的意思就是启用JAVA。

注册表项 [HKEY_CURRENT_USERSoftwareAdobeAcrobat Reader{version}PrivilegedProtectedMode]的种类是REG_DWORD,设置成0就是禁用;设置成1就是启用。

(木马)作者力求保留将来再次感染该系统的可能。一旦用户再次登录exploit kit,感染将再次发生。

InfoStealer同时也向作者报告被入侵电脑上安装的一些软件,通过判断是否存在如下的文件、目录或者注册表键值:

SoftwareValveSteam

jagexcache

SOFTWAREBlizzard Entertainment

.minecraft

League of Legends

SoftwareSkype

例如,“jagexcache”的出现表明在线游戏RuneScape,“.minecraft”表明Minecraft,注册表键值“SOFTWAREBlizzard Entertainment”或者“SoftwareValveSteam”告诉我们或许机器上安装着这来自这些游戏厂商的游戏。“League of legends”和”SoftwareSkype”这些字符不言自明。

InfoStealer禁用了一些系统服务。Wuauserv就是“Windows Update service”,wscsvc就是“Security Center”,mpssvc就是“Windows Firewall”,BITS是“Background Intelligent Transfer Service”。

它也拥有“洪水”攻击目标服务器的能力。

当我们试图搜寻上面提及的命令时,我们发现了一个地下论坛,如下描述:

通过向[HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun]下添加“AudioDriver32”值,就能达到永远存在的效果,即使机器重启。

InfoStealer木马通过展示如下的错误信息提示窗的聪明方式来迷惑用户,使其可以提升权限运行。

无论点“Restore files”还是“Restore files and check disk for errors”后,都执行下面j的代码。

InfoStealer使用ShellExecute函数执行自身。要注意“runas”命令,试图以提升的权限运行程序。如果一个用户被提示UAC(用户访问控制),他很可能会允许该程序运行,因为它需要“restore his corrupted document files”。

如果用户点击了“More details about this error”, 如下的页面将会打开。它是正常的微软社区页面,用户在此提问、答复相关问题。

这里的问题正是与“Corrupted Documents Folder”相关的,与展现给受害用户的出错信息窗口相关。

InfoStealer扫描所有正在运行的进程以及它们的启动命令行参数。这些命令行会被解析,如果匹配如下的模式,它们还会被报告给(木马)作者。这些模式代表着比特币挖掘的进行。如果cgminer在入侵电脑上运行,将会被报告。

所有获取的数据存放在[HKCUSoftwareClassesCLSID{GUID}]注册表键值中,这些信息稍后会被发送给攻击者。

总结

上面所展现的恶意软件试图窃取多种程序的认证信息,或者至少报告它们的存在。通过修改多处系统注册表值来禁止安全软件或者action center的通知服务的运行,且该信息窃取者针对的对象为终端用户。


原文 Your documents are corrupted: From image to an information stealing trojan
翻译 IDF实验室 李天星

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/11104.html

相关文章

  • 理想终将照进现实,算法也终将回归本来之美

    摘要:江湖传闻年,也就是比特币创立初期,向中本聪发难,认为必须改变比特币的共识机制并提出改进方案。至此,单纯的机制已无完备性可言,也背离了中本聪的设计初衷。理想终将照进现实,算法也终将回归本来之美。 江湖传闻:2010年,也就是比特币创立初期,BM向中本聪发难,认为必须改变比特币的共识机制并提出改进方案。不过,傲娇的中本聪本尊并没有采纳,他在强调了比特币去中心化的重要性和必要性之后,霸气回应...

    calx 评论0 收藏0
  • 深浅拷贝

    摘要:好像栗子不是那么好吃,那我们来看看下面的解释吧深浅拷贝深拷贝和浅拷贝只针对像这样的引用类型数据。深拷贝则是开启一个新的栈,两个对象对应两个不同的引用地址,修改一个对象的属性,不会改变另一个对象的属性。 拷贝顾名思义就是复制,但是它并不简单哦,拷贝分为深浅拷贝,那么啥是深拷贝啥是浅拷贝呢,让我们来举个栗子,浅拷贝就是当你拷贝别人的U盘里东西时,却没有新建文件存放在自己的电脑里,直接在里面...

    yck 评论0 收藏0
  • 为什么你需要计算神经科学(上)

    摘要:至此揭开计算神经科学的大幕。这算是数学生物学,计算神经科学和人工智能的共同起点。大脑太擅长模式识别,你看了什么是因为你想要看到什么,那个什么早在你的大脑预先存在。 我想大家看到这个题目已经被吓到了。什么? 计算神经科学? 神经科学已经够冷门吓人的了, 还计算神经科学?究竟是什么? 是不是除geek外并没什么卵用? 听铁哥给您道来。 先说计算神经科学是什么,简而言之,计算神经科学是把大脑看成一...

    qianfeng 评论0 收藏0

发表评论

0条评论

qujian

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<