“小A,我有个系统要测试,给我一个渗透测试报告模板。”“模板?从来没有过模板,每次测试我都是截个图就完事了。”“小A,我们在做渗透测试的时候,会覆盖哪些测试点,怎么保证测试的全面性?”“小A,cve-xxxx-xxxx那个漏洞的复现文档发我一下。”看到上面的对话是否引起了你的共鸣?蓝军就是这样一群人,他们极客,他们执着,他们有自己的想法,有时也不拘小节,行事风格随性。一个没有业务标准化的蓝军,工作交付的质量就会参差不齐,在日常工作对接中也会给人留下乱成一锅粥的印象。为了提高工作效率和质量,蓝军需要制定一套标准化管理机制,规范团队行为,减少不必要的沟通和返工,加强团队内和团队间的协作,保证信息的及时传递和共享,从而让蓝军的工作更加高效、规范和有序。笔者认为小作坊和集团军的主要区别就在于管理的标准化程度上,业务标准化程度直接决定了组织的成熟度和精益管理的水平。一个只有三五人的小队通过有效地组织形成合力,依然可以发挥出超强的战斗力,如果组织管理不好,哪怕你有成百上千人,也发挥不出团队的价值,所以我们在蓝军建设初期重点针对流程机制进行规范,也为后续蓝军的发展打下了基础。(一)提高效率
确保标准的一致性,各类事项按照既定的动作执行,减少混乱和错误,所有人步调一致,可以减少很多管理成本。就像阅兵一样,如果不能保持统一的节奏,一定会阻滞整个队伍的行进。(二)保证交付质量
看了上面的对话可能有些人会说之所以发生这样的情况,是人员自身的问题,只要在面试的时候招聘更靠谱的人就能解决。对此,我的看法是对于蓝军人员的核心要求是技术能力,属于硬技能,也是面试中应该重点关注的能力,类似上述的问题大多是做事的方式方法导致的,属于软技能的范畴,很难通过面试精准识别。另外,每个人的行事风格不一样,而且个人的状态还受到身体、精神、情绪等因素的影响,这就会导致产出质量的方差很大,借用果见管理工作坊创始人刘建国的一句话:“人靠谱的时候比机制靠谱,人不靠谱的时候会比机制更加不靠谱。”建立标准化机制的作用就是让低于平均值的方差收敛到标准基线上,保证产出物的质量上不封顶,但不会低于及格线。业务标准化主要体现在三个方面:规范化、文档化、相对固定。在建设各项标准化的工作机制时,需要充分考虑蓝军的工作特点,确保这些标准能够真正地满足团队的需要。下面结合我们日常工作中遇到的实际场景,分享一下在业务标准化工作中重点建设的内容。(一)渗透测试报告模板
做渗透测试一定离不开编写报告,如果不对报告模板做出要求,最后输出的报告格式一定五花八门,也不利于蓝军对外树立专业的形象,所以有一个标准的渗透测试报告模板就非常重要,曾经我们的报告就被很多人吐槽后,后来专门对报告的编写制定了规范。渗透测试发现了漏洞,只能代表测试当期存在问题,具有一定时效性,所以一定要写上测试时间。对此次测试的情况进行总结,可以从漏洞数量、漏洞类型、漏洞风险等级等维度进行数据化的统计,方便快速掌握被测系统的整体安全情况。渗透测试属于黑盒测试,另外还受测试人员、系统环境、时间等因素的影响,对于做过渗透测试的系统,也很难保证能穷尽所有的漏洞。因此在报告中还是很有必要对渗透测试的局限性进行说明,提前声明,可以避免后续很多分歧。记录漏洞发现的详细过程,为了能让看报告的人快速复现,一定要标注出漏洞触发的功能具体功能点,并附上用于漏洞验证的攻击载荷,各类验证截图最好包含当时的时间,截图可参考下图的方式。针对漏洞给出详细可落地的修复建议,切忌用模糊的词语进行描述,修复方案本质上是给研发提需求,一定要用明确清晰的语言进行描述,不然研发拿到修复方案也无从下手。比如,“5次登录错误后,限制10分钟后再登录”就比“对用户登录频率做限制”的描述要好。对于一些常见的漏洞类型,可以在模板中制定好标准的修复方案,方便报告编写人员引用。(二)渗透测试必测项
在进行渗透测试时,每个测试人员的思路都可能不同,如何保证测试质量就是一个问题。解决问题的思路可以根据企业高频出现的漏洞和高危易利用的漏洞来制定漏洞必测项,以此作为渗透测试的基线,确保每次渗透测试所有必测项都得到验证。制定漏洞必测项可以统一测试标准和要求,避免测试人员因思路不同而遗漏某些漏洞。在日常的工作中,我们可以结合漏洞情报和企业应用系统的特点,动态调整必测项的内容,逐步提升测试的全面性。漏洞必测项还可以解决有些系统测不出漏洞的问题,至少能说得清楚当前系统不存在哪些漏洞风险。在实际做渗透测试的时候,应要求测试人员先按照自己的思路进行测试,最后再按照必测项去逐一测试,这样可以防止测试人员的思路被必测项限制,有助于超预期交付。(三)资料归档
当外部有调阅资料和数据的需求时,有的团队可以即问即答,有的团队则需要现投入精力准备和统计,造成两者差异的主要原因就在于前者有自己的资料归档机制。平日里发现一些攻防人员是缺乏资料归档的习惯的,工具、文档经常是随意保存,如果离开everything很可能啥都找不出来,如果蓝军里每个人都如此,一定会给管理带来很大成本。古典老师曾说过,信息存储花费的精力越多,调取就会越容易,相反信息存储越随意,调取就会越困难。平时的工作中,资料的归档是一次性工作,但资料的调取却是高频的,在前期根据规则对资料进行分类存档虽然会花费一些时间,但能减少后续高频调取的时间,综合来看整体的工作效率是提升的。每个攻防人员都有一套自己的知识库和武器库,甚至每个人手里都有属于自己的独门绝技,如果能将散落在不同人员手里的技术储备进行集中存档,形成知识沉淀,蓝军中每个成员都可以随时进行查阅和学习,就可以实现将个人的能力转化为整个蓝军的能力,持续推动整个组织的技术成长。可以使用Windows的共享文件夹、Linux的Samba、SVN等,文件存档服务器的存储空间要足够大,最好支持容量动态扩展。需要根据日常的工作内容梳理出需要归档的资料,归档的资料一定是精华有用的,不能什么都存。梳理完成后根据资料的类型做好分类,创建相关的文件夹引导相关人员归档有用的资料。下图为结合日常工作整理的目录结构,实际的目录设计可根据各自工作的实际情况来制定。前期工作准备就序后,需要组织一次规则宣贯,对照着文档目录结构讲解清楚什么资料需要归档,归档到哪个目录下。刚开始推动这个事可能挺困难的,毕竟让大家培养一种新习惯不容易,在执行过程中还需要一遍一遍地强调,及时提醒相关人员存档重要的资料,当我们的资料库逐渐成型后,大家自然会看到它的价值,也愿意在后续的工作中自觉归档。(四)需求对接
蓝军是一个技术属性比较强的队伍,日常工作除了挖漏洞,还需要支持外部的一些需求,比如漏洞研判、应急响应、风险发现等。为了保证需求对接能井然有序地开展,首先要明确接口人,我们在蓝军建设初期就遇到过需求对接混乱的情况,需求方看到谁就找谁,分发到蓝军内部的工作也很难做到及时同步,后来我们设立了固定的接口人,各类外部需求才做到了统一管理。接口人明确后,接下来就需要根据需求的特点制定合理的工作流程,虽然很多时候我们只是流程中的一环,但我们还是要有全局的视角,参与甚至主导整个流程的制定。以漏洞研判为例,蓝军经常会收到漏洞情报的研判工作,通过漏洞威胁定级为后续的漏洞治理提供技术依据。如何定级,还需要我们结合自身情况制定评级标准,以下因素可作为漏洞定级的参考:- 漏洞类型,是否为高风险类型,如远程命令执行、SQL注入、拒绝服务攻击;
当威胁满足内部处置的等级后,则进入后续的漏洞治理流程,同时漏洞研判过程中的技术文档可归档到知识库以供后续查阅。(五)建立比赛模式
参加各类安全竞赛,是很多甲方对外展示安全能力的一个途径,也是蓝军日常工作的一部分。结合我们历史的参赛经验,形成了一套标准化的比赛模式,便于队员快速找到备战状态,并不断通过比赛提升蓝军的技术能力。下面以一次CTF比赛的备战作为案例,分享一下比赛模式的建立过程。一天,一向健谈的小A一反常态,呆呆地坐在屏幕前若有所思。小B看到后关切的问候了一下,才知道这次准备比赛的任务交给小A全权负责,他正为这事发愁呢。“不用慌,明天一早把参赛队员都叫来,我们一起讨论一下,思路都是碰撞出来的。”这时,小A紧锁的眉头才渐渐舒展开。第二天的讨论如约而至,首先对比赛规则进行了详细的分析,制定了比赛策略,根据队员的技能特长完成了分工。考虑到是第一次参加这类比赛,认真分析了对手和自身的实力后,我们制定了排名进前40%的目标,如何达成目标呢?大家纷纷献计献策,最终确定了准备方案,每人每周至少完成本领域5道赛题,并且将解题思路上传知识库,赛中的目标每人至少做出1道题。现在回过头来看看,这不就是SMART原则嘛。说干就干,目标明确了,大家如火如荼地开启了备战状态。因为做好了充足的准备,到了赛场大家的状态反而很放松,比赛结果也如期望达成了目标,经过这次比赛的历练,每个人都带着收获踏上归程。比赛虽然结束了,但是小A还是不甘心,因为经过同台竞技看到了自己的差距,于是小A提议要组织一次复盘会,复盘会的内容分为两部分,一是总结经验教训,为下次比赛做铺垫,二是赛场中没做出来的题目继续做,会上分享解题思路。这个提议得到了所有人的赞成,然后队员们又分头去准备复盘会的内容,会上每个人都分享了自己的感悟,技术分享环节也都学到了知识,最后复盘会在一阵掌声中落下帷幕。复盘会结束了,但是在小A心里的句号还没画圆满。经过了一夜的梳理,小A将整个比赛从准备到复盘的每一个环节进行了回顾,形成了一套标准化的比赛模式:不同比赛的规则和赛题类型会有差异,赛前一定要组织大家好好对赛制进行解读,根据比赛的特点制定对应的赛中策略。对比赛的准备和结果制定合理目标,包括队伍的排名和个人的贡献度,有了方向才能更好地去努力。安全竞赛通常会包含多个领域的题目,前期根据队员的特长做好分工,针对性去准备各自领域的技能。如果队员们闷头准备自己的领域,没有明确的要求,是很难掌握备战的整体情况的,所以前期可以制定一些量化的产出指标(比如题目完成数量),大家干起来也有动力,还能对自己的实力有一个清晰的了解。比赛结束不代表我们的比赛模式结束了,赛后复盘是一个必备环节,看看当初的团队和个人目标是否达成,成成在哪,败败在哪还是要好好的进行总结的。赛中没做出来的题,赛后还要花精力去完成,复盘会上除了经验总结外,每个队员还要把自己负责领域的题目进行现场分享,相关WP同步到知识库,以提升全员的技术能力,为下一次比赛打好基础。至此,这次比赛对于小A来说才算真正的结束了。大家看看,这样的小A是不是很优秀呀。其实业务标准化工作不仅限于文档输出,面对同一类工作任务可以复用的工作机制,也可以制定相应的标准化执行模式,比如攻防类项目(如渗透测试、红蓝对抗、众测等)的建设也可以基于历史上同类项目的实施经验,总结出一套标准化的打法,为后续的项目执行提供参考。通过蓝军以小见大,其实各个领域都可以建立适合自己的标准化工作机制,来提升工作的交付质量和效率。仅通过此文抛砖引玉,如果能给读文章的你带来启发,将是我最大的荣幸。刘家华,某股份制银行安全团队。拥有甲、乙方工作经验,涉及领域涵盖安全研究、安全服务、安全运营、安全体系建设等,曾多次支撑国家级重要活动并获得相关单位的感谢信,也多次参与攻防演练活动,在攻击方和防守方均获得过优异成绩。现从事甲方安全体系建设工作,从0到1建设过安全预警体系,搭建过蓝军队伍,曾带领队伍多次在安全竞赛和攻防演练中获奖。大湾区专刊现已发布第1辑和第2辑,集合了全国数十家金融和科技机构的网络安全工作经验总结,更邀请了大湾区港澳金融机构的安全专家分享独到见解。文章内容涉及防御体系、安全运营、数据安全、研发安全、业务安全、资产管理、攻防演练、前沿分析等主题方向,希望能为从业者提供网络安全防护方面的整体思路,向行业传播可持续金融创新和实践经验,为推动可持续金融生态发展汇聚智慧与力量。
安全村始终致力于为安全人服务,通过博客、文集、专刊、沙龙等形态,交流最新的技术和资讯,增强互动与合作,与行业人员共同建设协同生态。
还没有评论,来说两句吧...