当前,世界各地安全公司、执法机关和情报机构都把Lazarus Group归因于朝鲜的国家支持黑客组织,随着Lazarus Group自身网络攻击工具的进化发展,它们可以轻松实施DDoS僵尸网络攻击和数据擦除攻击,达到破坏性目的,也能顺利开展特定公司网络和银行SWIFT系统入侵,使各种内部资料和大量资金唾手可得。本报告中,我们着重对Lazarus Group从未被外界披露的一个加密货币攻击工具集进行分析,该工具集被Lazarus Group广泛用于全球加密货币组织、个人和相关机构的入侵攻击。
这个被称为PowerRatankba的新工具集包括使用链接和附件的高针对性钓鱼攻击,以及针对加密货币个人和公司的大规模普遍性电邮钓鱼攻击,在分析中,我们还发现PowerRatankba的恶意变体支持销售终端系统(POS)的信息卡数据窃取框架,这可能是首个具备该种功能的国家支持型恶意软件实例。
简介
Lazarus Group的攻击日趋以经济利益为目的,似乎对当前价格疯涨的加密货币表现出了极大兴趣。我们在大量的多级攻击中发现了感染相关组织和个人的,以加密货币攻击为目的的各种复杂控制后门和恶意软件,除此之外,攻击者为实现比特币和其它电子货币窃取,还使用Gh0st远控木马来收集受害者加密货币钱包和交易数据。
众所周知,Lazarus Group曾成功对几家知名电子货币公司和交易所实施了数据窃取,根据这些攻击行为,相关执法机构判断Lazarus Group目前估计积累了价值近1亿美元的加密货币资产。在2016年底和2017年初,Lazarus Group针对几家银行和金融机构的入侵中,其第一阶段下载植入恶意软件名为Ratankba,它被攻击者主要用于前期渗透侦察,趋势科技公司甚至把它形容为“地形测绘工具”。而在该报告中,我们详细分析了一种基于PowerShell,与Ratankba相似且名为PowerRatankba的新型恶意植入软件。我们认为,基于Ratankba在今年早些时候被公开曝光披露,而PowerRatankba很可能会成为Lazarus Group继续以经济利益为攻击目标的升级迭代利用工具。
PowerRatankba Downloader
在本节中,我们将详细介绍攻击者实现PowerRatankba部署运行的不同入侵途径和行为,总的来说,我们发现了攻击者使用的6种不同入侵向量:
一种名为PowerSpritz的新型Windows执行程序;
一种恶意Windows快捷方式LNK文件;
使用两种不同的技术的多个恶意HTML帮文件助(CHM);
多个JavaScript(JS)下载程序;
两个基于宏的Office文档;
用来诱骗受害者,且托管在国际化域名基础设施上的两个后门化加密货币流行应用程序。
PowerRatankba攻击时间线
据我们掌握的数据显示,PowerRatankba的最早利用时间为2017年6月30号左右,它在针对某家加密货币机构高管的钓鱼邮件攻击中被我们发现,在其它攻击活动中各种PowerRatankba变体被陆续使用。攻击者通过包含比特币黄金(BTG)或Electrum钱包主题的钓鱼邮件附件或链接来部署PowerRatankba。以下为其攻击时间线:
PowerSpritz
PowerSpritz是一个Windows可执行程序,它使用少见的Spritz加密算法来隐蔽其攻击载荷(Payload)和恶意PowerShell命令,另据观察,攻击者通过使用TinyCC短链接服务来跳转和托管PowerSpritz攻击载荷。早在2017年7月初,Twitter上有人分享了他们发现的利用假冒Skype更新来诱骗用户点击的攻击证据,该假冒更新为短链接hxxps://skype.2[.]vu/1,点击之后链接会重定向到托管攻击载荷的服务器hxxp://201.211.183[.]215:8080/ update.php?t=Skype&r=update,由此实现Payload运行。
之后,我们还发现了多个传播PowerSpritz的短地址跳转,如假冒Telegram的:
hxxp:// telegramupdate.2[.]vu/5 -> hxxp://122.248.34[.]23/lndex.php?t=Telegram&r=1.1.9
假冒Skype的:
hxxp://skypeupdate.2[.]vu/1 -> hxxp://122.248.34[.]23/lndex.php?t=SkypeSetup&r=mail_new
hxxp://skype.2[.]vu/k -> unknown
PowerSpritz利用Spritz加密算法并以“Znxkai@ if8qa9w9489”为密码加密有效的Skype或Telegram安装程序,之后以句柄GetTempPathA获取程序安装目录,程序安装后会执行一个假冒更新,最终,会以相同的加密密码执行PowerShell命令,下载PowerRatankba的初始阶段部署程序:
上图中可以看到, PowerSpritz还会从地址hxxp://dogecoin. deaftone[.]com:8080/mainls.cs获取一个Base64加密脚本,脚本执行后,又会从另一地址 hxxp://vietcasino.linkpc[.]net:8080/search.jsp实现PowerRatankba的C&C命令控制:
恶意Windows快捷方式(LNK)文件
我们在一个名为““Scanned Documents.zip”的压缩包中发现了恶意LNK文件,它使用AppLocker绕过方式,从TinyURL短地址 hxxp://tinyurl[.]com/y9jbk8cg 获取Payload:
恶意HTML帮助文件(CHM)
据我们数据发现,在10月、11月和12月期间,受害者曾将多个恶意CHM文件上传到了多家防病毒扫描服务中,这些恶意CHM文件包括:
一个写得相当混乱的,用来创建浪漫意味网站的帮助指南文件
来自Orient Exchange Co交易公司名为ALCHAIN区块链技术的文档
开发首次代币发行平台(ICO)的协助要求
Falcon加密货币首次代币发行平台(ICO)白皮书
加密货币交易平台的开发应用要求
电子邮件营销软件协助要求
这些恶意CHM文件都使用了短地址来执行相应恶意代码,并配合两种技术方式来获取远程Payload。第一种方式为使用VB脚本和BITSAdmin工具,首先从远程地址 hxxp://www.businesshop[.]net/hide.gif 获取下载脚本,之后,该下载脚本被保存为C:\windows\temp\ PowerOpt.vbs,一旦此脚本被执行,将会从远程地址hxxp://158.69.57[.]135/theme.gif下载PowerShell命令,并保存为 C:\Users\Public\Pictures\opt.ps1,以实现PowerRatankba加载。下图为CHM文件中的PowerRatankba downloader VB脚本:
下图为用BITSAdmin工具通过HTTP获取Payload的方式:
JavaScript Downloader
在11月,攻击者以加密货币交易所Coinbase、Bithumb和Falcon Coin为主题的恶意ZIP文件,感染攻击特定目标人物。这些恶意文件中都包含了通过JavaScript加密混淆器编码的一个JavaScript downloader程序,程序逻辑非常简单,首先,从 hxxp://51.255.219[.]82/ theme.gif获取一个PowerRatankba.B下载脚本,然后保存到 C:\Users\Public\Pictures\opt.ps1中等待执行。下图为编码混淆的 falconcoin.js脚本:
下图为解密后的 falconcoin.js和其PDF附属诱饵下载链接:
上述脚本运行后,会随即从 hxxp://51.255.219[.]82/files/download/falconcoin.pdf下载PDF诱饵文档:
基于宏的Office恶意文档
我们发现基于宏的一个Word文档和一个Excel电子表格,其中Word文档是名为“report phishing.doc”的美国国税局(IRS)内容的主题附件,该钓鱼邮件假冒“钓鱼攻击警告”邮件,并以@mail.com地址发送。比较搞笑的是,发件人地址被伪造为phishing@irs.gov,且邮件内容也像是从IRS官网网页复制过来的:
手段类似,从hxxp://198.100.157[.]239/hide.gif 下载脚本,保存为 C:\ Users\Public\Pictures\opt.vbs,然后通过hxxp://198.100.157[.]239/theme.gif,获取Powershell脚本,并保存为C:\Users\Public\Pictures\opt.ps1。
另一个恶意宏文档为bithumb.xls,它伪装为比特币交易公司Bithumb的内部文档,该文档被压缩在 Bithumb.zip中,并和名为“About Bithumb.pdf“的诱饵文档一起被发送:
该恶意XLS文档宏中包含了一个Base64编码的PowerRatankba下载脚本,它会从 hxxp://www.energydonate[.]com/images/character.gif获取脚本,并保存为 C:\ Users\Public\Documents\ProxyAutoUpdate.ps1。以下为bithumb.xls中的Base64加密downloader脚本:
后门化加密货币应用安装程序
最近,大量钓鱼邮件以假冒加密货币程序下载更新或网站页面为手段发起攻击,假冒页面的大多版本更新下载都指向官网地址,只有Windows版本下载更新指向架设在攻击者网站的恶意程序,这些程序都是后门化的恶意更新,其中内置了下载PowerRatankba植入体的Python代码命令。
其中一例攻击样本为,伪装为比特币黄金(BTG)钱包应用,和假冒恶意网站hxxps://xn--bitcoingld-lcb[.]org/,邮件内容中又内置了一个与合法比特币黄金官网(https://bitcoingold.org/)相似的恶意网站hxxps://bitcoingöld[.]org,注意后面网站字母o上多了两点ö。钓鱼邮件发件地址为 info@xn--bitcoingod-8yb[.]com、info@xn--bitcoigold-o1b[.]com 和tech@xn--bitcoingld-lcb[.]org。
点击该链接后,会自动从恶意网站bitcoingöld下载hxxps://bitcoingöld[.]org/bitcoingold.exe的Payload,另外,我们还从第三方病毒检测服务中发现了其它伪装为ElectronGold-1.1.1.exe 和 ElectronGold-1.1.exe 恶意Payload程序。
另一例攻击样本为,伪装为Electrum的假冒更新,并会指向与Electrum合法官网(https://electrum.org/)相似的假冒网站(https://electrüm.org/),如下图所示:
当受害者点击主题为“New Electrum Wallet Released“的钓鱼邮件链接之后,会跳转到假冒网站https://electrüm.org/显示钱包程序更新下载,上图红框下载链接最终会从另一恶意网站下载hxxps://xn--electrms2a[.]org/electrum-3.0.3.exe,其为后门化的PowerRatankba下载程序。
下图为假冒网站https://electrüm.org的HTML页面信息:
植入程序PowerRatankba描述和分析
PowerRatankba与Ratankba作用相同:作为第一阶段网络侦察工具,并对感兴趣的目标部署后续植入程序。与其前身类似,PowerRatankba利用HTTP进行C&C通信,执行后,PowerRatankba首先通过BaseInfo HTTP POST方式,将包含计算机名称、IP、操作系统启动时间和安装日期、系统语言等感染设备详细信息发送到C&C服务器上。另外,PowerRatankba针对端口139、3389和445的打开/关闭/过滤,都有相应的进程执行列表,并且变体PowerRatankba.B还会通过WMIC命令执行输出。
下图为 PowerRatankba.A 的HTTP POST 信息回传:
下图为PowerRatankba.B的 WMIC 命令信息回传:
PowerRatankba.A
PowerRatankba.A的HTTP GET请求信息:
PowerRatankba.A的C&C控制命令:
PowerRatankba.B
PowerRatankba.B的HTTP GET请求信息:
PowerRatankba.B的C&C控制命令:
PowerRatankba的持久驻留方式
为了实现持久驻留,PowerRatankba.A会将一个JS文件appView.js保存到受害者的系统启动开始菜单中,每当受害者帐户登录系统时,该文件就会自动执行。持久化文件appView.js中包含XOR编码的PowerShell脚本,用于从硬编码URL中检索Base64编码的PowerShell命令,如URL地址脚本hxxp://macintosh.linkpc[.]net:8080/mainls.cs中,包含的XOR密钥为”ZWZBGMINRQLUSVTGHWVYANJHTVUHTLTUGKOHIYOXQEFEIPHNGACNKMBWGRTJIHRANIIZJNNZHVF”。下图为持久化文件appView.js:
PowerRatankba.B根据当前感染账户是否具备管理员权限而存在两种持久化技术,它会首先通过命令 “whoami /groups | findstr /c:”S-1-5-32-544” | findstr /c:”Enabled group” && goto:isadministrator’’检查当前用户权限,如果当前用户是管理员权限,则会从硬编码URL地址下载PowerShell脚本,并保存为C:/Windows/System32/WindowsPowerShell/v1.0/Examples/detail.ps1,最终会创建一个系统计划任务,实现在启动菜单中植入恶意程序下载脚本;如果当前用户不是管理员权限,则会从硬编码URL地址中下载一个VB脚本,并保存到用户系统启动菜单中,如 PwdOpt.vbs或ProxyServer.vbs。
PowerRatankba.B第二阶段植入- Gh0st RAT
PowerRatankba.B会向多种运行加密货币的应用设备中植入Gh0st远控(RAT), Gh0st远控使用内存注入技术,经DES解密后发现,其反弹指向地址为 hxxp://180.235.133[.]235/img.gif :
上述假冒的gif图片实际为一个Base64编码的加密器,它会把Gh0st远控加密作为最终Payload部署,并实现AES在CBC模式下的加密,AES加密密钥为”2B7E151628AED2A6ABF7158809CF4F3C“,AES初始值(IV)为“000102030405060708090A0B0C0D0E0F” :
销售终端系统(POS)恶意软件RatankbaPOS
除了疯狂掠夺数百万美元的加密货币之外,我们还发现 Lazarus 在韩国开展了针对销售终端系统(POS)的数据窃取,而其利用程序RatankbaPOS很可能是首个被发现的,针对销售终端系统(POS)的国家级黑客框架程序。我们对RatankbaPOS的传播部署暂不清楚,但可从其C&C控制方式中一窥究竟。
RatankbaPOS分析
RatankbaPOS首先通过进程注入方式实现系统植入和持久化驻留,它会自动搜寻POS终端进程并完成数据窃取。一开始,它会创建注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\ CurrentVersion\Run\igfxgpttray以实现持久化驻留,然后以”Nimo Software HTTP Retriever 1.0”为 User-Agent 信息,向硬编码URLhxxp://www[.]webkingston[.]com/update.jsp?action=need_update发起HTTP命令请求,实现管理控制。如果C&C端无回应,则RatankbaPOS会进行进程注入。下图为RatankbaPOS与C&C端的数据请求:
RatankbaPOS在执行进程注入时,首先会对进程列表创建一个CreateToolhelp32Snapshot快照,然后其dropper/injector会在其中搜索名为xplatform.exe的进程,如果有匹配进程,则会对该进程创建一个模块列表快照TH32CS_SNAPMODULE,然后使用Module32First和Module32Next迭代已加载的模块,同时通过向任何大写字母添加0x20将其转换为小写字母的方式,搜索对比目标线程为韩国KSNET POS产品的ksnetadsl.dll,如果匹配成功,则返回 xplatform.exe 进程号PID。最终,RatankbaPOS将以c:\ windows \ temp \ hkp.dll形式写入磁盘,而hkp.dll将会注入到进程xplatform.exe中。
以下为RatankbaPOS的dropper/injector搜索匹配 ksnetadsl.dll的过程:
把hkp.dll注入到进程xplatform.exe中:
内存中的缓冲区替换:
最终, RatankbaPOS会向两个远程C&C地址www.energydonate[.]com和online-help.serveftp[.]com形成反弹控制:
目前,攻击者还只是在韩国范围内释放RatankbaPOS,根据现在掌握的线索来看,我们认为这完全是针对韩国销售终端系统(POS)产品的定向攻击。
追溯归因于 Lazarus Group 的证据
加密
2016年10月左右, Lazarus Group针对波兰20家银行和其它国家银行进行了大规模攻击,最后, BAE、Kaspersky、ESET、TrendMicro和Symantec都把这系列攻击归因为Lazarus Group,而2016年底至2017年初,Lazarus Group使用了少见的Spritz加密算法实施了一波攻击。之后,Lazarus Group又进行了改进升级,使用了独特的 Spritz-xor加密方式。
编码混淆
今年早些时候,攻击者在针对韩国的数起水坑攻击中,利用了M2Soft的ActiveX 0day漏洞来部署远控和植入程序,这些攻击中的一些技术与JS下载器和PowerRatankba的CHM线索重叠。在 M2Soft exploit和 PowerRatankba JS 下载器中都利用了同一种 JS 编码混淆技术,这种技术是把其十六进制值替换在形为_0x[a-f0-9]{4}的数组中:
功能对比
Ratankba 和 PowerRatankba 功能类似,且会在 c:\windows\temp\ 中存储植入程序和运行日志:
另外,Ratankba、PowerRatankba和RatankbaPOS之间都有互相印证的C&C通信方式,而在 Ratankba和RatankbaPOS中都具备一个900秒的睡眠循环( sleep loop):
而且在对 M2Soft exploit 的混淆编码分析中,我们发现了c:\windows\temp\的目录,该目录同时被PowerRatankba用以CHM攻击,被RatankbaPOS用以进行攻击植入程序和日志存储:
代码重叠
在2017年10月左右, Lazarus Group 以窃取金钱为目的,通过SWIFT系统入侵了台湾远东国际商业银行(FEIB),攻击活动中的一个植入程序被作为加载器和扩展器使用,并被写入到c:\windows\temp\目录下,该目录也被 RatankbaPOS用来存储植入程序和运行日志,而且,RatankbaPOS和 FEIB 攻击事件植入的扩展器(spreader )之间有多处相同代码,其中两者进行持久化驻留的注册表创建代码相同,如下(左为EIB 攻击事件植入扩展器程序,右为 RatankbaPOS的dropper):
诱饵程序
我们发现,PowerRatankba的JS下载器诱饵文档(transaction.pdf)与Lazarus Group之前使用的大量金融机构入侵事件诱饵技术相同。2017年8月,Lazarus Group假冒为韩国国家警察发送了恶意的EXCEL邮件附件,该附件利用了基于宏的VBScript XOR dropper,这种技术早被安全公司归因为Lazarus Group的使用技术。
要说明的是,这种使用VBScript XOR的宏技术早期曾被应用到美国防务承包商员工的攻击中,现在这种线索表明,一直进行间谍活动的Lazarus Group任务模式可能发生了重大转变,他们正把攻击目标转向以经济利益为目的的入侵渗透。此外,多个攻击活动中使用的VBScript XOR宏技术代码直接与PowerRatankba相同,有些攻击事件代码甚至在一周之内发生雷同,这可能间接说明,有多个朝鲜国家黑客团队在针对不同目标执行攻击任务。
C&C控制端
在台湾远东国际商业银行(FEIB)攻击事件后,台湾金融安全资讯账户mickeyfintech在Facebook发布了攻击事件的技术调查报告,其中曝光了攻击者的使用域名trade.publicvm[.]com,该域名曾多次被用于PowerRatankba的C&C控制端,由于我们还无法确定该域名是否由Lazarus Group控制并发起了针对FEIB的攻击,所以该证据仅当参考。
总结
该报告中,我们分析了多个隶属于Lazarus Group的黑客工具和攻击向量,它们包括一个新型的PowerShell植入程序和Gh0st远控,以及针对韩国POS销售终端系统的攻击框架。详细技术分析,请参考Proofpoint报告《pfpt-us-wp-north-korea-bitten-by-bitcoin-bug.pdf》
*参考来源:proofpoint,freebuf小编clouds编译,转载请注明来自FreeBuf.COM