笔者做了多年的安全服务,这几年集中精力在做安全分析类引擎或产品,关于大数据时代信息安全的三点个人看法,作为引言。
大数据时代数据的采集、存储、分析、呈现等等,很少有一家能完全做的了,通吃也真没必要也没能力,从细分看, 做采集的可能有集成商或服务商A来完成实施工作;做存储的有擅长存储的B来做;做分析层的需要有懂业务、了解安全的服务商C来完成,数据的呈现又是专门的团队或开发商D来做。做自己最擅长的,其他的找合作伙伴,能够最快速的形成整体来满足用户的需求至关重要。市场竞争大部分时候拼的就是时间,天下武功唯快不破。
航母是一个平台,自己不产生进攻能力,让航母上的舰载机具备强大进攻能力。对信息安全行业依然如此。,“建平台+补内容”是国内目前安全建设的基本路子。在网络完成初期的平台建设(数据的采集、集中存储)后一定会走向精耕细做的数据分析上来。用户越来越务实,数据分析建模越来越重要,“内容”会成为新焦点,“平台”因“内容”而产生价值。
安全是对抗,不可能完全防范,单纯的防御措施无法阻止蓄意的攻击者,这已经是大家都认同的事实。gartner的自适应安全架构也提到了检测、预警、响应的重要性。Gartner预测到2020年,防范措施将不再重要,关键是监控和情报,60%的安全预算会投入到检测和响应中。
安全行业这两年来,思维模式已经从单纯强调防护,转变到注重预警、检测、响应的格局,安全能力从“防范”为主转向“快速检测和响应能力”的构建,实时防御将以威胁为中心,它不再强调单点的检测,也不再单纯的追求告警的精确性,而是将若干的点关联起来,以数据为驱动来解决问题。
笔者将以威胁为中心的信息安全能力建设问题总结为以下四句话,并进行详细阐述。
1. 全面感知是基础
2. 异常行为是线索
3. 分析能力是关键
4. 响应处置是根本
没有数据,类似无米之炊,数据源的完备才能够真正的实现异常行为分析。数据源不仅对传统的安全日志进行收集处理、更可将收集的范围扩充至业务数据、运维数据甚至用户数据,涉及的对象包括日志、流量、内容、系统状态等。
IAM在这里是很重要的一个数据源,必须与人关联,分析才更有效果。
业务日志是数据源很关键的一部分,可以通过业务日志的综合分析,发现业务层面的违规异常行为,用户首先关注业务安全。
企业需要从事件驱使型(被动)感知,向情报引导及风险驱使型(主动)感知转变。
被动感知
被动感知主要指传统的被动检测方式:各种IPS\IDS\APT等流量监测产品的报警,或者来自第三方的通报(如:行业主管或者国家监管部门),了解我们网络中发生的威胁。
2. 主动感知
主动安全不是说直接攻击对手,而是在攻击者有攻击企图的早期就能预警到,并进行主动探测,并能及时采取action。威胁情报分析,实质也就是挖掘整体黑色产业链,主动的监控、切断相关环节,并对恶意工具的制作者、攻击者、卖家买家等进行查出,从而达到主动防御的效果。
下面用表格方式展示常见“主动”、“被动”技术手段的输入输出。
要想全面的感知安全威胁,我们从三个维度来看:
在外部看外部
有些安全风险或外部威胁,即便企业从内部做再多的数据监控都无法发现这一部分。比如伪基站、撞库攻击、Github信息泄露、钓鱼等等。对于这类威胁或者信息泄漏,我们必须在外部看外部,利用网络技术在各知名安全情报平台收集最新的威胁信息才能实现,一些知名网站补天、Whois、安全人员的社交圈如Twitter、微博、技术博客、以及开源的情报站点alexa.com、malwaredomains.com、blocklist.de、openphish.com、isc.sans.edu等,都是收集威胁或风险信息的好渠道。
2. 从外部看内部暴露面
企业到底有哪些设备/应用暴露在互联网?都是什么样设备/应用?这些设备/应用处于什么状态?它们开放了那些端口,提供了哪些服务?这些设备/应用现在存在哪些风险?暴露面越大风险就越大。这些都需要从互联网侧对内部进行测试探知。目前业内很热的网站安全监控系统其实就是类似的一种方式,包括网站的可用性测试、漏洞测试、页面篡改、非法内容测试等都是这种方式。
3. 在内部看内部
内部的威胁感知也非常重要,目前业内的安全威胁检测系统通过自动探测网络流量或系统数据发现可能涉及的潜在入侵、攻击和滥用的安全威胁。大量的UEBA类产品出现,也是对内部用户行为感知的重要手段,合法的人干非法的事能及时发现至关重要。
用户的异常业务行为复杂多样,以下列举了常见的几种:
用户的业务违规行为:包括恶意业务订购、业务只查询不办理、高频业务访问、业务绕行等等都是需要关注的点。
内部人员的异常行为:比如斯诺登经常要同事的帐号访问系统,斯诺登可能比一般员工更多的访问了核心服务器,斯诺登可能短时间内打包了很多的敏感数据等。
某个用户突然有一天接收了大量的历史邮件。(接收过的邮件一般用户都不会再看,这次异常是用户自己操作的吗?)
终端用户行为历史。如A部门用户每天平均访问220次关键数据,某一天突然访问次数超过500次。
某用户使用压缩软件RAR打包大量敏感数据、使用USB设备中密集大量拷贝敏感数据、用户或设备频繁外发加密文件、从内部服务器下载大量表单等数据、大量访问恶意URL的请求等这些异常行为都有可能表示该用户在有意或无意(被控)的做一些破坏性事务。
所有的行为,我们都可以通过5W1H(WWWWWH)模型进行抽样表示。这里称作5W1H行为分析模型。
Who(行为执行者):指操作行为的执行者,包含用户名、主从帐号、人员组织结构(主帐号组织)、业务组织结构(从帐号组织)等信息。
When(在什么时间):行为发生的时间或时间段。
Where(在什么地点):行为发生地点,包括IP地址、网段、地域。
What(对哪些事物):行为操作对象或内容。包含资源、对象等(安全资产): 资源:应用、主机、数据库、网络与安全 设备等;对象:数据库表、文件、模块、菜单、配置等
How(做了些什么):所执行的行为操作,包括登录、认证、帐号与授权、敏感数据操作、关键操作(增加、删除、修改、查询、下载)等。包括主机类操作、数据库类操作、网络安全类操作、应用类操作。
Why(为什么做):行为操作凭据,主要是指行为操作的工单等依据。
线索是未知威胁留下的痕迹,是入侵造成的异常。如果你发现一个异常,无论是恶意域名或疑似木马,还是疑似盗取数据的行为,那么你就有了一个起始点,也许这时候你并不知道面对的是什么样的威胁,或者根本就不是威胁,但至少可以深入调查。如果线索质量高,十有八九你真能很快定位一次入侵。
笔者经历过多次的信息安全事件,其实并不是每个安全事件都能找到最后的原因,更不用说追踪到攻击者或恶意行为者。多年前曾处理过一个安全事故:用户的系统一天出现了30多万的国际长途电话费用,最后组织各方力量也未能查到到底谁干的,怀疑可能是内部开发人员在代码中潜入了拨打的代码,并能在某个时间触发。其实每次事件的追查成本都是很高的,异常行为发现就是很好的止损的一种思路,比如银行的ATM取款机每天只能取走2万现金,这些看似很简单的限制其实作用非常大。比如某单位每天的国际话费门槛为1万,超过就告警。
外部攻击者进入内网后,到最后偷取数据,中间是要进行很多的所谓“活动”,其行为一定会有区别与正常的用户行为,他一定会到处找目标,可能会东张四望,可能访问不该访问的地方,可能越权去做不该做的操作,可能以同一身份通过不同设备登录。这种行为称为攻击者的“内部潜行”(lateral movement)。高明的攻击者在进入内网后,都倾向伪装成合法用户的身份去做一些非法的事情。如何通过异常能发现披着羊皮的狼就很关键了。如果说“基于特征匹配的检测防范了已知威胁”、基于“虚拟执行的检测阻止了未知恶意代码进入系统内部”,那么对于已经渗透进入系统内部的攻击者而言,“异常行为检测成为了识别该类威胁的唯一机会”。
大家现在乐于说信息安全看见(visibility )的能力很重要,要知己知彼,其实异常行为是最关键的一条安全线索。先能看见,才能做好后续的风险控制。
在实际的工作过程中,我们可以设定一些异常行为的场景,并通过自动化的手段进行异常发现。下面列举几个典型的异常行为场景:
1) 异常情境:异常资产的发现
可以通过对网络互联关系的全面监控, 捕捉每一条互联关系并生成纪录,对任何非法在线的入网设备哪怕只要在线进行一次连接动作,就一定能够发现并对非法设备的连接行为进行取证。同时对系统中有网络信息变动的设备也可以第一时间发现。
2) 异常情境:用户的异常登录
用户登录异常行为一般包括:异常时间、异常IP、多IP登录、非个人用户帐号登录、频繁登录失败等。登录异常行为同时也包括共享账户行为,比如一个账号短时间更换IP登陆,一个IP登陆了多个账号等。同时要包括设备指纹的识别,比如用户登录的终端忽然换了浏览器(是别人冒名登录还是用户重新使用了新的设备?)。
下图显示了异常登录的分析模型,主要的分析参数包括设备指纹、登录IP地址、是否为代理、登录时间、用户属性以及是否黑名单等。
3) 异常情境:敏感数据异常访问
大多数用户的日常行为是可预测的,每天的日常活动都差不多。恶意的内部人员在偷盗数据或搞破坏前一定有异常的行为。对于可疑的员工连接关键资产一定要引起足够重视。这种异常通常未必是一个确定的违规行为,但它可以作为重要的调查信息。
下图为同一账户非授权访问敏感数据的分析模型:
4) 异常情境:木马C&C隐蔽通道检测
针对新型木马不断出现,基于特征检测的方法无法有效检测特征库之外的木马的缺点,我们可以采用基于木马流量行为特征的木马检测方法。其优势在于可以检测新型未知木马,无需依赖木马特征库工作,提高了新型木马检测的时效性。
5) 异常情境:异常的网络行为
采用统计分析的方式,也可以发现一些异常行为,比如从抓取的大量的流量数据中,总结出“正常应用”的数据流量特征,就容易发现“异常流量”,同时再进一步对异常流量涉及的IP进行重点分析,发现攻击行为。异常的网络行为包括:异常的域名或IP访问、异常的访问流量、异常的访问端口、异常的连接时间,异常的连接频度,异常的协议传输等。
6) 行为序列分析
很多场景下,单个的行为都是正常的,但是行为序列化分析,就会发现为异常行为。比如:某木马的被控端工作的时候,会自动向控制端的80端口发起连接,通过正常的http协议获取验证文件,以验证控制端的有效性;如果验证文件获取成功,木马会连接控制端的一个自定义端口,使用加密协议接受控制端的控制。这个连接过程,80端口的连接和内容都是正常的;而自定义端口是随机的、协议是未知的并且连接内容是加密的,单独用那一个连接,都无法通过特征匹配的方法来判断出木马。而把两个行为放在一起分析,获得行为序列的综合特征。
安全分析员需要的是线索,线索只能代表相关性,而不是确定性,异常行为就是信息安全的一条重要线索。工作在第一线的技术人员,却往往在发现可疑线索后,限于对线索研判的可信原始数据支持的条件制约,很难实现对其事件定性及线索回查,处于被动防御的局面。如何能够化被动防御为主动防御,异常行为的钻取、关联、挖掘非常重要,通过分析将一连串的线索穿起来,由点及面进而逼近真相。举个例子:从可疑IP、关联到访问的用户,从可疑的用户关联到其使用应用、数据库或相关敏感文件等,以时间维度,确定出恶意行为的行为序列,进一步可进行相关的责任界定等。
在整个短缺的人才中,安全分析师是首当其冲的。安全分析是要解读报警、针对相关数据分析和调查,并确定事件是否需要进一步升级,分析师还可能参与事件响应过程或者其它任务(如:主机取证或者恶意软件分析等)。安全分析需要三个学科的交叉:安全技能(这里不是“黑客”,是安全攻防技术),对业务的深入理解,以及数学和统计(包括应用数据分析工具)。现在的大数据安全分析很难,主要是同时具备这三部分能力的团队太少。通过协同合作可以来解决这些问题。安全攻防知识是基础,对业务和数据的深入理解才是根本。
一个好的安全分析师,需要依托一个良好的安全分析平台才能事半功倍,好的安全你分析平台需要具备以下因素:
分析能力引擎化:国际著名的splunk分析平台,其自身也有一款安全产品,名字叫做Splunk App For Enterprise Security,主要就是通过社区模式打造的安全分析插件共享平台。分析人员的分析能力引擎化才能更好的协助分析师进行安全分析工作。
结合外部威胁情报:分析平台最好可以集中多个来源的情报数据。实现对其事件定性及线索反查与线索扩展以及对攻击事态第一时间发现感知。威胁情报库一般包括恶意程序样本库、恶意程序分析报告库、恶意URL库、黑白域名库、黑白IP库、攻击行为特征库、WHOIS信息库、漏洞库等数据支撑库,并通过数据挖掘与分析技术挖掘统一威胁线索,为安全专家定位网络攻击提供事实依据
社区化,建立生态:我们必须依靠协同、集体的力量才能更有效的发现威胁,可以通过社区的方式大家来共享分析插件,无社区不生命。2016年RSA的创新沙盒第一名,Phantom平台采用社区模式,通过接入第三方安全设备或服务实现平台的扩展性。安全设备或服务接入是通过定制Phantom App实现的。Phantom Apps基于Python语言开发,允许社区内的任何人分享数据信息来扩展平台的能力,也允许在App
store中分享自定义的Apps。
可视化呈现:这里就不多阐述,可视化确实能是分析人员的工作效率提高很多。
自动化安全运维市场潜力巨大。现在安全人员的工作强度和压力非常之高,能降低工作量并提高效率的产品肯定会广受欢迎。我们从实际场景来看一起自动化运维的例子。发现一起可以攻击或可以事件,我们一般有两条线可以往下延伸,1)攻击侧的深挖:可以自动化的通过TI(威胁情报平台),对攻击源进行关联分析,对攻击者、攻击手法等进行画像。甚至可以开启自动化的端口扫描对源地址进行信息探测,进行更深入的分析。2)受害侧的处置:自动化的关联漏洞扫描系统,对被攻击者进行扫描,根据扫描结果关联到应急响应平台,获取漏洞的处置方式并进行相关漏洞修复或执行自动化的访问控制措施等。最后再通过检测系统对漏洞处置的结果进行返回确认。
没有action的威胁情报,只会徒增安全管理员的烦恼和痛苦。大部分的用户可以采用自建运营团队或外部服务的方式来进行威胁的应对和处置。FireEye提出了FireEye-As-A-Service的概念,并在近期重点宣传。和FireEye之前服务最大的不同就是FireEye的技术人员将7×24小时地监控你的FireEye系统,一旦发现威胁,FireEye的人员将不再像传统服务那样只是提供建议或电话支持,而是直接操作你的设备进行响应,并结合技术检测和专家服务,组成技术、专家和智能的闭环。
安全行业目前已经有了很多平台:漏洞平台、众测平台、在线教育、威胁情报、安全媒体……,但是安全加固或应急处置平台目前业内还没有看到,该平台对漏洞修复、常见事件处理提供有效的验证过的处理方法、处理流程、处理工具等,可以大大提供维护人员的工作效率。我们也期待社区化模式的应急响应平台的出现。
近几年,不断涌现出异常行为和安全威胁分析的安全产品类别,主要包括如下。每个产品都从不同侧面展现了异常行为分析的能力。
UEBA – User and Entity Behavior Analytics
CASB – Cloud Application Security Broker
DLP – Data Leakage Protection
EDR – Endpoint Detection and Response
SIEM – Security Information & Event Management
下面对三个典型的分析产品做简要介绍。(部分文字翻译自厂商资料)
互联网业务未来看加密一定会常态化,DPI、内容识别的路子越来越窄。思科推出的ETA技术(Encrypted Traffic Analytics,加密流量分析功能),通过安全研究人员研究了数百万不同流量上恶意流量和良性流量使用TLS、DNS和HTTP方面的差异,提炼出恶意软件最明显的一系列流量特性,专门针对网络流量中加密或隐蔽隧道中威胁识别,并最终形成了思科针对恶意软件流量传输模型的Security Map。该方案通过收集来自全新Catalyst® 9000交换机和Cisco 4000系列集成多业务路由器的增强型NetFlow信息,再与思科的高级安全分析能力进行组合,ETA能够帮助IT人员在无需解密的情况下找出加密流量中的恶意威胁。
interset公司主要专注内部异常行为的检测,为了降低误报和去噪,采用了异常行为的量化评价的方式进行呈现;借助斯诺登的事件作为样例,interset提出的行为风险分析的组成元素有:User成员、Activity事件、File资产/文件、Method方法
如图4个组成元素(User成员、Activity事件、File资产/文件、Method方法)说明例子中的行为风险是如何分析的, 详细解释如下:
组织中的每个成员(人、设备)都有一个风险评分,风险分基于他们的角色、连接的IP、被发现的行为,并计算进总风险分。成员的风险分相互独立,并根据他们的所做的事情的风险和安全程度不断上下浮动。
Activity事件:复制数量异常巨大的文件
每个行为的得分根据往常历史和基准的不同而不同。例如:根据历史记录,斯诺登每天只复制几MB数据,而不是当前事件中的几GB数据。当与以往基准行为相比,出现高度异常时,行为风险部分得分会很高。根据以往记录(同一用户与以前相比复制了过多的文件,或用户与组内其他相同职位成员相比复制了过多的文件),基准行为的得分是可计算的。
每个被复制的文件,根据对组织的重要程度、恶意外泄的影响、文件所起的作用、文件本身的脆弱性,都有一个风险分,并为总风险分提供依据。
当资产被转移时,风险分开始计算,当被转移出公司认为是“安全区域”的地带时,风险分增加。例如:如果USB上传被认为是禁止或是不符合策略的,行为风险将被建模。不同组织有不同的对待外部设备的策略,风险分数根据策略和可疑程度上下浮动。根据这4个得分最终计算出总风险。
interset主要基于终端的信息收集,通过数据分析引擎提供违规行为的安全告警。同时为常见的SOC、SIEM平台提供了API接口。
Vectra的异常行为分析主要通过以下过程实现,基于网络流量检测、注重可视化是该平台非常明显的一个特色。
(一) 关键资产的识别:
通过分析内部网络流量,采用机器学习的方式自动化的识别组织内的安全资产(设备),同时将组织内的设备或资产显示在一张逻辑图上,很便利的看到设备之间的互联关系。关键资产的识别主要基于几个要素:可根据资产上存放的数据的重要性,同时考虑资产的使用者的重要性来确定是否是关键资产。比如关键员工和高管的笔记本就可以被标记为关键资产,在Vectra的产品界面上很容易进行资产标记。
(二) 异常行为的发现:
该系统也可以检测或识别出内部用户的端口扫描、暗网扫描、暴力破解等攻击行为,如果是针对组织的关键资产所发起的攻击行为,这就可以当作一个内部威胁的重要标识。比如一般内部用户不会直接访问c&c服务器,如果出现这些行为都代表内部用户确实出了问题。其产品针对不同的恶意行为通过不同的告警颜色进行标识。
(三) 数据盗取的追踪:
vectra采用数据科学技术自动化的检测网络内部用户的数据的打包、偷取等行为,机器学习能主动发现在堆积如山的数据中恶意的内部人员。偷取数据一般两种途径:内部人员可能通过物理介质比如USB设备偷取数据,另一种常见的是通过网络来偷取数据,后一种可以通过检测网络流量中是否存在隐藏TUNNELS、TOR活动、staged hop等,如果存在这些情况基本可以判定发生了内部的数据盗取威胁,通过关联分析,可以发现内部人员数据偷取的整体行为视图。
被攻陷是难免的,安全能力应从“防范”为主转向“检测和响应”能力的构建,以威胁为中心,能快速发现威胁并及时处置确保最小化的损失或避免损失。
未来安全的防护思路从“篱笆式”变成“猎人式”,不是被动的防御,而是主动的发现安全威胁并处置。通过威胁情报结合异常行为分析,协同防御。
安全是人和人的对抗,和战争一样,最终拼的是资源。如何更有效的使用资源最关键。通过发现异常行为,再逐步深入采用更高成本的流量分析、沙箱执行、人工介入等,是更可行的一种安全防御思路。
信息安全的建设思路出发点是“止损”,能快速发现异常并及时处置确保最小化的损失。
*本文转载自Sec-UN 安全村,willhuang整理,转载请注明来自FreeBuf.COM