【技术分享】ScanPOS,通过Kronos传播的新型POS恶意软件

admin 2023-12-07 17:13:29 AnQuanKeInfo 来源:ZONE.CI 全球网 0 阅读模式

 https://p5.ssl.qhimg.com/t0131afcf92497ba2c2.jpg

翻译:shan66

预估稿费:100RMB(不服你也来投稿啊!)

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿

前言

不久前,安全研究人员又发现了一个全新POS恶意软件家族——ScanPOS。

安全研究人员在分析Kronos网络钓鱼活动过程中,发现了一个含有下载银行恶意软件Kronos的恶意宏指令的相关文档。当Kronos运行时,它的payload将进一步下载另外几种恶意软件,但是引起他们注意的是一种新型的信用卡转储软件,该软件的检测难度非常大。根据在这款恶意软件中发现的字符串,安全研究人员将其正式命名为ScanPOS,以便于进行持续的跟踪和研究。

C:Usersexampledocumentsvisual studio 2010Projectsscan3Releasescan3.pdb

在写这篇文章的时候,ScanPOSVirustotal网站上的检出率只有1/55               

http://p4.qhimg.com/t01f5718cbbe4d83a59.png

ScanPOS是一个新的银行恶意软件家族。虽然它的基本功能与其他POS恶意软件基本相同,但它的隐身功能却是非常出色的。为了逃避杀毒软件的检测,ScanPOS软件做的非常小,这可以帮助轻松混入生产环境中。当代码被过度加壳后,反而容易被通用的启发式算法所捕获。


网络钓鱼:

实际上,Kronos是通过非常简单的网络钓鱼邮件来传播这款新型恶意软件的,电子邮件的内容如下所示:

An Employee has just been terminated.
Name: Tanner Williamson
Employee profile: EmployeeID-6283.doc
Emplid: 2965385
Rcd#: 0
Termination Date: 11/17/2016

相关的邮件头部如下所示:

TIME-STAMP: "16-11-14_13.44.23"
CONTENT-DISPOSITION: "attachment; filename='EmployeeID-6283.doc'"
X-VIRUS-SCANNED: "Debian amavisd-new at hosting5.skyinet.pl"
Subject : An Employee has just been terminated.
From: HR <[email protected]>
Mail-From: [email protected]
1st rec: hosting23.skyinet.pl
2nd rec:hosting23.skyinet.pl

当EmployeID-6283.doc启用宏时,那么将下载Kronos的Payload: 

profile.excel-sharepoint[.]com/doc/office.exe

下载完成后,就会执行它。之后,Kronos将通过下面的地址来下载并执行ScanPOS

 http://networkupdate[.]online/kbps/upload/a8b05325.exe.

 

转储信用卡信息:

在执行时,该恶意软件将获取有关当前进程的信息并让用户调用GetUserNameA。同时,它还会通过SeDebugPrivilege(见下文)来进行权限检查,以确保该恶意软件有权查看其他进程的内存空间。

http://p6.qhimg.com/t01a49c236c482c3077.png

然后,该恶意软件将进入无限循环,来转储计算机上面的进程内存,搜索信用卡轨道数据。在此循环过程中,该恶意软件将使用Process32FirstW / Process32Next来遍历通过CreateToolhelp32Snapshot获取的进程列表中的所有进程。

http://p8.qhimg.com/t01483894d6c86af1a0.png

迭代器通过使用OpenProcess获取进程的句柄,然后通过检查一个简单的白名单来过滤掉不必要的系统进程:

http://p2.qhimg.com/t019dc8274d8ee39687.png 

如果进程的名称通过了白名单,那么该恶意软件将进一步通过调用VirtualQueryEx以及ReadProcessMemory函数来获取该进程的内存信息。

  http://p2.qhimg.com/t015e6daa02ba334081.png

一旦取得了进程内存,就可以开始扫描信用卡轨道数据了,其背后的主要逻辑是由函数0x4026C0实现的。

这段代码首先检查相应的标记符号(sentinel checks),并且从3,4,5或6开始下手。

http://p7.qhimg.com/t01ca7ff6f539525ef4.png

然后,该恶意软件将使用自定义的搜索程序(而不是规则表达式)来查找潜在的候选数字。

http://p0.qhimg.com/t0146ac064a74046d2b.png

该恶意软件对信用卡信息进行多次检查后,它会利用Luhn算法对潜在卡号进行基本验证。

 http://p6.qhimg.com/t01d3bbb9c268d50e64.png 

当它找到了通过Luhn算法验证的潜在候选号码时,它将继续搜索数字(介于0到9之间的任意值),直到它命中轨道数据的结束标记“?”为止。

http://p6.qhimg.com/t011a7f7f97df6c8d90.png


网络连接:

一旦找到潜在的卡号,就会通过HTTP POST将其发送到invoicesharepoint [。] com。

http://p3.qhimg.com/t0181c938fd1aead744.png 


结束语

ScanPOS是一款最近发现的银行恶意软件,当前只有一个反病毒引擎将这个可执行文件标记为恶意代码。在本文中,我们对该恶意软件进行了全面的分析,希望对大家有所帮助。


weinxin
版权声明
本站原创文章转载请注明文章出处及链接,谢谢合作!
评论:0   参与:  0