乌云章华鹏:如何构建高效的安全运维服务平台

如何构建高效的安全运维服务平台

你们好,我是乌云的章华鹏,今天和你们分享的话题是“高效安全运维服务平台的构建”,包括:企业的数据安全问题,运维安全中面临的网络、系统服务、应用相关配置等问题。redis

企业安全的核心是数据安全

当咱们在讨论如何构建安全运维服务平台以前,咱们须要研究的问题是构建这样一个平台的核心需求是什么?核心需求是帮助企业解决安全风险,避免由于安全风险带来的业务损失。 咱们都知道对于一个依赖互联网的企业来讲,数据是企业的核心资产,那么归根结底,其实企业安全的核心是数据安全,因此咱们首先要明白企业的数据到底在哪里? 业务是数据的载体,IT资产是业务的载体,那么运维的核心对象便是企业的IT资产,因而可知,企业安全运维应该是运维的一项基础要求。 运维安全面临哪些问题? 高效安全运维平台构建的前提—了解企业面临的风险。企业的运维安全主要分为:网络、系统服务、应用相关配置三个方面。数据库

网络安全

主要是网络边界被突破带来的安全风险。对于大多数存在互联网业务的公司来讲,服务都会分为内网和外网两块区域,一般这两部分业务是相互隔离的。 通常来讲,企业内网主要部署着一些公司内部的敏感系统,这些系统只须要对内部员工开放,与互联网是隔离的。既然存在边界隔离,那么就会存在一些网络边界被穿透的安全隐患。 企业网络边界安全的典型风险主要表如今如下几个方面:包括某台服务器同时部署内网&外网业务、SSRF漏洞、IDC与办公网网络互通、未受权代理配置、IDC服务器被入侵等等。 这里对其中一些比较专业的概念作一个解释,某台服务器同时部署内网&外网业务这个其实就很容易理解了,好比有两个研发公用一台服务器,其中这台服务的内网IP映射到一个内部的业务系统,好比ERP;但同时这台服务器又部署了一个外部的业务,好比企业的官方博客,而这个博客绑定的是外网IP/域名。 SSRF漏洞,说白了就是至关于一个应用层的代理,能够利用这个应用层的代理来对内网任意地址发起请求。 未受权代理配置主要一些相似Squid这样的代理未添加受权控制,致使任何人均可以直接经过这个代理带请求内网资源的问题。 在乌云平台,常常能够看到这样一些案例,一些攻击者能够经过突破边界来漫游企业的内网,从而拿到公司内部的核心信息。 上图是一个关于某互联网公司SSRF的案例,详见乌云http://www.wooyun.org/bugs/wooyun-2016-026212,相似内网漫游的案例在乌云漏洞报告平台上搜索一下有超过400条的记录。安全

系统服务安全

系统服务相关的安全问题主要体如今系统基础依赖组件及基础服务漏洞两个方面。 典型的系统服务相关安全问题主要包括OpenSSL 心脏滴血、Shellshock BASH远程命令执行、Redis 未受权访问、各类基础服务的弱口令等配置问题。 最近爆发的一些全球性安全事件包括:心脏滴血、BASH远程命令执行等漏洞,影响范围很是广,这些都是因为系统的基础依赖组件存在安全问题致使的。 上图是一个国内某电商网站的心脏滴血漏洞,乌云主站搜索redis 相关的风险也有将近400 条。服务器

应用配置安全

应用配置安全主要体如今应用上线流程和各类配置不当方面。 在应用上线流程中常见的安全问题,例如上线代码的SVN及Git配置文件目录未删除致使代码信息泄露,数据库及代码的备份文件放在 WEB目录下致使被黑客下载等问题。 一般Webserver的配置也是配置风险的大头问题,这里面不乏因为Webserver配置不当致使任意系统文件遍历,列目录风险等问题。 问题这么多,这么办?网络

如何构建安全运维服务平台

基础资产管理

企业安全的核心是数据安全,而基础资产是这些核心数据的载体,因此在构建这样一个安全运维服务平台之初,咱们首先应该作好基础资产的发现和管理。 基础资产发现,甲方能够从两个角度来想,一个是依赖于内部的资产运维管理流程,另一个是站在外部攻击者的角度来进行资产探测,这样作的话能够有效的进行互补,由于若是仅从内部资产运维管理流程中来对接企业的IP、域名等资产的话对于内部资产管理的要求会很高,而每每企业内部规范落地很难,致使一些资产会遗漏,而外部探测的方式就可以很好的弥补。 外部资产发现的方式主要包括:子域名的暴力枚举,经过一个子域名命名经常使用字典来挨个遍历子域名;第三方的DNS数据分析获取企业相关的子域名和IP;除此以外还能够经过第三方查询接口、网站爬虫、域传送漏洞的方式获取相关子域名IP的信息。 基础的域名IP资产梳理完毕后,咱们须要研究如何把资产管理这件事情作的更加高效。 域名IP是一个比较粗粒度的资产,为了方便应对全球不断变化的安全风险,咱们须要作到更加精细化的资产识别,好比每一个域名IP上所部署的应用及服务相关信息,一旦这些应用及服务在互联网上暴露出来安全风险,运维服务平台就能第一时间进行响应,这些都依赖于指纹识别技术。 指纹识别方面包括服务指纹识别和应用的指纹识别。 服务指纹识别方面Nmap彻底能够知足你们的需求,并且能够方便的进行指纹规则的定制; 应用指纹识别方面咱们能够研究从HTTP协议层面,包括特殊WEB应用的HTTP Headers字段的特征,好比某应用会使用特殊的Cookie值。另外包括特殊应用独有的静态JS/CSS/HTML文件特征。 经过这些特征基本能够识别市面上全部的第三方应用特征。框架

持续风险监测

在前面的资产管理模块中咱们提到资产指纹识别主要分为服务及应用指纹识别两方面,一样在进行风险检测时也是关注服务及应用的风险检测。 服务风险检测主要包括系统基础服务相关的通用漏洞和服务配置不当的风险检测; 应用风险检测主要包括一些第三方应用的通用漏洞和自研的应用风险。第三方应用的通用漏洞一般根据具体漏洞的利用方法来编写具体的检测策略便可,而自研的应用风险如典型的SQL注入,则只能经过尝试不一样的攻击测试Payload来判断是否存在漏洞,这一般和具体的漏洞场景有关。 那么如何让风险检测这件事情变得更加高效呢? 咱们知道关于风险的检测最重要的就是检测策略,并且互联网相关的技术是在不断变化的,也带来不同的漏洞风险。这就给企业在覆盖不一样风险的检测策略上带来了极大的困难,那么若是咱们可以联合安全社区的力量来完善策略就可以完美且高效的解决这个问题,而做为平台方只须要作的一件事情就是提供足够好的引擎框架来方便社区的安全专家为平台提供策略。 同时还须要有良好的机制来运营社区,好比说将风险发现的结果和白帽子编写检测策略的奖励对应起来,这样能够很好的激励白帽子写更多更好的检测策略。运维

安全事件处理

当企业发现了风险之后接下来须要作的事情就是去进行事件的处理,企业须要创建一个及时有效的处理流程:首先从发现问题开始,接下来是进行风险通告,通告到存在风险的具体业务部门,同时指导业务部门进行风险整改。 这个环节有一个很重要的细节就是,业务部门的研发人员实际上是不了解安全的,因此在重视安全问题及修复过程当中可能会存在修复不当的状况,因此在通报修复的过程当中最好有安全人员进行跟进。 最后修复处理完毕后还要进行及时的回归测试。 固然,除了须要去及时处理一些已知存在的安全风险,还须要有预警全球正在爆发的通用安全事件的能力,好比当时爆发的Struts2漏洞的时候,漏洞爆发的第一时间须要预警到各个可能受影响的业务部门,要求业务部门及时配合自查整改。这样可以更大程度上赢得修复的时间。 关于安全事件处理流程如何更加高效? 核心是须要把安全运维服务平台和业务部门的产品生命周期管理流程打通,最好有API直接对接到产品开发上线的流程中去,安全问题做为产品的严重BUG同样获得及时的排期修复。 同时这个过程当中必定要有一个专业的安全人员进行跟踪服务,确保问题不会修复不当,致使问题反复出现。在全球风险预警方面最好对接社区的力量,由于小团队没法跟踪全球最新的安全风险动态。测试

持续风险管理

因为业务是在持续不断的迭代更新,因此为了保证业务在迭代更新过程当中不断的规避风险,须要对业务系统进行周期性的持续监测。 这样可以避免因为迭代更新带来新的安全风险和避免曾经修复的安全问题回滚再次出现。另一方面能够对持续风险监测的结果进行趋势分析,这样可以帮助咱们发现企业当前一段时间主要面临的安全问题,在下一阶段的安全建设上就可以提供有效的指导建议。 关于如何高效的进行持续风险管理,一方面须要可以自主的配置周期性的检测,这样能够适应企业的迭代更新频率;另外一方面还须要支持不定时的手动启动检测风险来知足突发的应用上线。 在风险管理方面能够支持按期的报表导出和自定义的导出策略,如此可以更加高效的知足风险运营管理的需求。 以上就是本次分享的全部内容。网站

相关文章
相关标签/搜索