好莱坞1994年有一部电影叫“内部敌人”(The Enemy Within),讲述一名海军军官发现了他邪恶的上司图谋杀害美国总统的计划。军官必须迅速找到政变的证据,才有可能在刺杀行动前有时间拯救总统。这个故事陈述了两个事实:一是敌人已经在内部,防范难度更大;二是如何在短时间内获取证据,争取第一时间采取预防举措,这和今天的网络安全状况有很大相似之处。让我们来看一看在网络安全领域,敌人是如何打入内部以及我们该如何应对并快速获取证据链的。
在勒索病毒这个巨大的黑色产业链上,一个叫LAPSUS$ 黑客组织近期似乎异军突起,虽然相对较新,但在成功入侵微软等大公司并在网上吹嘘之后,已成国际上为最受关注和最令人惧怕的黑客网络犯罪团伙之一。
专注于黑客犯罪组织调查的著名记者Brian Brebs在其主办的Krebs On Security博客上发表的一篇《近距离观察LAPSUS$”》的文章中写到,微软和身份管理平台Okta在2022年3月中旬都披露了涉及LAPSUS$的入侵行为。
据微软透露,黑客组织入侵了其一名员工的账户,虽然没有具体说明该账号是如何被泄露的,却陈述了在通常情况下,Lapsus$会使用破解的凭据访问公司面向互联网的设备和系统,例如VPN网络、远程桌面、或身份管理服务(例如Okta)。至少在一次失陷中,Lapsus$进行了SIM卡交换攻击,以控制员工的电话号码和短信,从而获得登录目标机构所需的多因素身份验证(MFA)代码。在获得对机构网络的访问权后,LAPSUS$便使用公开可用的工具来探索用户账户,以找到具有更高权限或更广泛访问权限的员工,继而瞄准开发和协作平台,例如Jira、Slack和Microsoft Teams,在这些平台上获得更多凭据。
黑客组织使用这些凭据来访问GitLab、GitHub和Azure DevOps上的源代码存储库。为了避免触发目标机构的网络攻击检测工具,Lapsus$团伙甚至在被攻击的目标机构本地所在的虚拟专用服务(VPS)运营商里建立专用基础设施,利用消费者常用的NordVPN来渗漏盗窃的数据。
LAPSUS一直在通过多个社交媒体平台招募目标机构的内部人员或贿赂目标机构合作伙伴的员工(例如客户支持呼叫中心和服务台)。一位使用绰号“Oklaqq”和“WhiteDoxbin”的LAPSUS$核心成员去年在美国社交新闻聚合评级网站Reddit上发布了招聘信息(如附图),以每周2万美元的报酬招募AT&T、T-Mobile和Verizon的员工为其执行“内部工作”。
根据微软的调查,LAPSUS$很清楚如今大多数员工都使用某种VPN来远程访问其雇主公司的网络,因此他们会先瞄准目标机构员工的个人电子邮件帐户,破解其登录凭证以获得访问权,然后寻找用于访问公司系统的其他凭据。鉴于员工通常使用这些个人账户或号码作为他们的第二因素身份验证或密码恢复,机构通常会使用这种访问来重置密码并完成帐户恢复操作,LAPSUS$如此可以获得公司业务系统的访问权,成为“内部人员”。
由此可见,虽然防火墙及入侵检测这类边界防护手段对于机构而言仍是非常必要的防范措施,但犯罪份子能够打入内部已然是不争事实。那么如何迅速获取证据,发现“内部敌人”成为当今网络安全界一个无法回避和必须解决的硬核问题。
内部敌人就像是披上羊皮混入羊群的狼,很难被发现的。但是就像猎人可以通过观察羊群的行为特征来发现狼一样,我们可以通过用户的网络行为,来发现内部敌人。异常行为的发现可以从两个不同的角度来挖掘:一种是围绕用户个体本身,对其进行画像,建立行为基线,发现其偏离基线的异常行为;第二种是以用户所在的群体为基础,对比个体与群体的差异发现异常,即“聚类分析”。
不论是统计方法还是机器学习,这类模型和算法都比较成熟,那为什么异常行为的检测仍然是个挑战?其根源就在于这些模型和算法所严重依赖的数据源质量,正所谓巧妇难为无米之炊。以用户基线行为分析为例,为了能准确地描述她的行为,除了时间、地点这类基础信息外,我们还需要掌握她访问了哪些业务系统,其中有什么样的数据,数据的类别和敏感级别等关键信息,甚至还要了解她使用了什么样的终端设备。如果我们不能精准获取这些重要数据以及它们之间的内在关联关系,就会造成大量的行为数据张冠李戴,污染模型和算法所依赖的数据源,这样再成熟的算法也无法正确分析用户个体行为是否异常。那么行为分析究竟需要哪些信息?获取这些信息的难度在哪里?下面就让我们来简单分析一下。
犯罪分子打入机构内部的最重要目的就是盗窃有价值的数据,这类数据大都存放在企业数据中心的相关业务系统或服务器,而连接到数据中心的网络是数据盗窃的必经之路。监控网络上数据中心业务系统的访客行为无疑是获取盗窃证据链最有效的手段,那么最直接的方法就是在网络上安装网络探针(采集器)。然而,工作在网络3-7层之间的传统的网络采集器,即便是号称全流量采集,也面临着下面的问题:
- 缺乏用户信息
在网络流量中截取的每个数据包一般并没有用户名,而用户信息一般只有在登录时才提供,在后续的持续访问中,从独立的数据包中很难获取这类信息。
- 源IP≠用户
有的采集器利用访问的源IP来代表用户,即把一个IP地址标注成一个特定的用户。但当这个源IP被另外一个用户使用时(DHCP分配),后续访问的数据将被错误的划归为前面的用户,造成数据混乱。
- DLP充当探针的狭隘性
像DLP这类运行在网络7层以上(数据层,我们称之为第8层),对内容深度检测的探针,因为缺乏所有网络层完整的信息,能获取的用户名有很大的随机性,并不能保证每个文件或敏感信息都能够找到对应的用户。
这样一来,看似简单的数据与用户之间的关联关系,在一个多用户共享的网络中却变得扑朔迷离,模糊不清。那么有人一定会争辩说,因为出入客户端的所有数据都属于这个用户,所以从客户端获取从属信息不就能解决问题吗? 理论上是这样,但此处又涉及几个问题:
1. 终端流量覆盖的全面性
只有在所有网络访问的终端都安装代理软件来提供这些信息后,才有可能覆盖网络探针所能覆盖的流量。而因为终端的多样性和版本间的差异性,几乎没有一家厂商能覆盖所有的终端设备。
2. 终端日志发送的实时性
大部分客户终端获取的日志信息因为与分析系统网络连接的连续性及终端性能的考虑,都不是随时将收集到的信息实时发送到分析平台,有随机性延时,所以影响分析结果的及时性。
3. 大数据的算力问题
终端生成的许多日志信息可能与数据中心业务系统的访问没有任何关系,大量的终端日志形成的大数据因为受到分析系统算力限制,需要更长时间才能完成,使得短时间内发现异常并提供证据链无法成为现实。
由此可见,通过网络探针实时构建数据与其使用者之间的准确关系,是机构及时发现内部敌人的关键能力。
全息网御经过数年专注于流动数据实时监控的技术研发,基于网络二层到八层(数据层,我们称之为第八层)的数据采集和边缘计算,结合全息关联专利技术,成功地克服了传统网络采集器的局限性,创造性地解决了这一难题,使网络中流动的任何一个有价值的数据都实时准确地归属到其真正的使用者,生成“数据-用户-应用-设备”的多维互动关联全息图,为高度依赖精准数据的统计模型和机器学习建立了可靠牢固的数据基础。
基于这种多维画像和精准基线的行为分析,极大地降低了因数据源污染和混乱造成的误报,而且因为这种按需采集的数据量比收集各种网络设备的“大数据”通常要低一个数量级,从而极大地降低了对分析系统算力的压力,可以实现近于实时的异常行为监测,快速发现内部敌人,使安全运维人员能够有充分时间及早采取防范措施。