随着金融行业交易数据的电子化发展,以及互联网金融不断发展出现的业务模式的创新,可以说IT信息系统已经是金融立命之本,起面临的各类的安全风险和挑战不容任何一家金融机构去忽视它。
APT介绍
APT(Advanced Persistent Threat)——高级持续性威胁,Gartner将APT攻击定义为“可利用恶意程序穿透目前的安全控制系统,大大延迟恶意程序感染检测,建立长期据点,给企业造成实质性伤害或搜集信息,将目标数据从机构系统中渗出。” APT攻击主要动机有:获取经济利益、窃取敏感信息等,使用技术手段多方面或者混合式的技术,如社会工程学、贿赂、恶意程序、物理盗窃、官方影响等来实现目的。APT攻击特点是:
- 高级(advanced):攻击者想法设法绕过企业现有防御措施,通常可能会利用鱼叉攻击、水坑攻击等攻击手段,导致企业现有的防御体系的失效;
- 持续(persistent):攻击者会不断尝试,直到进入目标系统,并且一旦进入目标系统后攻击者会在系统内部不断横向渗透,剑指企业核心数据;
- 威胁(threat):APT攻击通常难以发现,而且给企业带来的损失是难以估量的,甚至能够影响企业生存。
行业内外部环境
随着金融行业交易数据的电子化发展,以及互联网金融不断发展出现的业务模式的创新,可以说IT信息系统已经是金融立命之本,起面临的各类的安全风险和挑战不容任何一家金融机构去忽视它。2011年韩国农协银行遭受鱼叉式APT攻击,导致数以万计的交易数据被恶意删除,上千个网点中断了服务,韩国农协银行更是接到了几十万个电话投诉,影响非常之大。另一方面,金融信息系统是国家关键的信息系统基础设施,因此中国银监会在2016年发布了《中国银监会办公厅关于开展银行业网络安全风险专项评估治理及配合做好关键信息基础设施网络安全检查工作的通知》,简称107号文,文中提出政策性银行、大型银行、股份制银行、邮储银行要针对高级持续性威胁、精准式网络攻击进行安全评估,对威胁和攻击进行分类场景设定,有针对性地排查系统漏洞、分析脆弱性;形成应对此类攻击的防护措施专项评估报告,同时加强应对高级持续性威胁、精准式网络攻击的应急预案建设和评估。
面对自身业务安全需求以及行业监管,金融单位如何做好APT防御,是本文致力于和各位同仁一起探讨的初衷。
建设原则
APT防御是一项复杂、多技术融合体系,从大量报道事实上来看,仅仅依靠一款产品或者管理制度是不足以解决APT攻击的。APT其针对性强、难以检测和发现的特点,企业应该注重构建纵深式防御体系,所谓纵深式防御体系不是在相同的检测手段上重复建设,而是通过在不同层面实施不同安全方案,避免因为检测不能不足、或者人为的疏漏导致的漏洞,不同安全方案之间相互配合,构成一个整体的防御体系。
因此,企业在建设APT防御体系参考的建设原则:
- 纵深防御且技术手段轻量有效
APT防御体系首先要考虑应该就是面的防御,攻击者只要攻破企业的任何一个点,就有可能导致整体安全策略的失效,因为防御体系需要覆盖到终端、网络、邮件,实现对整个整体攻击面的防御,需要指出的是,覆盖面的防御,不是在多个层面实施相同技术手段,而是正确的位置做正确的事情,且要在多个点上实现安全方案交叉,最大程度实现对未知异常攻击攻击检测;同时和纵深式防御对立是,APT攻击往往针对有价值的目标,这类目标企业往往都有复杂的组织架构,动辄几千人、几万人甚至几十万人的规模,如果防御体系不考虑ROI,在每个终端都层层重兵把守,势必带来成本的急剧增加,且安全管理上也势必复杂臃肿,不符合企业业务发展,因此防御体系应考虑轻量且有效技术手段,因此,合理使用匹配业务发展的技术手段,比如通过SIEM分析异常行为,虽然不能实现自动防御和拦截攻击,但是通过快速响应机制(如隔离受影响主机),迅速减少APT攻击带来的可能后续影响,也可以实现防御体系的平衡;
- 闭环的连续响应机制
面对APT攻击,以100%安全防护为目标是不切实际的想法。整体安全防御的思路应从从过去的安全防护为主,转变为覆盖防护、检测、处置、预警四阶段闭环连续响应的模式。通过预警、防护、检测和处置的闭环连续响应,不断提高系统的安全防护水平,实现对系统的动态防御。图3.1为可供参考的连续响应机制设计。
- 连续响应机制
- 从安全产品集成为主,到安全能力集成为主
安全攻击技术的发展非常迅速,而传统的安全产品从部署到升级需要一个较长的周期。这就造成了安全防护总是落后于安全攻击的现状。因此,在安全防御体系设计中,安全防护的重点不在是部署了哪些安全设备,而是重点设计如何引入外部安全能力以及企业内部安全产品的协同防御能力,以“不变”的安全能力部署应对“万变”的攻击手段。
实现设计
防御体系架构设计
根据前面叙述,为了建设一套能够有效的检测APT攻击的防御体系,按照防御体系安全能力不同,将安全防御机制划分成三个层次,分别是防护层、协同层以及检测层,不同层次对应的安全技术手段如图3.1所示:
防御体系架构设计
防护层安全功能介绍
防护层是实现安全防御的重要屏障,此层次安全防御面主要是应对来自网络、终端、邮件等不同载体行为的网络攻击行为,利用现有市面成熟的安全防御产品或者解决方案即可满足。
入侵防护
入侵防护用来应对来着网络载体的攻击行为,成熟安全产品主要有:IPS、NGFW等,为了实现检测层和协同层设计,需要重点考察此类产品的安全技术有:
- 机读威胁情报消费能力
- 响应方式多样性
- 开放管理接口
- 告警日志字段要足够丰富,便于进一步分析
- 作为支撑攻击溯源分析的探针
恶意软件检测
常见的恶意软件检测主要以沙箱解决方案为主,在形态上有两种方式:部署在网络链路上的沙箱系统和部署在终端上的沙箱系统,其中终端沙箱系统,在保持其较高的检出率时往往对终端性能消耗较大,会直接影响企业员工正常工作,从而产生对安装的抵触,因此建议一种处理方式是,办公终端安全软件应保持轻量级,将分析转移到服务器上进行,比如云查杀、轻量的终端杀软联动沙箱服务器等解决方案。
针对沙箱系统在强调检出率和误报率的同时,为实现整体的防御体系,企业应该终端关注的核心安全功能有:
- 具备机读威胁情报生产
邮件防护
鱼叉式APT攻击主要载体便是邮件,因此邮件防护尤其重要。传统的邮件安全网关主要集成了反垃圾邮件、附件病毒扫描、黑白名单、过滤等功能模块,在APT防御建设中,除了上述基础性的安全防护外,重点需要考虑产品功能有:
- 集成沙箱分析系统能力,主要以下两种方式,对比两种方式,第二种方式将邮件网关和沙箱解耦,不必去关心因产品品牌不一致导致的联动效果不好:
- 和沙箱直接联动,将未知威胁附件传递给沙箱进行分析,并根据分析结果判定是否拦截邮件;
- 以独立邮件沙箱系统进行部署,邮件沙箱系统通过代理SMTP协议,直接分析邮件网关投递过来的邮件;
- 机读威胁情报消费
数据泄露防护
数据泄露防护作为APT防御措施失效的补充手段,企业应做好核心数据的分级、分类,实施有针对性的防护手段。完整的DLP解决方案会根据数据生命周期各个阶段,结合业务系统特点以及数据传递路径,有针对性的进行数据防泄密防护。在APT防御体系中,主要是两个层次上实施重要的防护手段:
- 数据窃取阶段:评估企业可能存在的数据被泄露的途径,在这些途径上实施安全策略,防止数据被窃取;
- 数据泄露阶段:保证重要的生产数据只能在生产网络被授权用户查看,在其他任意地点和非授权用户都无法使用和查看数据。
人员安全意识培训
人员安全意识薄弱带来安全事件层出不穷,有研究表明很多企业数据泄露是因为员工的无意识行为导致的,因此针对企业员工的安全意识培训也是常规安全工作的一部分。唯品会安全应急响应中心发过一篇文章《唯品会信息安全培训体系》,内容非常丰富,可供参考,这里不再累述。
协同层安全功能介绍
协同层设计目标是实现设备协同防御以及引入外部安全厂家威胁情报,改变过去产品各自为战、能力不足以及提升攻击响应及时性。在防护层一节中,谈到几个安全产品都重点点到威胁情报消费和生产,机读威胁情报是实现设备协同防御的载体。
理想条件下,企业协同层应该具备威胁情报的消费者和生产者,具体如下:
- 威胁情报消费者
- 网关设备(IPS/NGFW/邮件网关/终端杀毒软件等)
- SIEM/SOC等
- 威胁情报生产者
- 企业生产环境沙箱系统
- 外部威胁情报
企业网络结构较为复杂时,通过企业威胁情报中心,将威胁情报生产者产生的情报推送到各个网络区域的威胁情报消费者进行消费,实现不同安全能力设备之间的协同防御。
分析层安全功能介绍
分析层设计目标则是围绕防护层失效条件下,通过对流量、Flow、日志等分析,查找异常行为,并对分析结果进行确认,提出安全加固的措施并实施,从而实现企业网络的动态防御。
在防御体系架构设计图中,给出了几个方向,用户可结合企业实际需要、项目优先级、实现价值,综合考虑选择实施内容,比较建议建设内容和顺序是:
- 日志分析系统(★★★★★)
- 异常流量分析(★★★★)
- 异常行为分析(★★★★)
- 攻击溯源(★★★)
- 杀伤链分析(★★★)
- 安全威胁呈现(★★)
这里重点介绍下日志分析系统(SIEM)。传统的SIEM提供了日志集中管理和内置常规的日志分析模型,面向APT防御,个人认为SIME应该具备如下几个重要能力:
- 可高度定制的日志采集器
- 强大的日志关联分析引擎
- 提供基于操作的日志关联分析功能
- 丰富日志可视化工具
通过以上SIEM功能,根据定义好的工程经验的日志分析模型,通过关联分析日志,就可以实现提取出来需要关注的安全事件。SIEM日志关联分析可以实现常规安全设备无法实现的攻击检测,弥补了安全防护产品的不足,甚至可以实现安全产品不能实现的攻击检测。
举个场景:以本地提权操作为例,常规检测手段是通过对一条一条漏洞利用特征进行检测然后上报告警,带来问题:一是漏洞特征需要一条条维护和添加,且随着漏洞特征库的数量的上升,也会拖累系统性能;另外一方面针对0day提权漏洞,基于特征检测是无法实现攻击检测的,如果部署终端沙箱等技术,往往又会导致系统开销太高,落地差;使用SIEM方案则是换种检测思路,首先我们假定一个事实:提权漏洞创建的进程的父进程都是低权限用户创建,那么通过在系统上部署轻量级Agent,收集进程信息,由SIEM解析日志并入库。日志分析人员通过SIEM的日志关联分析,制定一条针对低权限用户创建高权限进程日志分析模型,即可实现对提权攻击监控。
SIEM可以将过去日志分析常规方法转化为固定的分析规则,另外轻量级的Agent部署简单,对终端PC影响较小,可以覆盖企业所有员工,从而实现了对企业终端的全面监控。