最近,关于企业内部威胁的讨论成为网络安全的一个热门话题。本文参考国外的相关资料,抛砖引玉,力图为国内同行提供关于网络安全的参考信息。
在企业内部,由有各种访问权限的员工、合同工、供/承包商和设备供应商构成了企业的内部人员(insider),由他们引起的任何威胁都称之为内部威胁(insider threats)。内部威胁之所以很快引起重视,原因很简单:其一,在完全被信任的内部一旦产生威胁,造成损失的程度远远大于来自外部的攻击;其二,内部威胁很难被发现。传统的安全措施,例如白名单/黑名单阻止访问、IP过滤、添加防火墙和入侵检测等,这些技术的核心都是基于信任域的建立,旨在将威胁拒之门外。但是当威胁来自内部,他们就很难发挥作用。处理内部威胁需要有完全不同的策略。
众所周知,目前应对内部威胁的有效方法是监控内部人员的上网行为并发现其中的异常,这些异常行为中可能具有真正的安全威胁。信息安全和风险管理领域的从业者越来越关注行为分析技术,并在其基础上开发内部威胁防护解决方案,员工/用户活动监控(UAM)、用户和实体行为分析(UEBA)、数据防泄漏(DLP)等细分安全垂直领域的产品或多或少都包含了行为分析功能。机器学习和人工智能也开始以行为分析的创新者出现在很多产品的技术白皮书上,试图成为新一代信息安全领域的智能专家解决方案。
为什么机器学习在检测内部威胁方面能发挥很大作用呢?企业内部威胁的表现形式各不相同,其产生的根源可能是恶意的,也可能来自无意或偶然的行为:心怀不满或压力大、无作为、内外勾结、寻求曝光度、任性鲁莽、准备离职,甚至是其他无意但却无知的行动,这些内部员工的行为都是潜在的威胁风险。即使我们知道要监控寻找的目标内容,但从企业海量活动日志中发现内部异常行为的点,并且将这些点关联起来获得完整的上下文,对于人工操作来说基本上是不可能的。当企业用户数量很大,需要监控的点变成数十万个,甚至超过数百万个的时候,发现内部威胁的难度就可想而知了。机器学习恰好就是这样一种可以很好地处理这样的业务场景,在如此之大的数据集上建立基线并据此找到异常的有效方法。
机器学习的一个优势是该技术可以基于多个数据源寻找关联线索,例如,机器学习可以标记为有风险的某内部人员作为起始索引查看分析其在企业内部相关联的所有行为:网络登录/注销时间、位置数据、文件传输行为、社交媒体互动、工作绩效、旅行历史记录等,基于以上查看、分析工作等,向企业安全运维人员发出合理的警报通知,并且使用其他更多的分析工具(例如SIEM)进行更进一步的深入调查,以确认该行为是真正的安全事件或风险,或正常业务的“误报”(譬如员工分配了新项目,触发了该用户之前未执行的一系列行为活动而产生的警报)。分析师的最终审查和决定应该反馈给分析系统,以提高机器学习检测算法的准确性。
当用于检测企业内部威胁时,机器学习算法以下的优点得到充分发挥:
1、监督需求的减少
机器学习的自动化属性,大大减少了数据分析工作中对人工监督的需求。设置完成后,系统可以自动处理那些包括“发现”和“分类”等的大多数分析任务,在某些情况下,甚至可以对特定异常行为采取自动响应措施。
2、优异的可扩展性
机器学习可以处理来自多个数据源的海量数据,这个属性使其适合于大规模部署。实际上,数据集越大,系统可以“学习”的效果就越好。
3、高效的关联和回归
机器学习能够以人工操作无法达到的速度和效率来做数据的查找和分类工作,算法也长于从大量背景噪音中精确寻找到有效信号,这些属性都非常适合将用户的个别异常行为从其大量的正常活动中识别出来。
4、“误报”数量的减少
将无害行为误认为是恶意行为因而导致“误报”的产生,这是目前安全分析系统的最大问题,大量技术上非误报而业务上的“误报”浪费了企业安全运维人员时间和精力。更糟糕的是,当安全团队不断收到相同的错误警报时,“狼来了”的故事就会重演,即当真正的安全威胁事件发生时往往会被忽略。而机器学习领域中诸如决策树、基于规则的分类、自组织图、聚类等多种算法技术都可以用来在提供可靠的安全性前提下做到减少“误报”。
5、更快的检测和响应速度
正是当今不断优化的模型算法和硬件技术,为机器学习提供了对海量数据进行高效分析和异常检测的可能,进而使得企业可以利用机器学习更快更好地发现企业内部威胁。
6、持续不断的优化提高
这可能是在网络安全领域中使用机器学习技术最有价值的地方。天生具有自我演化发展属性的机器学习可以通过处理更多的案例,同时从人工干预中获得更多合理反馈,因此系统本身可以得到持续完善优化。更重要的是,作为一种新兴技术,目前机器学习领域中还处在日新月异的优化提高中,该属性与企业网络安全的发展也非常匹配。因为企业内部威胁也在无时无刻不断发展中,我们恰恰需要能够与之并驾齐驱、持续不断更新安全解决方案。
行为分析、威胁检测、分类和风险评分这些工作的实际过程很复杂,其复杂程度具体取决于所使用的机器学习算法,但是大多数系统使用的通用方法是“异常检测”。这个方法的思路是:正常的用户行为应与他所在的群体或他本人过去行为(称为基线)相匹配,偏离此基线发生的事件就是异常行为。一般情况下,这种异常可能是欺诈、破坏、内外串通、数据盗窃或其他恶意意图的行为。算法一旦检测到行为有偏差,便可以标记该事件做进一步调查,或者也可以设计为将该事件与过去记录的类似事件进行比较。这些之前的记录是基于培训数据或共享知识库(多个企业共享威胁情报等数据库)上执行监督算法的结果。在这个监督算法中,安全运维人员需要人工标记以区分“正常”或“异常”。在最终的输出结果中,展现的威胁记录具有风险评分属性,包括行为频率、涉及的资源、潜在影响、影响的节点数及其他变量。
将机器学习技术很好地应用于企业内部威胁的系统检测,需要仔细考虑和认真实现以下基本步骤:
1、数据特征输入
作为数据分析的一种技术,机器学习(数据分析)的第一步同样是用户和实体的行为数据集的输入,这个数据集即被系统监控分析的对象。例如应用程序/网站、电子邮件、文件系统、网络、元数据(例如监视时间)、用户角色/访问级别、内容、工作时间表等,输入的数据粒度越精细,系统的准确性就越高。
2、数据特征分类标签
这可以通过预定义的静态分类标准列表(例如PII,PHI,PFI,代码片段code snippets等),半动态列表(例如文件属性和来源)或使用OCR类型技术动态地在数据传输时发现并标记来完成。监督和非监督分类算法可以被用来基于这些列表参数过滤分析原始数据。例如,在过滤敏感文件的监督分类算法中,可以将“文件上载”参数作为输入标准,而使用文件属性/标记“机密”参数作为输出标准。
3、用户肖像构建
诸如用户角色、部门/组、访问级别等信息将从员工记录、HR系统、Active Directory、系统审核日志、数据仓库中的切块数据及其他相关数据源中提取,这些可以用于行为分析模型中的个性化配置,或之后与企业的访问控制和特权管理系统集成。
4、行为分析模型生成
不同的机器学习算法(例如特征提取,特征值分解,密度估计,聚类等)生成不同的行为分析模型,与之相关的统计/数学框架也需要进行优化调整。例如,基于回归的模型可用于预测未来的用户行为或发现信用卡欺诈,群集算法可用于比较业务对象的合规性(偏离合规)。
5、基线的持续优化
行为分析模型生成基线后,用好机器学习还需要完成一个重要的工作,即根据特定业务目的进行优化调整。譬如添加时间或频率分量以在不同的偏差水平上触发相关规则,定义合适的风险评分等。也可以通过额外的过滤来提高算法的效率并减少“误报”数量。例如在网站异常检测中添加域过滤条件以减少需要更深一步检查的安全事件的数量。几乎在所有的情况下,个人、小组/部门或企业等不同级别生成的分析基线都可以做类似的优化。
6、与安全产品策略和规则整合
根据模型产生的行为基线用于识别威胁并在发生异常情况时触发警报。某些员工监控、UEBA、DLP产品将这些行为基线与产品的策略和规则引擎集成,试图能够主动防御威胁的发生。这些策略和规则引擎支持以下操作:警告用户、阻断流量、通知管理员、执行特定命令或重新记录以做审计溯源调查之用。
7、人工反馈优化
到目前为止,无论机器学习系统有多么出色,仍然不可避免错误的发生:产生误报或漏报威胁。当前的技术还无法实现对人类行为的完全精准建模,所以,安全运维人员还不得不评估和进一步人工分析机器学习系统的输出。幸运的是,机器学习系统能够响应人工的输入,通过足够多的人工反馈,系统的准确性会不断优化,随着时间的推移,系统需要的人工干预会越来越少。
行为分析和机器学习虽然有很多优势,但也有一定的局限性,并不是应对内部威胁的灵丹妙药,利用机器学习的最佳方法是将其视为企业安全工具箱中的一种(功能很强大的)。随着所面临的威胁形势的发展趋势变化,企业需要能够应对来自内部威胁的动态(非静态)技术,像恶意用户、间谍、破坏、欺诈、数据和IP盗窃、特权滥用以及其他难以识别的风险等,而机器学习正是朝着这个正确方向发展的前途无限的技术!
关于全息网御:全息网御科技融合NG-DLP、UEBA、NG-SIEM、CASB四项先进技术,结合机器学习(人工智能),发现并实时重构网络中不可见的”用户-设备-数据”互动关系,推出以用户行为为核心的信息安全风险感知平台,为企业的信息安全管理提供无感知、无死角的智能追溯系统,高效精准的审计过去、监控现在、防患未来,极大提高IT安全运维和安全人员响应事故、抓取证据链、追责去责无责、恢复IT系统的能力和效率。