臭名昭著的远程控制木马Poison Ivy(后面称作PIVY)最近开始重新露出水面。并且出现了一些新行为。过去一年,已经发现PIVY为了种种企图攻击了许多亚洲国家。
Palo Alto Network的Unit 42最近发布博文,一个被称为SPIVY的新Posion Ivy变种正在攻击香港活动家,它使用DLL旁加载(DLL sideloading),并且在操作方面与 ASERT (Arbor’s Security Engineering & Response Team )最近发现的至少活跃了12个月的变种有很大不同。
ASERT捕捉到的PIVY变种与以前发现的相比出现了一些新的行为。样本会释放一个doc诱饵-通常在目标上会有清晰地提示,一个名为ActiveUpdate.dll的DLL和PIVY shellcode文件Active.dat。ActiveUpdate.dll和Active.dat文件在形如ActiveUpdate_ [0-9]{3}的文件夹中创建。可执行文件把rundll32.exe拷贝为ActiveFlash.exe,然后用这个新文件执行DLL,通过在Window启动目录下创建.Lnk文件实现自启动安装。ESET把这些样本称为“Win32/Korplug.I[F-I] variant”,或许是因为恶意软件通过rundll32使用DLL旁加载技术加载释放的DLL来执行它的恶意行为。这个恶意软件从去年(或许更早)就开始部署了,在拷贝rundll32时使用了不同的可执行文件名和目录名,但是,这篇文章只讨论使用“ActiveUpdate”的变种子集。
PIVY样本的执行流程图
这些二进制的编译时间与第一次发现它们在外散播的时间联系紧密,与样本在配置文件中的一些活动ID(campaign ID)里包含的时间戳项的联系也很紧密。
解密后的配置文件也发生了轻微的变化,这样就可以干扰网上公开的工具解析配置文件数据。活动ID也不再是全部使用null填补,而是使用一个字节的null加一个全为“x”字符的字符串来填补,这样就可以起到干扰一些脚本的作用。此外,C2s也不再使用null填补,每个主机名后面都会包含一个null字节,后面接着是一个类似于“0.1127.0.0.1127.0.0.100000”的字符串。对于每个Command & Control (C2)服务器,这个字符串会有轻微的变化,以“1”开始的地方会在第二个C2时变成“2”,第三个会变为“3”,以此类推。这些值最后会出现在内存的某个地方,解析时不需要额外的东西只需要做一点微调就可以了。
在许多PIVY样本中发现了名为webserver.servehttp[.]com的主机名,这篇文章中会涉及到其中一些。此外,这个主机名解析出来的IP,与早期发现的似乎与此无关的PIVY样本中使用的fileshare.serveftp[.]com解析出的IP有重合。
发现许多PIVY样本攻击缅甸和其它一些亚洲国家。但是ASERT目前还不知道其确切的目标和传播方法,文档和提交源提供了关于攻击的动机和潜在目标的线索。前一部分描述的样本-a7d206791b1cdec616e9b18ae6fa1548ca96a321-被发现于2015年12月后期攻击缅甸,样本的编译时间戳是2015年12月2日,文件名里的时间标记看起来是引用了2015年12月25日发布的一篇报告,而文件是在美国时间2015年12月24日傍晚首次看到的,这正好是缅甸的12月25日。释放了名为“STEP Democracy Year 1 Acheivements_25112015.docx”的文档,该文档也被SHA1值为724166261e9c2e7718be22b347671944a1e7fded的样本释放为“Year1achievementsv2.docx”,但是这个样本在与之相同的C2s上使用了不同的通信密钥。文档似乎是STEP民主倡议的分支,国际民主和选举援助学会(International Institute for Democracy and Electoral Assistance,IDEA),在12月发布的 最终报告 的草案。
IDEA是欧盟资助的项目-支持选举程序和民主(Support to Electoral Processes and Democracy )(STEP Democracy)的一部分,它的目标是在全世界支持民主。IDEA在缅甸最近选举前后都与其协作,保证“和平,透明和可信的选举”。这项工作的一部分是发布类似于上面提到的报告和草案。在这里,诱饵文件的元数据包含一个“0IDEA”的公司名和一个“Sophia”的作者名-或许是组织中的某个现任成员,
最后一次编辑时间是2015年12月20日。文档的内容描述了关于缅甸民主选举的一场辩论的细节。这个时间轴说明目标经历了12月初发生的选举,但是仍然关注有志于缅甸国内民主的个体。缅甸选举后的目标好像是跟随ASERT写的“ Uncovering the Seven Pointed Dagger ”文章中提到的模式。在这里看起来,攻击者开始使用STEP组织的文章,利用选举后的缅甸相关内容继续开展鱼叉攻击。这些样本使用的C2-jackhex.md5c[.]com-解析出的IP地址属于103.240.203.0/22,而在Seven Pointed Dagger攻击活动中也是这样做的,这说明两者存在可能的联系。“LURK0”Gh0st远程管理工具和另外一个PIVY域名也同样解析到了那个范围里的IP,这说明这个子网有发动针对性攻击的嫌疑。
释放的涉及缅甸民主进程的文档
同时最近也发现了许多关注经济的文档,并且其中一个样本也涉及到缅甸。这个样本使用了“mm20160405”活动ID,释放了名为“Chairman’s Report of the 19th ASEAN Regional Forum Heads of Defence Universities, Colleges, Instiutions Meeting, Nay Pay Taw, Myanmar.doc” 的文件,其中提到了2015年9月在缅甸召开的东南亚国家联盟(Association of Southeast Asian Nations,ASEAN)会议。这个样本的时间与早些时候的样本有点不同,好像是一个后续活动,因为恶意文件的编译时间戳是2016年3月25日,再加上活动ID里的时间戳是2016年4月5日,以及首次发现在外散播的时间是2016年4月11日。配置文件中的mutex-20150120-与前期释放STEP计划相关文档的样本的mutex是同一个,但是这个mutex在其他许多使用“ActiveUpdate”目录结构的PIVY样本中也被使用,好像不是用于识别活动或者识别外面的使用相同版本的样本之间的关系。这个样本中使用的C2-admin.nslookupdns[.]com-解析到了118.193.218.0/24子网中包含的IP。与前面讨论的样本相同,ASERT观察到了包括Nitol, Gh0strat以及其它使用“ActiveUpdate”的PIVY样本在内的恶意软件家族存在重叠。这个样本的C2域名是news.tibetgroupworks[.]com,这明显得暗示了目标动态,但是,没有发现释放诱饵文档,也没有发现进一步的信息帮助支持这个目标假定。
释放的与缅甸的ASEAN会议相关的文档
继续讨论关于攻击ASEAN的活动的话题,样本31756ccdbfe05d0a510d2dcf207fdef5287de285释放了名为“Robertus Subono-REGISTRATION_FORM_ASEAN_CMCoord2016.docx”的诱饵文档,它涉及到2016年3月28至4月1日在曼谷举办的东盟人道主义军事协调会议。这个文档是印度尼西亚出席者的注册表,要发往泰国国防部邮箱。这个样本的编译时间是2016年3月10日,被ASERT在2016年3月20日首此发现,并且包含了一个有效的Google数字签名。把意图,会议的地点以及表格要发往的邮件地址和“modth”活动ID相结合,推测这个样本的可能目标是泰国国防部。这个样本使用的C2与前面的涉及缅甸ASEAN会议的样本在很大程度上相重合-第一个C2使用80端口,而前面的样本使用81端口,并且它们都是使用了相同的mutex和密码。这个重合暗示了对ASEAN成员国及他们举行的会议的持续攻击。
31756ccdbfe05d0a510d2dcf207fdef5287de285样本释放的涉及泰国ASEAN会议的诱饵文件。
ec646c57f9ac5e56230a17aeca6523a4532ff472样本释放的“2016.02.29-03.04 -ASEM Weekly.docx”诱饵文档也很有趣,它不像其它两个文档使用英文-谷歌识别出文档中的语言为蒙古语。
ec646c57f9ac5e56230a17aeca6523a4532ff472释放的涉及亚欧会议(Asia-Europe Meeting ,ASEM)的诱饵文档
f389e1c970b2ca28112a30a8cfef1f3973fa82ea释放的诱饵文档1.docx,在沙盒中运行时奔溃,手工恢复出了一个韩文文档,恶意软件的活动ID是kk31。这个文档看起来与外国的韩语学校有关,电话号码说明从属于韩国外交部,但是现在也不清楚其攻击目标。
f389e1c970b2ca28112a30a8cfef1f3973fa82ea释放的韩语诱饵文档
样本f389e1c970b2ca28112a30a8cfef1f3973fa82ea释放了一个名为“Commission on Filipinos Overseas & Dubai.doc”的诱饵文档,但是这个文档无论是在恶意软件沙盒还是手动打开都没有正确渲染。VirusTotal显示了一个来自菲律宾的样本,这说明菲律宾是目标,并非阿拉伯联合酋长国的迪拜。这个样本的C2s使用了webserver.servehttp[.]com,这在最近的许多样本中也出现了,说明相同的攻击者参与了这次攻击活动。
正如这篇文章和前面的几篇文章中描述的,PIVY在持续进化,被用于无数的目标攻击活动中-不像其它的恶意软件家族,比如PlugX或者Dukes。这肯定不是PIVY的最后进化,ASERT会在发现他们时持续监视这些威胁。我要感谢ASERT的 Curt Wilson 帮助我研究文章中的一些问题。
文章中讨论过的样本的配置要素和额外信息
SHA1: a7d206791b1cdec616e9b18ae6fa1548ca96a321 First Seen: Nov. 24, 2015 Name:STEP Democracy Year 1 Acheivements_25112015.exe Decoy Doc: STEP Democracy Year 1 Acheivements_25112015.docx Campaign ID: om C2s: jackhex.md5c.net:8080 jackhex.md5c.net:53 jackhex.md5c.net:53 Mutex: 20150120 Password: 18703983384 SHA1: 724166261e9c2e7718be22b347671944a1e7fded First Seen: Nov. 23, 2015 Name:Year1achievementsv2.exe Decoy Doc: Year1achievementsv2.docx Campaign ID: om C2s: jackhex.md5c.net:8080 jackhex.md5c.net:53 jackhex.md5c.net:53 Mutex: 20150120 Password: 15911117665 SHA1: 675a3247f4c0e1105a41c685f4c2fb606e5b1eac First Seen: April 7, 2016 Name: Commission on Filipinos Overseas & Dubai %E2%80%AEcod.doc Decoy Doc: Commission on Filipinos Overseas & Dubai.doc Campaign ID: gmkill C2s: webserver.servehttp.com:8080 webserver.servehttp.com:8080 webserver.servehttp.com:8081 Mutex: 20150120 Password: 13813819438 SHA1: 63e00dbf45961ad11bd1eb55dff9c2771c2916a6 First Seen: April 11, 2016 Name: 1.exe Decoy Doc: Chairman's Report of the 19th ASEAN Regional Forum Heads of Defence Universities, Colleges, Instiutions Meeting, Nay Pay Taw, Myanmar.doc Campaign ID: mm20160405 Domain Created: December 17, 2015 C2s: admin.nslookupdns.com:81 admin.nslookupdns.com:53 admin.nslookupdns.com:8080 Mutex: 20150120 Password: 52100521000 SHA1: 31756ccdbfe05d0a510d2dcf207fdef5287de285 First Seen: March 20, 2016 Name: Unknown Decoy Doc: Robertus Subono-REGISTRATION_FORM_ASEAN_CMCoord2016.docx Campaign ID: modth Domain Created: December 17, 2015 C2s: admin.nslookupdns.com:80 admin.nslookupdns.com:53 admin.nslookupdns.com:8080 Mutex: 20150120 Password: 52100521000 SHA1: ec646c57f9ac5e56230a17aeca6523a4532ff472 First Seen: March 10, 2016 Name: 2016.02.29-03.04 -ASEM Weekly.docx.rar^2016.02.29-03.04 -ASEM Weekly.docx.exe Decoy Doc: 2016.02.29-03.04 -ASEM Weekly.docx (Mongolian language) Campaign ID: wj201603 Domain Created: January 14, 2016 C2s: web.microsoftdefence.com:8080 web.microsoftdefence.com:8080 web.microsoftdefence.com:80 Mutex: 20150120 Password: 80012345678 SHA1: f389e1c970b2ca28112a30a8cfef1f3973fa82ea Name: Unknown Decoy Doc: 1.docx (corrupted but recoverable, Korean language) First Seen: April 9, 2016 CampaignID: kk31 C2s: webserver.servehttp.com:59148 webserver.servehttp.com:59418 webserver.servehttp.com:5000 Mutex: 20160301 Password: 13177776666 SHA1: 49e36de6d757ca44c43d5670d497bd8738c1d2a4 Name: Unknown Decoy doc: 1.pdf, references project in Vietnam requesting an email to a Thailand email address First Seen: March 10, 2016 C2s: webserver.servehttp.com:59148 webserver.servehttp.com:59418 webserver.servehttp.com:1024 Mutex: 20160219 Campaign ID: mt39 Discovered during investigation, but do not drop decoy docs, exhibited similar configuration padding SHA1: ef2618d58bd50fa232a19f9bcf3983d1e2dff266 Name: 2.tmp Decoy Doc: None First Seen: June 3, 2015 Domain Created: May 29, 2015 C2s: news.tibetgroupworks.com:80 news.tibetgroupworks.com:80 news.tibetgroupworks.com:80 Campaign ID: 213 Mutex: 2015012
63e00dbf45961ad11bd1eb55dff9c2771c2916a6 675a3247f4c0e1105a41c685f4c2fb606e5b1eac 49e36de6d757ca44c43d5670d497bd8738c1d2a4 cbbfc3b5ff08de14fdb2316f3b14886dfe5504ef a7d206791b1cdec616e9b18ae6fa1548ca96a321 ec646c57f9ac5e56230a17aeca6523a4532ff472 ef2618d58bd50fa232a19f9bcf3983d1e2dff266 f389e1c970b2ca28112a30a8cfef1f3973fa82ea
news.tibetgroupworks.com web.microsoftdefence.com admin.nslookupdns.com jackhex.md5c.net webserver.servehttp.com
*本文译者felix,翻译自: https://www.arbornetworks.com/blog/asert/recent-poison-iv/ ,转载须注明来自FreeBuf黑客与极客(FreeBuf.COM)