在现代企业的网络安全能力体系建设中,有一个不可或缺的环节就是通过实战化的攻防演练活动对实际建设成果进行验证。通过攻防演练能够检验网络安全体系建设的科学性和有效性,发现工作中存在的问题,并针对演练中发现的问题和不足之处进行持续优化,不断提高安全保障能力。
在实战化网络安全攻防演练活动中,红队是不可或缺的进攻性要素,它主要是从攻击者视角,模拟出未来可能出现的各种攻击方式。红队既可以由企业内部的网络安全技术人员组成,也可以邀请外部安全服务团队参与。为了更好实现攻防演练活动的目标与预期效果,组织需要不断对红队的能力和演练策略进行优化。
红队测试 ≠ 渗透测试
大多数组织的安全检查会从漏洞扫描开始,然后进入到渗透测试,也就是从猜测漏洞可以被利用到证明它是如何被利用的。因此,很多人会错误地将“红队测试”与“渗透测试”混为一谈,但实际上,它具有不同的目标和定位。
渗透测试主要为了在没有明确目标的情况下尽可能多地发现、测试各种可能的攻击,以确认安全漏洞的危害性如何。渗透测试通常不涉及初始访问向量,而是要将检测到的漏洞信息和危害完整地呈现出来,并主动地去缓解它们,以达到增强并验证组织网络弹性的目标。
尽管红队在测试中使用的攻击技术和手段方面有很多类似渗透测试,但是不同于渗透测试“尽可能多地”发现漏洞的行动目标,红队测试的核心诉求是通过使用完整的黑客攻击全生命周期技术,从初始访问到数据渗漏,再到以类似APT的隐秘方式攻击组织的人员、流程和技术,执行高度有针对性的攻击操作,从而进一步完善企业安全能力成熟度模型。
在某种程度上,我们可以将红队理解成合法的APT组织,因为红队要模拟出真实世界中各种攻击团伙。通过真正的对抗性模拟行动,红队攻击能够测试出企业安全防护体系的真实能力如何。
Aquia公司首席信息安全官(CISO)Chris Hughes表示,“从CISO的角度来看,将红队能力建设纳入企业整体网络安全计划的意义和价值将明显超过设置安全检查清单和日常安全评估,它将促进复杂安全能力建设中的针对性,并能够突出真正的漏洞风险优先级。简单地渗透测试已经不足以应对当今的威胁环境,企业必须像攻击者一样思考和训练,才有能力在黑客行动之前做好准备。”
提升红队测试能力的11条建议
鉴于开展红队测试工作的重要性,企业IT领导者可以遵循下述11项策略来发挥红队测试的最大效益:
01
不要对红队测试进行过多限制
真正的黑客在攻击时是不会有范围限制的,因此,所有敌人可能涉猎的领域,都应该涵盖在红队攻击的范围内,否则组织将无法全面获取对可能风险的真实认知。很多组织担心无限制的攻击测试会造成不可控的后果,其实这可以通过完善的预案来解决。企业应该尽量减少对红队的策略和工作范围进行限制,这样才能发现最具影响力和破坏性的漏洞,从而获得实效驱动的补救措施。
02
让红队工作保持独立性
模拟对手攻击手段是红队最重要的工作,他们没有过多精力去了解安全部门正在发生的其他事情。红队人员应该被视为“幕后”操作员,而管理者和领导者则是第一线联络人。
事实上,在许多情况下,与安全团队和组织中的蓝队成员建立融洽关系会“软化”他们的工作。实践表明,红队越是独立于安全团队工作之外,他们在测试过程中遇到的阻力就越小。因此,以策略改进、安全治理、风险控制(GRC)、部署优化以及能力协同等为核心的安全会议不应该让红队成员参与和了解。
03
将风险简报与技术简报分开
信息庞综复杂的技术研究并不适用于管理层应该了解的范围。管理者更关注攻击描述、随着时间推移的安全指标、持续的问题发现以及由此产生的风险缓解措施。技术团队则关心端口、服务、攻击方法和目的。让他们共同参与问题讨论,看似在节省时间实际上是在浪费时间。红队应该分别提供和交付两个版本的分析报告,会更加有效:一份给管理人员和业务部门;另一份给以修复和技术为导向的安全技术团队。
04
对风险评级并跟进
红队成员可以分配风险评级并猜测事后将如何处理该发现。如果没有深入了解谁负责这些风险并跟进风险负责人的补救措施,他们的专业知识将止步于此。当被问及“这一发现的处理结果是什么?我们在哪里修复了这个问题?”,红队通常无法应答。他们只是将风险移交,而没有跟进这些风险是否得到合理修复或审查。为了实现红队效益最大化,跟进风险负责人的行动将是必不可少的步骤。
05
调查结果和风险评级标准化
CVSS评级有助于了解在野利用漏洞的难度和可能性,但它们通常缺乏组织背景,因此很多评级的划分是主观的,需要加入尽可能多的客观性。
企业在进行风险评级时,既要考虑“固有风险”也要考虑“潜在风险”。固有风险是管理层没有采取任何措施来改变风险的可能性或影响的情况下,一个企业所面临的风险。在评估固有风险后,接着就需要评估控制措施的有效性。影响控制措施有效性的因素有两个:一个是控制措施设计有效性,另一个是控制措施执行有效性。
固有风险是天然存在的风险,经过人为实施的控制措施后,固有风险会得到控制,没有被控制的部分,就是剩余风险,可以形象地理解为:“潜在风险=固有风险-有效控制措施。”这能够比CVSS评级提供更具价值的情报。
06
优化测试节奏
红队队员不是渗透测试员。红队的测试节奏也与渗透测试团队完全不同。渗透测试员有一套标准的漏洞和错误配置测试范围,以尝试“尽可能多地”找到其中的缺陷,让防御者有机会尽可能地保护组织系统。渗透测试团队还会寻求主动发出警报,并能够报告EDR和SIEM解决方案获得的积极发现。
相比之下,红队不会只执行实现目标所需的行动,而是要以秘密方式运作,并且需要更多时间来研究、准备和测试真实代表APT行为的杀伤链。因此,随着测试范围扩大,红队行动的节奏和生命周期会越来越慢。在确定红队今年的目标和关键成果(OKR)时,请记住这一点。更不用说,许多发现通常来自红队操作,且并非所有发现都具有相关的战术、技术和程序(TTP)或直接缓解策略。补救团队需要时间来处理调查结果并尽可能地减轻影响。同时,这也是为了避免蓝队(blue team)陷入疲劳,他们实际上可能会要求红队取消或推迟四分之一的额外操作,具体取决于蓝队落后的程度。
07
跟踪所有指标
并非所有证明进攻性计划成功的指标都来自红队。用于跟踪测试成功和补救活动的红队指标包括平均停留时间:他们能够在环境中坚持多长时间进行发现和调整而不触发警报。
其他因素将来自网络威胁情报(CTI)和风险团队,形式为降低发现的剩余风险评分、提高对模拟威胁参与者的弹性认知,以及在野发现攻击成功的可能性。CTI团队将能够通过明确了解哪些策略可以进行防御来锁定相关威胁参与者。
08
明确红队角色和职责
优化的红队运营来自一个可持续的反馈循环,涉及CTI、红队、检测工程师和风险分析师,所有这些都在协同为组织环境减少攻击面。这些角色在每个组织结构图中看起来都不一样,但无论如何,最好要将职责明确并分开。
许多组织的安全团队会很小,而且会有同一人身兼多职的情况,但至少需要有一名全职员工致力于这些职能中的每一项工作,以显著提高运营质量。在这一点上,安全团队需要被分离在首席运营官(COO)、首席风险官(CRO)或首席信息安全官(CISO)之下,而漏洞管理、补救管理和IT运营则应该由首席信息官(CIO)或首席技术官(CTO)负责。这种角色和职责划分有助于减少摩擦。
09
设定可实现的工作预期
当红队制定测试计划时,需要根据具体的目标来计划希望采取的方法。管理层的主要担忧是生产力损失或拒绝服务(DoS),但红队并不会列出他们计划使用的每一个步骤和方法。
事实上,在漏洞利用开发过程中,为了调试有效负载并确保顺利执行TTP(技术、工具和程序),红队必须根据实际情况调整具体方法。在演练活动开始之前、期间和之后对红队计划设置现实的期望,将减少挫败感以及业务部门对红队的抵触情绪。
10
合理使用离网(off-network)攻击设备
攻击基础设施是红队测试的组成部门。这包括了域、重定向器、SMTP服务器、有效载荷托管服务器以及命令和控制(C2)服务器。就管理层而言,为他们提供与企业EDR、AV和SIEM代理隔离的设备,将使他们能够测试网络钓鱼活动、登录页面和有效负载,并解决发现的问题,以免在漏洞检测期间浪费宝贵的操作时间。
红队不会在这些设备上存储敏感的公司数据,他们会在安全的云环境中存储在操作中获得和泄露的信息。因此,这些设备实际上是作为回调的终端,其命令也应该记录在远程服务器中。这不仅对红队操作来说非常有利,也能最终节省公司时间和资源。
11
严格按照测试计划开展工作
在实际工作中,我们经常会发现,随着红队测试工作推进,就会出现更多可利用的资源,以及更多可攻击的目标,这时候就需要严格按照测试计划来推进预定工作。操作期间的范围扩展意味着他们不再遵循初始操作计划,并遵守CTI驱动的行为限制。
参考链接: