大家好,我是汤青松;非常高兴给大家分享《漏洞管理体系建设》
分享之前我想简单介绍一下,为什么会有这一次分享,最近来到了一家新公司,担任基础安全负责人,每天很多的时间都花在对漏洞进行管理, 所以我做了一些小总结。对于漏洞我们应该要怎么去管理?比如说漏洞的发现以及推进,还有漏洞复盘的一些环节,那现在来看一下我画的一张”漏洞管理流程图”:
在漏洞管理流程图当中我做了这些环节:漏洞的发现、漏洞的审核、漏洞的定级、漏洞的开发,以及业务线的修复漏洞的验证以及漏洞的复盘。在每一个环节我会讲解一下从安全人员的角度,为什么会有这样一个节点,我们需要去做什么以及需要去注意什么。
流程一:漏洞发现
对于我们甲方来说:我们经常和漏洞在打交道,发现漏洞是怎么发现的?
1、SRC
比如说外部的SRC,有些同学他所在的单位可能有自己的SRC、有些同学他可能把SRC托管在第三方平台上,比如说补天、火线。主要是白帽子提交到平台 然后我们进行一些审核 那这些漏洞呢?是从外部被发现的。
2、HDIS
第二个是HIDS它其实是两个名词组成在一起的,首先说ids它是入侵检测系统,H它是代表host这个单词的缩写,它是发现主机上的一些入侵检测事件,它会去搜集这个主机上装有哪些应用,这些应用它的版本是不是有安全问题,另外了这个主机上所发生的,一些异常事件,比如说执行了一些危险命令,比如说还有一些提前的操作等等异常事件。
3、NDIS
第三类是NIDS了,N是代表network所以它是网络入侵检测系统,那么它这部分数据呢?它其实主要是从路由器交换机,把它的这种流量数据抓取到一个分析系统当中,那么从流量当中;它可以发现这种相关的资产:
比如说网页资产数据库资产,以及其他方面的一些资产,比如说我A主机把我们的B主机,那他可能会经过交换机,也有可能还会经过路由器,那这个交换机和路由器它就能够感知到,
A设备和B设备,它可以做一些资产的一些梳理,此外它通过这个协议可以整理出端口协议等相关的信息,从这个流量当中,它可以识别到A访问的B,那A是不是有这种恶意参数在攻击B,那进行的一些异常活动的一些识别。
4、黑盒扫描
第四个来自黑盒扫描 我们可能会使用一些扫描器 比如说xray,awvs;会对我们现有的资产进行一个扫描扫描之后 它会有一些结果。
5、代码审计
第五个是代码审计 我们甲方平时会把代码放到Gitlab当中 那么我们可以借助代码审计工具,把这些仓库的代码;给拉下来 然后进行分析 那这其中需要人工进行一些分析。
6、IAST
第六个是IAST,它是程序在运行的时候它会在外部接收;一些参数程序运行过程当中 它会把整个链路给串起来;分析程序在运行过程当中有没有可能存在一些漏洞。
7、专项测试
第七个了就是专项测试专项测试就是我们安全团队;觉得必要的时候做一次专门的安全措施;所以我们在甲方做安全建设的时候 往往离不开这七个方式去发现一些漏洞。
流程二:漏洞审核
那么发现漏洞之后我们其实是需要去审核了;我们的目的是要确保这个漏洞是真实存在;并且被利用后会对业务造成一些安全风险;通过审核之后发现的漏洞数量,原本十个当中只保留五个;那么我们只需要把这五个交给业务线;去修复就可以了,大大降低业务线的工作量。
那么有些场景我们是可以实现自动审核的;比如说我们在某一个代码仓库当中就发现了一个WebShell;那么这个时候我们可以把这样一个事件给优先进行处理;具体情况了需要根据你们的使用场景;
流程三:漏洞定级
第三个了就是漏洞的定级 漏洞的定级其实是从几个维度去评估的;那么它并不是说根据这个漏洞本身的这个宕机;比如说这个出了Cases 它就肯定是高危吗?
不一定;首先它会根据应用难度;比如说我这样一个输入它的利用条件是什么;随时都可以利用,还是说它得经过很多个关卡,然后才能注入成功。那再比如说业务的重要性,有些系统可能是我们直接对外的业务;比如说影响了这个订单用户的数据 有些业务系统了;他可能存在的业务不重要 甚至了这个业务都要下线了。
第三个就是影响的范围 这个影响的是影响;我们公司的某一块业务 还是说影响;我们几个人的办公系统呢?它的影响大小;
那么第四个就是数据的敏感性 比如说我们这个数据了涉及用户的身份证号;手机号姓名 这些信息了我们是比较敏感的;而有些信息可能不是那么重要;从四个维度我们去衡量一个漏洞的等级。
流程四:派发工单
我们最终可以把这样一个漏洞派发到业务线,然后派发给业务线;派发漏洞方式有很多种 比如说通过IM的通知或正式一点通过邮件的通知;如果没人去认领的话,可以通过电话进行通知 那如果说这三个事情了;我们都做然后还是没有人去认领这样一个漏洞;
我们可以升级漏洞事件 把原本;我们认为的第三事件升级为第二事件 那么提升这个漏洞的响应等级;以及我们可以联系对方的领导 让他去重视这样一个漏洞;因为团队认领了之后 那么他会进入一个漏洞修复的环节;
流程五:业务修复
在漏洞修复的环节了;我们我们可以去提供修复的方案;那在大部分场景下优先他其实是可以自己去设计一套方案;我们只需要给他提要求就行 那少部分场景下我们需要给业务;提供一些修复方案的建议 。
那第二个呢?有可能就是业务认领了漏洞,但是他比较忙,所以这个时候了,我们还有一个职责,就是督促他修复,比如说我们可以给他找给他协商一定的时间。
第三个就是我们的工单,他其实是有截止日期的,就是截止时间快到了;那他还没有修复,我们应该会进行一个提醒,避免这个工单被逾期。
流程六:漏洞复验
1、修复不通过
修完漏洞之后他是需要对这个工单点击交付完成;那么我们安全需要重新复测,那这个漏洞是不是真的修复完成了;如果说没有通过那么没有通过的原因是什么;我们需要进行继续跟进 然后让这个漏洞继续回到修复中的这个状态;
2、修复通过
当漏洞彻底修复完成之后 我们需要对漏洞;进行一个特征的提取 比如说这个漏洞,是越权漏洞,还是说是一个注入漏洞,那他是哪个用户的;我们总结这种漏洞特征之后,我们可以把这种漏洞的一些类型;按照部门的漏洞类型 按照其他的一些特征进行归纳;然后我们可以进行一些相关的培训 组织更多的漏洞发生;
流程七:漏洞复盘
接下来,我们将重新审视漏洞管理流程图。
漏洞的发现方式可以包括使用IAST、IDS告警、黑盒扫描、代码审计以及外部SRC等方法。一旦发现漏洞,我们将进行人工审核和自动化审核。
对漏洞定级根据漏洞的难度、重要性、数据敏感性以及影响范围。
定级完成后,我们将派发漏洞,可以通过即时消息通知、电子邮件通知或电话通知来通知相关人员。
如果漏洞仍然没有被认领,我们可以升级事件,以促使相关人员进行认领。一旦漏洞被认领,我们将提供修复方案。如果业务部门未能及时修复漏洞,我们需要督促他们进行整改。这有助于提醒他们修复漏洞,以及提醒漏洞修复的逾期情况。
当业务部门完成漏洞修复后,他们需要标记漏洞为已修复,然后我们将进行安全复测。如果复测结果不符合要求,我们将要求业务部门继续修复漏洞。
一旦漏洞修复完成,我们需要对漏洞进行总结和回顾。这包括总结各种业务部门的漏洞分布情况以及其他相关特征。然后,我们可以回到流程的初始阶段,进行专项检测或提供培训,以减少漏洞的发生。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...