扮演攻击者的角色可让安全团队的防御更加牢固。从圈定正确的人选到衡量模拟与现实事件的差异,以下指南助力安全基础设施模拟演习。

军方搞,政府问责办公室搞,国家安全局也搞。演习的概念甚至渗透到了企业领域:模拟演练安全基础设施。

红队蓝队对抗练习,源自其军事上的先例。概念很简单:一队安全人员——红队,攻击什么东西;另一队人员——蓝队,守护之。最初,这种操练是军队用来测试部队战备度的,也用于测试敏感地区的物理安全,比如核设施及能源部下属国家实验室和技术中心。90年代,专家开始采用红蓝对抗来测试信息安全系统。

任何行业的公司企业都可以从红蓝对抗演习中获益,只要遵循下列建议。

一、基础知识

红队是引入来测试安全项目有效性的外部实体。他们被聘来模拟可能攻击者的行为和技术,使之看起来尽可能真实。

比如说,该团队可能假装快递员进入公司大楼,植入某设备以便进行外部访问(试想HTTP、HTTPS或DNS所用80、443、53端口)。他们还可以尝试社会工程、网络钓鱼、语音电话钓鱼,或者直接假冒公司职员。

与之对应的,就是蓝队,负责阻止这些模拟攻击的内部安全团队。不过,越来越多的公司在预演中不再使用特意组建的蓝队。他们的想法是:通过查看自身安全团队在无准备情况下对模拟攻击的反应,可以更切实地获悉其真实防御能力。

此类测试的最终目标,是测试公司安全成熟度,及其检测和响应攻击的能力。基于模拟程度、涉及人员和被测试的攻击类型,这种操练可耗时3或4周。

二、红队

表面上,财富500强企业、各国政府,乃至北约十字剑演习进行的此类对抗演习,都有明确的好处。但红队却一直常与渗透测试相混淆。

红队今年特别流行。每家公司及其看家护院的安全团队都摇身一变就成了红队专家。很遗憾,安全行业往往先夸下海口拼市场份额,但实际上他们对自己在做的东西毫无概念。红队这个概念被很多公司炒作宣传,但往往也就是个稍微扩展了一点点的渗透测试而已。

红队队员的形象也饱受诟病。红队必穿黑色迷彩的观点遭到某些安全界人士的鄙视,称根本不是那么回事儿,人们对自己需要什么团队往往存在误解。他们是社会工程师,不是被军队踢出去的孬兵。红队需要明确的定义,不能毫无作用地被困在中层管理之后。

因此,或许红队成熟度各公司差异甚大就不足为奇了。站在技术角度,从非常好到很糟糕都有。但最主要的问题是,公司企业不明白自己想要从红队得到什么,不知道自己要模拟什么。

于是,可遵循以下6步,来树立正确的红队观。

1. 理解你想要干什么

首先就是要弄清你想做什么。如果组红队,你就是在试图模拟一场可能的攻击,也就是说攻击者必须将自己的攻击调整成他们要模拟的对象。作为将此任务承包给外部公司的负责人,只与理解了该原则的公司合作是十分关键的。同样,防御者也必须有合适的工具和信息,就像在面对一场真实攻击时一样。

公司企业最好考虑清楚自己想要从红队得到什么。对没有成熟网络安全策略的公司而言,红队不是太适合。但是,如果实现了防御措施,那么红队测试就应是一项经常性工作,具备免疫价值。要确保从红队获得的报告是有价值的,且其中建议在可行的地方都实现之。

红队是为自认安全措施已实现完毕只待最终测试的公司准备的。红队就是要像真正的对手会做的那样瞄准公司,以便双方都能理解、控制公司环境,实现更健壮的安全态势。

2. 选择正确的合作伙伴

红队组建过程可能会招来不合适的信息安全人员,那些不直接参与改进安全,而是认为攻入公司就是唯一目标的人。建议倾听红队公司陈述,如果不喜欢,直接走开。如果他们没有说明其服务能带来什么好处,也没谈你怎么获得全包性测试,那他们可能就不是你需要的那类测试员。

一支红队可多达8人,包含任务策划者、侦察和物理入侵专家、通信和IT专家、电话钓鱼专家等。

查一下所选公司的人员履历。请他们给出团队成员姓名。如我们启用如上所述的精兵队员策略,那么了解团队成员就非常关键了。这些人是否是行业内的?他们开发工具吗?做研究吗?在安全大会上演讲过吗?能给你一种“这人靠谱”的感觉吗?

团队领袖必须挑对人!

3. 大惊喜——或许你不需要蓝队

未必总是需要一支蓝队。公司IT和其他部门的全职员工,也可以担负起修复和改进的责任。有经验的渗透测试员可从蓝队角度理解攻击,然后与客户合作抵御恶意攻击者。这听起来挺疯狂,但确实省钱又便利——就像自己跟自己下棋似的。

4. 全员清晰沟通

红队的成功,最终落脚到清晰明了的简报、无障碍沟通和对红队最终效果的理解上。在客户和请求红队行动的公司/内部团队之间要有清晰而简明的沟通,客户必须完全清楚红队将要做的,和不和做的事项。

红队必须要认识到,自己任务是尽出技术与经验,利用公司基础设施中的漏洞侵入公司,给出真实而简明的总体报告,且这一切要在不被抓到的情况下进行。队长需对红队各方面工作都有经验,同时还需理解测试会给公司带来的影响,知道怎样以最佳方式呈现测试结果来帮助公司改善安全状况。

5. 准备,准备,还是准备

侦察!做很多很多的侦察。要对被测试公司建立非常准确的视图,要知道公司方方面面的信息。研究公司本身往往会花去数天时间。举个例子,如果要假装工作人员进入大楼,就得先编个假公司以作支持。如果要靠隐形耳机之类小装置进入,就得戴上这些与记录攻击的助手保持联系。

GSM窃听器、WiFi微型摄像头等其他小玩意也得充好电待命。还有可用于远程攻击WiFi,或者留在现场以备测试期间及其后远程访问的树莓派。90%的工作都在准备期间完成。

要确保你理解最终目标是什么;确保所有参与者都知道自己的任务,知道测试参数是什么;确保留有联络点以防意外/需验证。基本上,就是要知道你要达到什么效果,以及这将如何助你更加安全。

6. 清理战场再重来

最后,团队应从对抗中不断学习,并在必要的时候重复对抗。从红队角度出发,经常性学习是紧跟最新攻击必需的。因为这基于现实世界威胁,红队需要跟上当前真实攻击者所用的攻击。从委托红队的公司角度出发,在对抗中学习,实现新防御和过程,然后再测师,是十分重要的。这应是一个规律的循环。

若是缺乏红队预算的中小型企业,那可以每两年做一次,中间穿插其他成本更低的工作和培训。若是跨国公司,那就必须将红队测试当成经常性工作来做了——金门大桥上漆的频率类似。测试可以重复,但每次都应该尝试不同的攻击,不同的模式,不同的技术集,甚至不同的测试者。

三、蓝队

为人父母与做安全在很多方面都有共同之处。没有《父母大全》这种东西。安全万灵丹也是没有的。两种角色都是压力山大。不过,深入敌人的思维,倒是可能比理解青少年的脑洞要容易一些。

父母,就是想知道自家孩子面对生活中众多诱惑和困难有多脆弱的蓝队。红队——所有可能伤害到孩子的危险,则是那些想要闯入的人。蓝队面临的更大挑战,是在不对用户造成太多限制的情况下,发现可被利用的漏洞,保护自己的领域。

想不妨害到模拟攻击的测试目的,蓝队就要做大量的准备工作。以下几步可供参考。

1. 弄清控制措施

对蓝队而言最重要的,是了解自身环境中现有控制措施的能力,尤其是在网络钓鱼和电话钓鱼方面。有些公司还真就直到正式对抗了才开始找自家网络中的防护措施。

2. 确保能收集并分析数据

因为蓝队的功效基于收集和利用数据的能力,日志管理工具,比如Splunk,就特别重要了。另一块能力则是知道如何收集团队动作的所有数据,并高保真地记录下来,以便在复盘时确定哪些做对了,哪些做错了,以及如何改进。

3. 使用适合于环境的工具

蓝队所用工具取决于自身环境所需。他们得弄清“这个程序在干什么?为什么它会试图格式化硬盘?”,然后加上封锁非预期动作的技术。测试该技术是否成功的工具,则来自红队。

4. 挑有经验的人加入团队

除了工具,蓝队最有价值的东西,是队员的知识。随着经验的增长,你会开始想“我见过这个,那个也见过,他们做了这个,还做了那个,但我想知道这里是否有个漏洞。”如果你只针对已知的东西做准备,那你对未知就毫无准备。

5. 假定会有失败

提问,是通往探索未知的宝贵工具。别止步于为今天已存在的东西做准备,要假定自己的基础设施中将会有失败。

最好的思路,就是假设终将会有漏洞,没什么东西是100%安全的。

声明:本文来自安全牛,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。