01
引言
威胁情报这个概念,自从2014年Gartner提出以后,安全圈就一直在提这个概念,也一直尝试应用这个技术来做一些文章,无论是加在各家的安全产品上做一些对撞,还是自己保留数据库存一些黑产数据,都取得了一些效果。
但每每提到威胁情报,我们普通人观之,就像吃饭扫过米其林、满汉全席、景区的茶叶蛋(误)一样,好像平时接触不到,偶尔想要用也要付出很大的成本。很多人懂web安全,懂渗透测试,懂流程,但是提到威胁情报,总觉得离自己很远,几乎不会用到。
当我们谈论威胁情报,对于一般的安全从业人员来说,其实并不知道到底在谈论什么,到底要怎么用。就像皇帝的新衣一样,大家都说陛下穿着衣服,凑个热闹,但是陛下到底穿没穿衣服,大家其实没那么关心。
图1. 皇帝的新衣
所以今天笔者想聊一聊,当我们谈论威胁情报的时候,我们到底在聊什么。
02
情报是什么
威胁情报的定义是什么呢?最早的援引应该是Gartner在2014年发表的《安全威胁情报服务市场指南》中提出的定义,即:
威胁情报是关于IT或信息资产所面临的现有或潜在威胁的循证知识,包括情境、机制、指标、推论与可行建议,这些知识可为威胁响应提供决策依据。
仔细看Gartner的定义,其实定义得很全面。但是普通人容易看得云里雾里,就像课本里的各种哲学定义,每个字都能看懂,但是一连起来可能就看不懂了。
笔者认为,威胁情报本身还是情报的子类。提到情报,大家应该知道得很多了,各种热播的谍战剧、抗战剧,都少不了各种情报、情报官的身影。 比如经典谍战剧 《潜伏》,主角余则成为了获取情报,深入敌军内部获取敌军机密,为最后的胜利提供了可靠的情报线索。
图2. 《潜伏》也是笔者特别喜欢的一部剧
所以,我们谈情报,其本质还是用于对抗,只不过军事情报用于两军的对抗。而威胁情报是对抗谁呢?可能就是攻击者、黑产、安全漏洞等敌人了。
情报的重要性毋庸置疑。不知大家是否了解中途岛海战的历史,早在珍珠港海战之前,日本军令部派往珍珠港的间谍达200多名,其中最关键的人物是海军情报专家、海军预备役少尉军官吉川猛夫。他以日本驻檀香山领事馆工作人员“森村正”的假身份来到夏威夷。在察觉到美军监视解除后,吉川立即着手开展情报工作,他通过各种途径刺探情报,甚至跳到海里,游到军舰附近刺探情报。7个月后,以吉川猛夫为代表的日本间谍获得了包括珍珠港停泊舰艇数量、类型、位置、时段等全部情况,还有机场、飞机、驻军、防卫等其他详细信息。在偷袭之前,日军已将珍珠港内的情况全面掌握。1941年12月7日,日军袭击珍珠港,致使太平洋舰队遭受重创。
珍珠港事件后,美军吸取了珍珠港失利的教训,意识到对情报的忽视是失败的根源,空前重视情报工作。在新上任的太平洋舰队司令尼米兹的支持下,情报主管莱顿带领情报小组夜以继日分析破译日本电文。
莱顿连续3个月通宵达旦分析各类情报,从而确定未来中途岛海战日军行动的具体内容。最终得出结论:“日本将在6月3日进攻阿留申群岛,真正的航母编队主力将在6月4日早晨6点钟进攻中途岛,方向西北、方位325度,在距离中途岛175海里位置发起进攻。”中途岛战役打响后,尼米兹对莱顿说,“你的预测只差5海里、5度和5分钟。”
图3. 《决战中途岛》也是笔者特别喜欢的一部电影
可见,即使在实力悬殊的两军中,谁先掌握情报,谁就能决定战争的主动权。
03
威胁情报又是什么
上一节我们提到了情报的重要性,那么威胁情报,其实也是一样的,是情报在安全领域的应用。
我们在情报应用中, 主要使用各种攻击者相关的 “证据” 来进行威胁情报的应用, 也就是我们常说的 IOC (Indicators of Compromise) , 即失陷指标。
图4. 失陷指标层级
上图中,越往上的层级,获取难度越高,对于一个企业的价值也越高。想一想,如果一个企业知道了攻击者的真实身份,是不是比简单地封禁他的账号,封禁他的IP这些措施,更有打击效果?(律师函警告)。比如,张表哥发给你一个<震惊,这才是亚索无缝e兵.exe>文件。
图5. <震惊,这才是亚索无缝e兵.exe>文件
你本想学点技术带妹,结果打开之后发现电脑文件全部啪地一下被加密了,很快啊, 需要支付赎金才可以解锁。那么当其他人收到同样的文件时,就可以将文件Hash与你收到的文件进行比对。一旦相同,就可以识别为恶意文件,从而避免财产损失,那么这个文件的Hash,就是图4中最底层的情报,也是最容易获取的文件特征威胁情报。
又比如,你的电脑打开木马后被攻击者控制了,你通过反查进程,或者终端EDR,又或者是流量监测工具,发现了攻击者IP是1.180.27.204,那么你就可以把IP上传到X社区,共享给其他用户。
图6. X社区帮你出头
就像小时候被打之后可以报告老师一样,小时候是老师帮我们出头,现在可以告诉X社区。共享到X社区之后,其他用户就可以看到这个恶意IP相关的信息,就可以实时阻断该IP,或者将该IP加入黑名单。与其暗自咒骂攻击者不讲武德,不如直接曝光其IP,这样攻击者获利的机会将大大减少。(我不会告诉你,这种伟大的共享行为,还能获得X社区的奖励。)
图7. 其他用户可以实时看到该IP的恶意情况
除了这些,我们拿到些情报,还可以怎么用呢?
比如,我被一个IP攻击了,如果另一个人也同样被该IP访问了,那么就可以发现该IP的攻击行为。就像一个罪犯在洛圣都做了坏事,洛圣都给他打上了标签,那么他去纽约也会被通缉 (此处无作弊码彩蛋)。这是威胁情报被用作攻击证据的例子。
比如,我的网站被别人篡改了,改成了「王小华到此一游」。那么,如果你的网站也出现了同样的字段,那是不是意味着我们受到了同一个人的攻击,是不是就可以尽早尽快地发现篡改行为,将损失降到最低。就像小明老是脱发,他去看医生,医生说你这是老熬夜导致的,那小李出现了同样的症状,是不是就可以不用去看医生了,直接让小明告诉他,你最近是不是老是熬夜,我有证据。这是威胁情报被用作失陷证据的例子。
图8. 其实是学安全学的
比如,红蓝对抗中,我军蜜罐捕获了一个小红队,获取到了他所使用的IP,以及他的优酷ID,还有平时在优酷喜欢看的片子(误),溯源出本人之后,我们通知所有的防守方都注意这个IP的攻击行为,那么防守方都可以对这个IP进行封堵,就算失陷也可以进行溯源加分。这是威胁情报被用作防守联动的例子。
图9. 黑客攻击(物理)
04
从一个钓鱼页面说起
前面讲了很多概念,就像我前面所言,大家有可能会听得云里雾里。虽然不是我本意。
威胁情报在企业安全中,已经有很多成熟的应用了,包括我司的TDP、TIP等,都可以做到实时流量与我们的情报库的碰撞,从而帮企业发现威胁。这时候就有读者要问了,难道威胁情报只能结合产品使用,只能给企业做安全防护吗?答案:当然不是!
下面我将用一则小例子给大家讲解一下,我们个人用户怎么使用威胁情报来降低自身被攻击的风险。
俗话说的好,杀鸡焉用牛刀。但是你说牛刀可以杀鸡么,当然也可以杀。正所谓大有大的好,小有小的坏,胜者通吃,败者食尘。
威胁情报既然可以在大规模的企业流量中发现威胁, 我们普通人也可以结合威胁情报,做一些事情。
比如,我们在生活中可能会遇到这些情况:收到各种钓鱼短信;各种中大奖链接让你点进去输入账号密码领取;手机丢失后又被其他人异地登录;强行让你找回qq账号,输入密码等等。
因为笔者常年非洲人,所以默认各位读者的脸应该和笔者一样黑,突然中奖这种好事发生的概率大概比 gakki 突然对你表白的概率大不了多少。所以很多信息我们可以轻易判断是钓鱼的。
但有些高级的钓鱼并不是很容易一眼就能看出来。这里援引 X社区的一个曝光钓鱼的帖子。该用户收到了如下图字样的短信:
图10. 钓鱼短信示例
乍一看还挺正常的,但对于有公司的用户可能存在一定的风险,点进去注册自己的公司从而中招。什么?!读者们都是打工人,没有自己的公司? 那没事了。(大雾)
根据帖子的内容来看,点进去之后做的页面还是很仿真的。几乎和正常的企业信息公示系统差不多。
图11. 钓鱼伪装成正常页面
填入自己的注册号,就会跳转到获取法人个人卡号信息的页面,如下图所示:
图12. 银行卡号页面
随后就是熟悉的剧情:输入银行卡号、账户密码,银行卡被盗刷,摩托变单车。
很多事情我们可能并不能理解,就像没有上当的人理解不了被钓鱼的受害者为什么这么不小心一样,但其实只要感同身受,多设身处地地想一想,也许很多事情也没那么难理解。
单单从域名本身 dzgli.cn 来看,确实不像是钓鱼,也很像一个什么机构的简称。同时短信的内容也很以假乱真,难以分辨。最后点进去的界面也不是粗制滥造的钓鱼界面,而是精心构造的十分仿真的界面,导致这个域名确实很难分辨。
这时读者可能就要问了,难道没有其他方式,能让我们判断这是不是钓鱼吗?
当然不是!这时我们就可以借助威胁情报的力量了。
对于威胁情报最基础的证据无非是域名、IP、历史解析IP。更高阶一点的是注册者、注册邮箱等。
我们结合 dzgli.cn 这个钓鱼域名进行详细分析:
首先查询情报库。
图13. 情报库查询
由于是X社区的帖子,所以X社区已经有判定结果了。当然我们可以忽略这个结果,我们这次尝试靠自己的分析来得出这个域名是不是钓鱼的结论。
查询该域名的IP地址 。
图14. 域名IP查询
这里可以看到共有98个域名解析到这个地址。这是第一个需要怀疑的点,一个正常的工商类型的域名,解析IP不应该同时被这么多域名解析,按照常理正常的服务器应该只提供单个网站的功能,被这么多域名解析,必有蹊跷!
让我们来看看都是被什么域名解析的?
图15. 域名解析
我截取了部分解析到该IP的域名。
相信有经验的安全从业者已经看出来了。像这种纯数字的域名,一般出现在博彩类网站中,如果是正常的政府类,是不会存在类似的域名解析的。
当然我们不止步于此,看一下该网站的注册人。
图16. 域名注册人
可以很明显的看出来,是个人用户注册的。
这方面大家需要注意,正常的公司网站,或者政府网站,都是使用 xxxx 公司为注册者的,就算是使用个人姓名注册,注册邮箱也会是企业邮箱,而不是qq邮箱。
再看一下注册这个钓鱼网站的邮箱还注册了哪些其他网站呢?
图17. 钓鱼网站邮箱其他注册网址
可以看到,在注册的其他网站中还有试图仿冒12315的域名。到这里基本可以确定,这个网站并不是真实的企业注册登记网站。
如果还觉得证据不足的话,还可以使用某歌搜索该域名。
图18. 谷歌搜索该域名
可以看到微博上已经有受害者上当受骗的相关新闻了。只可惜受骗的人没有提前看到我们的文章,没有学到我们的方法。
不知道通过这个钓鱼的例子,大家了解到应该怎么使用威胁情报,去查询生活中遇到的各种域名了吗?
05
由网络钓鱼说开去
结合上面的例子,似乎可以总结一些规律。
第一种,可以看一下域名本身是否看起来就像钓鱼:
- 类似 bankline.xn--ita-70a.com 这种看起来就就不像正常银行能够取出来的名字的。
- 类似 www.office.com.office.uce.batman.myshn.net 这种把office放在前面,但是实际主域名跟office扯不上边的。
第二种就是根据域名的解析IP,看这个IP下历史曾经解析的域名,借助X社区查询平台查询数据。正所谓跑得了和尚跑不了庙,用IP反向查询的方法一样可以揪出来网站所属者,之前有没有做过坏事。如下图所示:
图19. 钓鱼攻击者为了节省成本往往将许多伪造域名解析到同一个服务器
第三就是我们的杀手锏,也是比较比较准确的判断方式。
举个例子,在X社区查threatbook.cn,打开whois信息,可以看到下图的这个页面:
图20. whois信息
注册者是北京微步在线科技有限公司,注册邮箱也是正常的threatbook.cn 。
假如我们查询一个可能的仿冒钓鱼域名,比如threatbook.top,如下图所示:
图21. 仿冒域名注册信息查询
注册者为个人用户,邮箱也没有填写,那么假如这个网站邀请输入账号密码,就可以判定是钓鱼网站。
说了这么多,我们可以总结一下结合情报信息判断是否是钓鱼网站的基本思路,在实际的判断过程中,我们总结了如下图所示的判断流程:
图22. 判断钓鱼的一些基本方法
多种维度判断,基本上可以对网站是否属于钓鱼网站,做到心中有数。
当然,笔者只是用钓鱼网站作为例子向大家解释一下威胁情报该怎么用。如果只用威胁情报来判断是否是钓鱼就有些大材小用了。
实际情况中,判断是否是恶意软件、远控软件、黑灰产、失陷域名、博彩色情类网站等都有威胁情报的身影(当然不是让各位表哥用情报去找博彩色情网站)。
06
多维度评估情报
很多时候评估情报,仅仅依赖一家的威胁情报引擎,可能信息获取的并不全面。如果能够多个情报评估引擎一起进行评估,可能看的信息更全面一些。
这里介绍几个分析威胁情报时比较常用的分析工具。
1. X社区 (https://x.threatbook.cn)
威胁情报共享平台,涵盖域名、IP、Hash等各类情报。旗下沙箱可以进行多引擎判断样本(笔者今晚的鸡腿保住了)。
分析域名时查一下历史解析和Whois当前及历史Whois信息比较有用。比较特色的是情报功能,很多恶意IOC可以直接在上面查出来,免去自己分析的必要。
另外一点就是,有很多活跃的社区用户贡献者协助进行情报的判断,如果一个网站已经是恶意的情况,随手点击的社区用户标签,可以做到第一时间对网站的性质有一个大致的了解,免去繁杂的分析步骤。
2. Virustotal (www.virustotal.com)
大名鼎鼎的VT,相信很多安全从业人员应该知道这个网站。
同样有历史pdns数据查看功能。以及查看域名相关连接的恶意样本,域名当前Whois信息,比较可惜的是由于假设在境外,国内用户的访问速度不理想,同时对于英语不好的同学也不是很友好。
可以与X社区一起作为查询网站相关信息的辅助。
3. CuteStat (cutestat.com)
可以查看页面的历史记录,对于一些已经失效了的页面,可能打不开,无法判断是否是恶意域名。可以来这个网站查一下要查的域名的历史页面,可能会有意想不到的收获。比如,某些域名历史是博彩网站,当前失效了,直接查看历史的页面就比较方便,省去很多判断流程。
4. multirbl.valli.org
可以查询IP是否在各大DNS BL的黑名单上。
什么是DNS BL呢?就是说很多网站会收集网络中攻击过别人的IP, 给这些IP打上恶意的标签, 从而不让用户通过DNS解析这些IP。有时候不好判断IP是否是恶意,这个IP在不在DNS BL的黑名单可以作为一种参考。大部分正常的IP不会出现在DNS BL列表中。
5. Alienvault (alienvault.com)
大名鼎鼎的Alienvault,当然这和你们想的外星人笔记本不是一个东西。这个网站收录的开源情报比较全,如果凭自身能力难以判断域名是否为恶意相关,可以在Alienvault查一下是否有相关安全机构已经对这个域名做了研究。Alienvault比较具有互联网精神,情报开源,api开放,用户可以根据自身订阅自己感兴趣的安全内容。免费用户有查询次数限制,付费用户没有。
6. RISKIQ社区 (riskiq.com)
RISKIQ社区数据做的比较全,基本上基于一个域名或者IP,你能想到的相关信息都涵盖了,可惜数据虽然多但不是都有用,需要搜索者自己有判断信息的能力,否则可能沦陷到海量的信息中不知道该用什么。
主要讲究的是大而全,甚至连一个域名内的内链、外链是否在其他网站中出现过等相关资料都有。优点在于资料多,缺点也在于资料多,信息多反而想要获取有用的信息变得比较难。对于域名的子域名、证书、域名下内容模块等方面做的比较好,可以作为参考。
07
再回头,仍是千千万万遍
当然,威胁情报对于我们的作用远远不只是去识别一些钓鱼这样简单。笔者只是抛砖引玉,借钓鱼这一个例子引出我们平时生活中还可以怎样用威胁情报。
对于更高阶的安全从业人员来说,可以结合威胁情报,对红队人员进行针对性溯源。
对于企业的运维人员来说,可以结合流量日志,对IP信誉进行碰撞,发现隐藏的攻击IP。
对于红队人员来说,可以结合威胁情报搜索攻击资产,从而不必使用目录爆破方式进行批量的爆破,费时费力(有的子目录的名字不好猜,通过爆破目录工具也拿不到)。
对于女生来说,可以使用情报对男朋友进行溯源。
对于当前的企业形势来说,炒的火热的态势感知、威胁可视化,其实更多依据的是情报的准确与否,而不是大屏幕大图做的有多好看,有多炫酷。内网已经失陷了,仍然一片祥和的大图还是有的。
所以在企业建设中其实应该更加注重情报的准确率,不然只是一幅好看的图,放在控制中心的大屏幕上,对企业的安全防护没有任何帮助。
这样的做法或许在电视剧里可行,而在现实中更多的是难看的数据,需要一步步解码分析、过滤,最后提取其中真正可以处理的威胁。
笔者也是威胁情报领域一个刚刚入门的小白,在实际工作中发现,情报这个领域实在是太大了,就像苏格拉底的圆圈一样,圆圈越大,周长接触的威胁情报的领域越深,越会发现未知的东西越多。但是只要不怕真理无穷,进一寸有进一寸的欢喜,让自己满意就好(实在不行还可以加入美团骑手打工)。
以上,就是笔者今天带来的威胁情报的一些看法和应用,希望之后能带来更多有意义的分享。
08
参考链接
https://x.threatbook.cn/nodev4/vb4/article?threatInfoID=2981
https://x.threatbook.cn/nodev4/ip/1.180.27.204
- END -