一、前言FortinetGuard实验室最近发现了使用Google Docs的一次攻击活动,攻击者在此次攻击活动中打着Fortinet以及FortiGuard的旗号。当我们检查文档样本时,我们发现这个恶意网络中存在一条非常长的重定向链,并且这条重定向链的最后一跳会根据受害者的IP及user-agent特征而有所区别。这个恶意网络针对的是所有主流操作系统平台:Windows、Android以及MacOS。在本文中,我们分析了此次攻击活动流经的跳转路径,以及针对Windows平台的恶意样本。在本文末尾,我们分析了追踪溯源相关信息,尝试寻找隐藏在这些攻击活动背后的黑手。 二、恶意文档2018年夏季,有研究人员发现带有基于特定链接访问策略的Google文档可能会被爬虫索引入库。这样一来,许多单位的内部文档就可以被公开访问。比如有个真实案例,俄罗斯银行关于招聘政策的一份摘要文档就引起了人权人士的关注。在该文档中,招聘方阐述了一项政策,禁止招聘带有特定宗教信仰或者性取向的某些人群。还有包含明文密码的许多文档被公之于众。由于我们可以在Google文档网页中搜索“password”,轻松检索到这类文档,因此问题变得非常糟糕。当然如果现在大家迫不及待想偷窥别人的隐私,可能得三思而后行,至少先阅读完本文再说,事情并没表面上看起来那么简单。当FortiGuard实验室团队听到这个消息后,我们亲自动手搜索了一次,想看看有没有Fortinet内部文档被公之于众。我们并没有发现泄露的内部文档,只发现了Fortinet设备的默认密码(我们在文档中使用的都是同一个密码,这并非秘密信息)。话虽如此,我们的努力并没有白费,因为我们还发现了一些有趣的东西。比如,搜索“Fortiguard”关键词后的结果如下:图1. Google搜索“Fortiguard”的结果我们在Google上找到了168条结果(有趣的是,Google搜索结果实际上与用户IP所属国家有关)。在168条搜索结果中,实际上有超过150条与攻击者构造的文档有关(比例超过了90%,是不是迫不及待想阅读这些“私密”文件)。搜索“Fortinet”关键词后,我们可以找到750个结果。大家可以在本文附录找到其中一些文档的链接。文档链接数之所以比搜索结果数量要少,是因为许多搜索结果指向的是同一个文档。随着调查的进一步深入,大家可以理解攻击者如何实现这种效果。此外,Fortinet并非牵扯其中的唯一单位。我们发现如果在Google中搜索网络安全领域中的知名厂商,还可以看到一百多个(甚至更多)恶意文档。此时我们意识到我们面对的是一次攻击活动,攻击者已经将数千个恶意文档插入Google Docs中。 三、恶意文档分析分析了许多这类恶意文档后,我们发现这些文档采用不同的语言编写,但主要语言为英语及俄语。尽管存在语言差异,但这些文档都具备相同的结构。文档都包含一个大标题,然后跟着一小张图片(主题不一定与标题相关),然后是使用大字体的一个超链接。这类文档如下图所示:图2. 恶意文档样本在超链接下面有许多空白空间,攻击者通过这种方式来隐藏插入在文档底部的“垃圾文本”。然而,这种“垃圾文本”的目的是借助各种不同的关键词,使爬虫能够成功索引这类文件。这也解释了为什么Google搜索结果数量会比实际的Google文档数量要少,因为许多链接指向的是同一个文档。图3. 某个恶意文档稳步的“垃圾文本”样例 四、分析恶意链接如果受害者点击恶意文档中的超链接,那么浏览器会执行一系列重定向操作。根据GET请求中user-agent字段的不同以及用户IP地址的不同,所访问的最终目的地也有所不同。重定向链在这一章节中,我们将分析恶意样本所生成的重定向链,恶意样本标题为“Fortiguard web filtering bypass software free download”。该文档如图2左上角所示。分析其他文档上的链接后我们也能得到类似结果。首先,使用新加坡VPN IP地址(我们使用的地址)及Google Chrome浏览器所对应的User-Agent信息(我们所使用的浏览器)后,我们能看到如下一条重定向链:1. hxxp://vbtrst[.]pro/dnew?k=Fortiguard+web+filtering+bypass+software+free+download2. hxxp://sxkwor[.]space/rtb/s/APEN2FuhOAAA4dsBAFNHGQASAGmZEJMA3. hxxp://11fileupload-2[.]xyz/it…fA==4. hxxp://static.21.101.69.159.clients.your-server[.]de/file?f=ae…05&utm_source=APEN2FuhOAAA4dsBAFNHGQASAGmZEJMA&utm_medium=14497&utm_campaign=default5. hxxps://thimbleprojects[.]org/dedzsumkoi/528138/?method=blob&type=download&name=Rm9ydGlndWFyZF93ZWJfZmlsdGVyaW5nX2J5cGFzc19zb2Z0d2FyZV9mcmVlX2Rvd24ucmFy&v=eyJ0cmFuc2FjdGlvbl9pZCI6IjU0ODAyMjI1NiIsInRva2VuIjoiOWM0MDVmOTIwYTdhYTI2ODE0MzdkMjRkZGRhNTM2YTUifQ%3D%3D6. hxxps://4requests[.]org/findic.php?v=eyJ0cmFuc2FjdGlvbl9pZCI6IjU0ODAyMjI1NiIsInRva2VuIjoiOWM0MDVmOTIwYTdhYTI2ODE0MzdkMjRkZGRhNTM2YTUifQ=="下面我们来看一下每个URL中存在的一些特殊参数:1、 “hxxp://vbtrst[.]pro/dnew?k=Fortiguard+web+filtering+bypass+software+free+download“第一个链接的参数非常明显,重复了文档的标题。2、 “hxxp://sxkwor[.]space/rtb/s/*APEN2FuhOAAA4dsBAFNHGQASAGmZEJMA*”