01 序言2016年4月,国家领导人在网络安全和信息化工作座谈会上发表重要讲话指出,“网络安全的本质是对抗,对抗的本质是攻防两端能力的较量。” 同年,《网络安全法》颁布,出台网络安全演练相关规定:关键信息基础设施的运营者应“制定网络安全事件应急预案,并定期进行演练”。 结合在知道创宇四年来的经验,以及对近年来国内外网络对抗的总结后,我认为要想把攻防演练和小规模网络对抗的防御工作做好,必须解决两个问题:
对此,本文将参考一部专门针对小规模对抗的著作提出的战术中心思想,落实在实际的网络攻防中,利用主动防御进行黑客对抗。本文重在提出对抗方针,即:在已经进行了基础的信息安全建设后(例如,已经通过等保、分保、ISO 27001、Cobit、SOX404等等),应该从哪些方面入手和加强,以防御真正的网络攻击。具体操作指南需要根据实际业务场景和IT环境进行细化。 本文不求像纲领性文件、要求或一些方法论中做到的全面,仅从最有效的方面进行阐述。 02 对抗,对抗,对抗实际的小规模网络攻防中,面对的攻击对象,主要包括国内外敌对势力、商业和民间黑客以及执行攻防演练行动中进行安全性检测的攻击队等。 攻击对象不乏有使用1day,甚至是0day的攻击手段,在某些特定对象和场景中,也可能会遇到APT攻击。面对这些攻击时,一味地进行被动防御,即使不断提高防御手段,往往只是增加资源投入和成本,并不能起到更好的效果。 例如:
等等场景,不胜枚举。 被动防御永远在亡羊补牢。基于网络安全发展史的经验来看,面对攻击,是可以进行如下两个判断的:
所以强调指出:网络安全的本质是对抗。 对抗,不是被动防御。对抗的目标是“敌人”,是攻击者,防御方案不仅是为了免责和心里安慰,目的是在实际的小规模网络中保护自己的业务系统,保护社会数据,保护国家信息资产。 03 不管资源多少,要将资源尽可能用于主动防御对抗中只有将目标聚焦到攻击者、聚焦到对“人”的对抗上,才能在网络攻防中取得胜利。 主动防御或机动防御理念,是在入侵成功之前通过精确预警,有针对性、机动地集中资源重点防御并伺机进行反击。在网络安全领域,目前其方法论和技术方案尚不成熟。 在小规模对抗中,攻击者可能来自于任何地方,但具备攻击能力的人群总数是有限的,对有生力量的精力和时间的打击和消耗,以及进行可能的自然人溯源,是目前我认为的主动防御思想的核心。 在传统安全模型中经常提到“木桶原理”、PDCA、PDRR等概念,旨在强调加强短板建设、形成周期性闭环等等,这些理论是正确的,但这些理论的出发点更多的是考虑通过“知己”及“内建”,以应对外界威胁,更适合用来作为指导性思想,进行常态化和持久化信息安全建设。而在主动防御理论中,更优先考虑的是“知彼”,依据攻击者可能的手段及弱点协调资源进化自己。 所以在整体资源有限、时间周期不长、攻击者相对较明确的网络攻防中,应将资源用于主动防御对抗中,这样能更加明显地实现预期效果并取得更优的成果。 主动防御的出发点应该围绕“敌人”,方案应该更强调“立竿见影”。 以下部分将进行主动防御思想体系下,应对攻防演练及小规模网络对抗的战术方法介绍。 04如果内部安全人员有限,可以更多地使用自动化工具或外采人工服务包括政府、事业单位、央企、国企、大中型企业等在内的大部分组织中,受内部信息安全岗位编制、人员专业技能等的局限,往往对于突发性或阶段性高强度的网络对抗感到资源有限、力不从心。在这种情况下,长期或阶段性使用自动化工具会让工作事半功倍。 这里指出的自动化工具,包括:网络资产测绘、漏洞扫描器、IDS/IPS、防火墙、防病毒、云防御、WAF、堡垒机、日志审计、蜜罐、SOC等等常态化信息安全产品,更重要的是需要使用SOAR(安全编排自动化响应工具)。 SOAR是Gartner缔造及推广的。一个好的SOAR,在网络对抗中应该可以做到以下两方面:
以上,一方面可以进行小规模网络对抗,在建设完成后,也可以完善常态化网络安全建设。 不过在SOAR建设初期,由于其专业性及需要与所在组织和流程进行磨合,以达到默契,所以这方面工作更建议阶段性使用安全服务??,以期能够快速打造出初始效果,并在之后进行阶段性调整,以完善其效果。这部分一般是需要人工服务的。 另一方面,在进行正常流程之外遇到突发事件,包括一些无法完全自动化和工具化的工作中,例如:黑客入侵中后期的应急响应、反制和溯源等等,以及在完善的SOAR建设起来之前和建设中,是需要人工专家服务的,如果资源较少可以使用阶段性服务,这样可以集中优势资源迅速占领对抗中的制高点。 05 尽量先使用自动化探测工具大部分组织都会建立资产台账,但组织越大、越复杂,资产台账越不准确,这包括组织架构变动、资产转移、临时他用、利旧使用等等多方面因素,也可能包括管理不到位等因素。 为了保证对风险的可预测性以及被利用的可能性,需要在现有已了解资产的状态下,对以下三个方面进行主动探测:
06 先发制人,取得胜利预先采集相关情报和主导战场,是取得胜利的前提。 我们应该尽可能预先采集相关情报信息,包括: 有可能的攻击者身份,比如他们是来自于某些势力组织或者某些特定攻击队等;攻击者所受到的限制,比如他们可能所在的时区、他们的真实地理位置、他们有可能的跳板总数量级、他们的攻击时限(有些攻击行为是有时间限制要求的)、他们被赋予的攻击强度要求(例如商业黑客往往以窃取数据为出发点,所以不会进行DDoS攻击,攻防演练攻击队会被要求不得进行破坏性攻击)等; 我们还应该尽可能通过秘密情报和开源情报建立一些数据库,例如:社交网络数据库、威胁情报库、漏洞情报库等等,如果有可能,还应该建立敌对阵地/地区设备和指纹库(越精细越好)。 提前设置一些诱捕网络和陷阱,将初始战场转移到我们预设的地方,反客为主。在诱捕网络和陷阱中提前知道攻击,了解攻击手段,甚至追溯攻击者。 07 只要有可能,就要采取欺骗措施“兵行诡道”。由“蜜罐”组成的“蜜网”系统能达到真真假假、虚虚实实的效果。 部署一个由大量高交互和高仿真蜜罐组成的蜜网系统,将会带来诸多好处:
诸多好处不一列举。 一个精心布置、能产生对抗效果的蜜罐和蜜网系统,应该包含如下能力:
08 在所有对抗中,都要考虑攻击者的场景并加以利用在实际的网络对抗中,既然已经明确了以攻击者——“人”为关注点,就要从攻击行为、习惯、可能的手段作为出发点进行考虑,往往可以事半功倍。 在“七步网络杀伤链”理论中,最有参考价值的是2011年洛克希德马丁发布的网络杀伤链模型,在其模型中更为关注“人”的因素。 由于七步网络杀伤链理论模型相对已经比较完善,同时它们也是目前攻击场景中公认最成熟的,在此就不进行累述了,进行对抗方案和操作指南制定时,请查阅和参考该模型来制定详细的反制措施。 下图放上了关于此模型的大致思路,但详细细节比这些丰富很多。在此需要特别提醒的是,仍然需要以“人”作为关注对象,无论是攻击者,还是受攻击资产,还是网络安全设备和策略,背后都是“人”,他们是:黑客、IT管理员、网络安全工程师。制定策略要考虑人及其操作的可落实性。 比如可以利用仿真虚假的业务系统的交互(例如邮件注册或加载插件),精心构建针对攻击者进行的鱼叉或水坑攻击。 图/安全牛 09所有安全设备和策略都要用最简单有效的方法进行策略制定很多方案中会堆叠一系列产品、设备、流程、管理制度等等,但是在网络对抗中要明确一个宗旨:越简单越有效。具体即:非白即黑。 一切阻断类型的防御手段和策略,在使用和操作时,都是越直接越好。 在很多组织中,由于业务需要、测试需要、跨部门和跨网段管理的设备通讯需要、甚至是因为IT管理不清晰等原因,都可能出现类似“拒绝所有通讯,但A分组除外,B分组除外,c资产除外,d资产除外,e资产的X端口除外,f资产的X和XX端口除外,同时e资产属于B分组,d资产属于A分组”等等规则,或者出现类似“如果发现A行为则阻断,如果发现B行为则提交给X设备进行分析,如果发现其他行为由XX人进行处理”的流程。 上面列出的例子只是很少一部分,只是要说明,这种分类不清、分组不清、“你中有我、我中有你”,这种有流转、无闭环、流程岗职不清晰、意外事件太多的规则、流程和管理指南,在实际的操作层面很难执行,或者执行效率低下。 如果真的想在对抗中“立竿见影”,必须采取“非白即黑”的技术策略和管理手段。 想做到这一点,必须由安全管理和责任的一把手发起,并全力支持。由安全专家依据该宗旨制定管理规范、执行流程、技术策略和操作指南。 10 只要有可能,就要利用自查措施并修复缺陷安全性自查,就是最重要的“知己”措施。前文提到过“木桶原理”、PDCA等,并没有对其进行否认,仅仅说到了它们在实际操作中在关注点上的局限性。本节需要强调,在“知己”方面,它们仍然很重要,也是对抗工作中的一个重要组成部分。 只要是时间允许,人手、资源允许,无论在任何阶段,尽量进行安全自查。按照GB/T 20984中的指导要求,其应该包含:IT系统规划阶段、设计阶段、实施阶段、运行维护阶段、废弃阶段的全生命周期。 对于自查的要求、管理和技术点,可参考ISO 27001、等级保护、GB/T 20984等。 特别要重点提出的是,针对网络对抗,还应在以下方面进行着重关注:
11 周期性进行资产测绘,侦察暗资产对于一个大型组织,资产的测绘就像绘制地图,本单位的所有资产,就是对抗中的战场,只有做到精准的地图标识、无信息遗漏,才能避免在战场中处于被动。例如:如果在打仗时,有一条可以被用来迂回的小路没有被发现,部队就可能遭到偷袭。而在信息化战场中,由于信息资产可能因为各种原因有变化,所以定期进行资产测绘,才能保证资产地图的准确性。 对于信息资产的测绘,应该兼顾以下三点:
所以在绘制资产地图时,要以快速为目标,周期性进行高速测绘;再用精准的模式时刻补充、修正和更新;对1day和特定漏洞可以进行资产精确版本的直接匹配,以做到第一时间发现和处理可能存在的风险。 12 组建应急小组,实时处理突发事件应急响应小组,在对抗中起到“消防队员”的作用和效果,他们应该能够快速处理攻击中后期的各类紧急事件。应急响应小组只有由最高责任领导担任总指挥才能发挥其快速响应和贯穿多部门协调资源的效果。应急响应小组应该包括总协调人、安全技术专家、安全工程师、各业务接口人等组成。 在前期,应急响应小组应该建立好应急响应流程和安全事件定义。关于应急响应的指导性建设,可参考GB/Z 20985和GB/Z 20986,相关针对应急响应的各类方案在业界也比较成熟,在这里不进行累述。 在操作层面,比较推荐参考YD/T 1799,其中涉及到对于人员、工具、职责、质量等要求具有很高的操作指导价值。同时它对于准备阶段、检测阶段、抑制阶段、根除阶段、恢复阶段、总结阶段的详细阶段描述和操作要求,极具指导性和实操性,建议根据其要求进行规范和使用,制定操作指南。 13 对抗过程中尽量不要惊动攻击者在实际与攻击者的对抗中,有两个时间,尽量不要惊动攻击者:
14 只要有业务系统变更或模块升级,就应进行安全测试业务系统经常会有变更和模块升级,包括网络架构、Web业务系统、APP、工控系统、小程序、各类接口等等,只要有变更,或者某些功能模块的升级,都应该对变更部分进行安全性测试,以保证新上线的功能没有安全隐患。更好的办法是在它们集成到现有业务系统之前,在测试阶段就进行安全性测试。但是测试环境和真实环境仍然是有差别的,有时在测试环境中没有发现问题,在真实环境下会出现问题。所以最好是能够在正式上线前的测试环境和正式上线后都进行一次安全性测试。 另外,应该在新系统或者新功能设计时就考虑到安全性,并将其设计在其中。如果有可能,建议建立统一威胁和漏洞管理。 15溯源能力越强,自查和修补措施越完善,被攻破的可能性越小在网络对抗方案设计阶段,应该考虑到以上各部分的内容,考虑得越详尽,越贴合业务场景,约有实操性,对抗能力越强。 在实际环境中,往往要建设一个完善的主动防御体系,是需要分阶段、分步骤进行的。如果之前没有进行过这方面的建设,我建议按照如下步骤考虑,这里包括了对于成本、实施难度、立竿见影的效果等多方面的因素:
16信息安全负责人和项目经理既要积极主动,又要坚决果断信息安全负责人和项目经理是整个网络对抗的总负责人,在整个工作中起到至关重要的作用。自古既有“物勒工名,以考其诚;工有不当,必行其罪”的说法。 总负责人既然要负起全部责任,就必须被赋予相应的权利。经常会遇到这样的场景:某些业务系统有极大的安全隐患,但是安全负责人不敢或者无法有效协调业务部门负责人,最终导致该业务系统被攻破。如果希望在网络对抗中达到效果,就需要组织高层在这些方面赋予相应的权利。 另外我曾经经常遇到的场景,也是特别需要注意的,在组织协调中,往往会出现“@甲、@乙、@丙,你们处理一下”这种情况。在这种工作安排下,一般被安排到的那个部门或者责任人都不会去很好地处理,这种工作安排实际上是一种“懒政”的表现。合理的安排应该是“@甲,授权全权负责该事情,@乙和@丙全力配合”。 17 结尾感谢看到结尾。以上写到的内容,都是从实操出发,针对小规模的攻击和攻防演练提出的。 对于“小规模”的理解:我认为小规模大致应该是持续数月、商业黑客或敌对组织攻击级别(非国家级)、会少量使用0day(具备一定的0day挖掘能力)、较大量使用社工手段(包括钓鱼等)和1day漏洞、不以DDoS为目的、具备完善的Web、APP和内网攻击等能力,具备一定的工控网络攻击能力,具备一定APT能力,不具备定向攻击能力(例如专门针对某一设备或工业组织),不具备全网攻击0day(例如某骨干网基础传输协议或设备的0day等),不具备通杀型0day(例如某常见操作系统远程溢出root权限0day等),不具备复杂工具制作能力,以窃取某些特定资料、信息或取得某些权限为目的的有组织的攻击行为。 「黑马商圈」 正式上线啦! |
|