不是所有经验丰富的“老警察”真的都很“老”,比如 1982 年出生的薛锋,他长得就很年轻。
薛锋,现任主打威胁情报业务的创业公司“微步在线”CEO。这位从亚马逊出来的专家,让这家创业两年多的安全公司发展到 70 多人的规模,三个月前完成了1.2亿人民币的 B 轮融资。
薛锋的主要任务,就是带领一群“侦查员”(俗称分析师),尽可能多地收集更多的情报,在千丝万缕中找出关联,最后分析结果,“预测”哪些企业、哪些人、哪些地方将被网络上看似来无影、去无踪的黑客们“凌虐”。
以前,有一种“古老”的网络追踪手段叫做“人肉”,但追踪一个黑客,比这个可复杂多了。
薛锋等人的研究对象,比这个可能再复杂100倍——他们面对的大多数不是单兵作战的黑客,而是行动迅速,配合默契的精英黑客团体。而这个世界现在有上百个精英黑客团体,从温暖的东南亚分布到寒风凛冽的西伯利亚。
这是一个复杂而艰巨的任务,在了解“怎么做”之前,我们先看看对手有多强大。
薛锋对雷锋网宅客频道(微信ID:letshome)说,赛博世界的黑暗对手可能比现实世界的高智商罪犯更可怕。“坏人”比“好人”有几个优势:
攻击者在发动攻击之前,已经将攻击对象的情况摸了个底朝天,防卫系统警报已经拉响,就算应急响应再快,从知道到正确处置,这段时间差依然可以“发生很多事儿”。
最近,雷锋网宅客频道看到了一个段子——
领导:我们安全很重要,要好好搞啊
安全负责人:好,公司可以花多少钱搞安全建设?
领导:要多少钱?
安全负责人:百把万吧。
领导:我们能租吗?
……
坏人已经拿上了AK-47,好人还在小米加步枪。
“坏人手上的东西这些年变化非常大,增长也非常快。防护方企业花钱去买工具,老板会问投入产出比,我们很难回答,因为企业在安全方面的花费属于成本,是在防止损失。坏人就不一样,他买一个工具就可以抢银行,投入产出比很高。”薛锋对雷锋网宅客频道说。
一个企业的安全团队如果有数十人,已经算“安全力量很强”,一般也就三四人,但却要面对手拿重型武器、跨区域合作的黑客团体,还不止一个黑客团体。
不管边界围得多好,敌人一定会进来。所以,边界已经不是企业的问题,敌人进来之后如果没有更多的部署(比如,探针),很多工作根本没法开展。
发现了一台机器中招,就把它当一个普通的病毒格式化,但并不知道对手要干什么,不掌握对手的信息。
这种情况下,当然只能选择“持久战”,跟踪敌手动态,从而在对方露出将要下手的蛛丝马迹时,更早察觉、更早抵抗,从而弥补上面守卫者所处的劣势,消解反对方的优势。
这就是我们要说的“怎么做”。之前提到,薛锋等人是“搞情报”的。从数据和情报收集到分析情报,有一个重要步骤——薛锋将它称之为“黑客画像”,并要像侦探一般,挖出是谁在黑你,他们的动机是什么?
2015年,微步在线成立了一个名为 x.threatbook.cn 的情报社区。一开始,薛锋只是想做个情报搜索引擎,后来才变成了情报社区,这个社区有几万注册用户,日活在几千人左右,每天新情报的贡献量保持在20万~30万条。
有两类人比较积极地贡献情报。
第一类,是报复式“贡献”,别人搞我,我就曝光它。
前两天有一个用户留言称,有2000个 IP 轰炸他们的短信、网关,他想曝光这 2000 个IP。这是一种心理——反正你搞我了,被我发现了,我就要还击,共享你的信息,让你搞不了别人。
第二类,是合作式贡献,共享信息是为了获得更多信息。对一个威胁事件进行共享后,随后共享者会收到其他关于这次威胁事件的补充信息——了解事件全貌。
除了这些独有信息,搞情报的安全公司都会有一些“不可说”的数据合作渠道,基于这些数据进行分析,为黑客画像添上一笔。
薛锋等人跟踪的是黑客团伙,比如这个团伙有 A、B、C 三个人,以抢银行为类比,他们最近是不是又抢了银行?这次抢银行又开的是什么车,用的什么新方法?要掌握这个团伙的历史、行动轨迹以及它掌握的资产资源,如木马、域名、数字证书等。
“如果这个黑客团伙有 10 辆车,5 辆停在地库,根本没有出来过,你怎么掌握?也许只有一个办法,查证这些车是否登记在同一个驾驶证下。如果他的车从来都没有开出来或者上过牌照怎么办?我只能用他刷信用卡支付的记录,来看他是不是买车了。”薛锋说。
这是一个简单的比喻,防守者利用关联分析等掌握黑客团伙的情况。
当然,之前也提到,世界上的精英团伙有几百个,但他们这种专门做威胁情报分析的公司现在撑死也就70多个人,赛博世界瞬息万变,怎么才能保持“眼睛”一直盯在这些黑客团伙身上?
薛锋认为:“很多的黑客团伙手里有很多东西,大家还有各种各样的东西、兵器等,光靠分析师,速度、时间跟不上,对他们的这些监测肯定要自动化。”
好的,说了半天,原来你告诉我除了分析师 A ,还有 A 的机器分身 A1 、A2、A3 等在帮他干活。事实上,除了自动化跟踪及初步分析关键各类数据,还有自动修复。
但这是一个尚未实现的美好愿景。比如,对今后验证过的补丁,可以自动化打补丁。比较理想的状况是发现一家公司被攻击了,系统连接第三方软件直接打补丁。
by 微步在线首席分析师樊兴华
微步在线通过溯源模型,对有印度政府背景的黑客团伙的白象、越南政府海莲花以及针对金融行业的攻击团伙进行分析。我们对国内的黑产也在做一些分析。目前我们对全球上百个主流的攻击事件,还有国内黑产的小团伙也在做分析,我们通过画像系统追踪了上百个组织,进行追踪分析,追踪的团伙覆盖了国内大金融,包括能源、政府、互联网主流的行业。
传统意义上的溯源分两种,一种是基于内部的溯源,另一种是基于外部的溯源,内部的溯源包括企业内部入侵环境的分析、黑客使用工具、攻击目的等。
下面聊的是基于外部的溯源分析,因为我们内部的取证的环节已经完成,如何根据内部取证信息。如木马、域名等进一步分析,拿到攻击者画像信息,比如攻击者可能是谁,除了这次攻击事件,他在其他的攻击事件里还使用了哪些网络资产,以及这个攻击者喜欢使用哪些黑客工具,攻击的目标、行业、所在的地区等。
暗云攻击工具从 2015 年开始发展及被发现,在2016年演变成暗云二代,2017年发展到三代。我们发现,暗云攻击工具的目的从最开始通过推广广告、流量劫持到2017年已经发展成了DDoS攻击。
从技术来说,暗云非常高级的攻击工具,它是内核级的,为了躲避查杀,有一个合法的数字签名。在执行过程中,包括在最开始安装、感染过程中,很多用户名基于Shellcode。暗云也可以对国内主流的杀软进行对抗。
今年 6 月,客户发现内部机器一直在对外发起大流量的攻击,但取证分析了很久,一直没有找到任何可疑文件。如何溯源?是怎么被攻陷的?完全不清楚,这是我们在溯源过程中的一些挑战,体现在三点:完全内核级的攻击工具取证非常难;样本分析非常难,因为它是模块化的,很多功能从服务器,通过远控的命令下载下来,模块非常多;它是基于Shellcode的,暗云控制的基础设施非常多,在全球的感染量保持在数百万台的量级,流量非常大。
在客户没有任何样本的情况下,找到了我们,我们拿到的唯一信息是一个恶意域名。经过分析,这个域名是暗云在执行过程中会下载一些插件,或者进行配制时使用一个恶意域名。
我们有一个溯源模型,在溯源过程中,也是基于这个溯源模型进行分析。我们拿到了攻击者的其他攻击资产,与其二代的关联,分析出暗云三代的大概轮廓。
它的基础设施有几个特点,第一,暗云攻击工具的解析IP集中分布在两个网段;第二,暗云的主控域名习惯使用这个服务器作为它的域名解析服务器。第三;暗云感染量非常大,暗云采用了一些方式加速访问。
最终,我们破解了暗云木马背后的攻击者所用的 80余个攻击资产,通过溯源模型在分钟级时间内还原了暗云背后团伙的画像信息。
暗云追踪分两个维度,一个基于样本的维度,一个是基于网络资产的维度。
我们通过基于Yara的安全狩猎方式,提取了一些自解码,还有它的一些函数名。整个暗云的追踪主要基于网络资产。比如同一个域名在 2016 年 4 月和 2016 年 11 月经过溯源模型分析后,发现了明显的改变,其新增的域名就是暗云三代的主控网络资产,我们发现了暗云三代的简单活动迹象。
2016 年 11 月,暗云二代的主控资产又产生了新的关联信息,就是我们在暗云三代分析的过程中拿到的第一个,也是惟一一个网络资产。
怎么追踪?我们通过这种对比方式,发现暗云三代的大概时间是在2016年的11月,这跟国内公司得出来的结论不太一致,很多公司认为可能是在 2017 年4、5月。只不过在 6 月,暗云的活跃量很小,感染范围很小。
我们在暗云的分析过程中应用了样本分析能力、溯源分析能力、画像沉淀能力、监控追踪的能力。
以及通过Yara的方式做一些追踪,以及监控追踪的模型。
样本分析是我们做安全分析的最原始、基本的能力。Yara这块可以有一个简单的比较好的方法。此外行为签名,我们基于沙箱的行为签名,通过沙箱对样本的恶意行为做一些关键行为分析,形成一个行为的签名,行为签名在我们样本分析里也是非常重要的。第五个就是ATT CK,这是美国非营利机构发布的关于攻击事件、攻击团伙常用的手法分析,它跟行为签名非常类似。
打造溯源分析能力就是进行基于深度学习的溯源模型的建设。模型的输入可以是域名、IP、Hash、PDNS、注册电子邮件、注册人。我们先画一张原始的网状图,这张图类似于蜘蛛网,非常复杂,这时如果用这种方法做溯源肯定是不可行的,里面有很多无用信息,我们需进一步过滤。过滤完之后,可能还会有很多黑的和灰的搀杂,我们还需进一步判定,最终才能得到我们想要的理想化模型。
具体的关联模型是什么样?我们模型首先域名它会有一些子域名,这个域名曾经解析过哪些IP,历史上解析过哪些 IP,当前解析的 IP 是哪些,域名曾经有哪些恶意样本,或者非恶意样本都可以,通过这种沙箱的数据,或者基础网络行为数据,通过画像的方式会得到网状的图。
下一步,过滤,我们可能会通过多种维度去除无用的信息,里面可能会有很多的域名,其实不是这个攻击者拥有的,可能有一千多个域名在一个IP上,往往是黑客或者正常人都会有这个行为。过滤完后进一步的判定,我们通过几个维度,威胁情报订阅、社区情报等等。最终通过过滤和判定,才能得到有效的信息,红色的一般就是我们判定出来有问题的,跟这个攻击事件关联非常大的一个结果。
最后就是监控追踪能力。我们基于这种数据,再加上追踪模型,最终得到疑似的结果。这里面最关键的有两个,一就是基础数据一定要足够丰富,覆盖度一定要足够全,而不能只覆盖国内的,这样国外的团伙追踪效果很差。
下面说一下样本追踪的方法,同源的样本非常类似。
第一,通过暗云事件,我们从一个攻击资产可以发现背后攻击者所拥有的80多个攻击资产。
第二,达到一窝端的效果。对一个木马进行分析,分析完的样本信息,得出这个样本的CC,这个报告就结束了。但是对我们来说远远不够,我们通过溯源分析,拿到了这次攻击事件、历史攻击事件的全部数据,放在我们的设备里,可以对攻击者做全方面拦截,最终达到一窝端的效果。
第三,通过二代拿到三代的主控域名,我们可以在其发起攻击前就实施拦截。
第四,通过预测,可以做防御。