仅以此文向那些在企业进行安全体系各方面建设的各级苦逼安全从业者们致敬!
作为一名安全从业人员,在你的职业生涯过程中都会接触到不同方面的信息安全体系的建设,同时经过自我不断的学习与总结,会对信息安全体系有着自已的理解;
下图为笔者理解的信息安全体系架构简图:
笔者认为,信息安全体系化建设就是安全组织在特定范围内,将涉及安全管理与安全技术的措施、功能、系统等相互关联在一起,为了实现特定的安全建设目标,从而形成一个整体的过程。
各公司的信息安全的建设目标都大同小异,都是为了保护资产,通过评估安全风险,以总体安全策略为指导,制定安全保护措施,为公司信息系统及知识产权提供全面的安全保护,建立适用及高效的信息安全体系,尽可能的降低安全风险,从而提高组织的整体安全防护水平,为业务发展提供稳健的信息安全保护。
为了实现建设目标,需要两种手段,也就是说信息安全体系建设应该包括安全技术与安全管理两种手段,就像我们常说的“三分靠技术,七分靠管理”;其中安全技术手段是安全管理手段的基础,安全管理手段是安全技术手段发挥作用的关键,安全保护措施的正确实施需要同时有管理手段的监管及技术手段来验证,两种手段相互配合,缺一不可;
安全体系所包含的内容
公司的信息安全体系建设是每个安全从业人员,尤其是安全管理者所绕不过的工作内容;
信息安全体系大多可分为信息安全管理体系,信息安全技术体系,以及信息安全运营体系三个主要体系;
接下来,笔者将对这三个体系简单介绍一下:
信息安全管理体系指组织在整体或特定范围内建立的信息安全方针和目标,以及完成这些目标所用的方法和系统,同时确认了安全组织架构及角色责任,并最终形成文件化管理体系的过程;
主要包括的内容应该有以下几个方面:
一、制定安全总体方针,确认安全建设目标;
通过评估总体安全风险,确定安全纲领和总体方针,明确安全权利义务责任,有助于建立适用及高效的信息安全体系,尽可能的降低安全风险,提高组织的整体安全防护水平。
安全管理者还需要根据安全目标制定相应的安全规划,包括长期目标及中期目标,以及阶段性成果的短期目标,提高老板对信息安全的信心,从而获取更多的支持;
二、建立组织机构,确认角色责任;
1.安全管理委员会,公司信息安全最高权利机构
信息安全管委员会主席应由高层管理层或全权代表担任,是信息安全总体负责人,总体协调工作由安全部门负责人负责,委员由内审合规部,人力资源部,法务部,政府关系以及各事业部的产品、技术负责人组成。
定期召集信息安全委员会会议,委员提交各种决议草案,战略计划、政策建议,待发布的制度等,由委员会共同讨论决策,如果针对某项决议委员会无法达成统一决议,由主席最后来决策; 执行小组,用以完成具体事务
安全委员会下设执行小组,根据具体事务,将各委员与专家组共同进行确认,如成本控制,变更控制,风险管理,重大安全事件响应,以及合规审计等。
比如:风险管理小组
工作内容:识别相应的风险,并给出相应的风险处理措施;
l 建立风险管理团队,确认风险估评的规程
l 识别相关的资产,脆弱性,以及风险
l 风险计算,计算总风险,以及剩余风险
l 风险处理措施,转移,降低,规避,接受
2.专职的安全团队
每个公司都需要有一个专职的安全团队,执行安全管委会的指示,全面负责公司信息安全的具体工作;
三、人员管理,实现员工从入职到离职的全周期安全管理;
人员是公司最重要的信息资产,做为安全从业人员,你需要对人员进行有效的设计及管理,与人力资源部进行协作,降低相应的风险;
安全培训设计:
设计安全培训体系,通过多种样式,让员工能够通过培训学习安全制度以及安全技能,从而提高员工安全意识;
四、最终策略体系文件化
形成以方针,基线、流程、说明等策略制度的文件集合,最终落地执行实行有效的安全策略;
1.制定文档编号
规范信息安全体系各文档的命名方式及规则,从而保证文档的唯一性、可识别性及可控性;
2.确定安全制度文档审批流程
根据公司实际情况,将HR,法务,内审合规部门协调起来,使制度策略落地执行;
如何才能让制度执行落地呢?
多部门协作,在制度起草时清晰相应部门的责任,并严格执行;
比如:《XXX公司-ISMS-03-XXXX 安全事件管理规范》此文档由安全部门进行起草,安委会专家组评审对内容中安全事件等级评级及奖惩标准进行确认,交由HR部门进行发布,并由学习发展部门进行安排培训,内审合规部门进行流程审核;
在制度执行方面,安全事件处理完成后,安全部门向HR提交责任部门责任人及奖罚建议并抄送安委会进行留档,由HR部门发起奖罚通知单,如责任人有异议,则向安委会进行申诉,内审合规部门将会介入,对整个流程和奖惩建议进行审核,最后给出处理意见,并将结论提交到安委会审计合规组进行备案留档;
信息安全技术体系指为了实现公司安全建设目标,对公司技术相应风险进行识别,并建立相应的安全技术措施,实现层级保护结构,保护信息资产,实现业务持续性发展;
首先要确认公司的采用的技术及框架,需要汇总入库;
开发技术方面:
· 业务都使用什么程序语言进行开发?
· 是否按照最佳开发实践手册进行编码?
· 源代码如何保管?
机密性策略:
· 采用何种加密方式,对称加密与非对称加密?
· 加密算法如何选择,是国际通用算法,还是国密算法?
完整性策略
· 散列算法用的是什么?MD5?SHA1?SHA256?
· salt原则
可用性策略
· 灾难恢复策略
· RAID技术
· 负载均衡策略
· 异地多活策略
· 备份策略
· 防DDOS方式
认证鉴别策略:
· 用户鉴别,统一管理还是分散管理?
· 认证方面,静态口令?动态口令?是否考虑防抵赖?
· 授权方面,授权方式是什么?是否需要审批?
· 审计方面,使用什么手段?需要审计什么内容?是否防篡改?
密码策略:
· 使用静态口令推荐使用8位以上密码,大小写特殊符号的组合;
· 每三个月更换一次;
其它需要考虑的问题:
主要威胁是什么?来源于外部还是来源于内部?
主要风险是什么?是否有对策?
是否有第三方接入?安全要求是否考虑到?
是否需要通过购买什么产品构建?供应链安全是否考虑到?
如何能花更少的钱实现最大的保护?
如何将威慑、防御、检测、恢复、响应、监控这些防护手段加入到防御体系中呢?
....
关于层级纵深防御
相关层的内容包括如下内容:
一.应用层
随着互联网的推广,WEB应用越来越广泛,针对WEB应用程序的攻击也越来越多,如:跨站脚本攻击(XSS)、SQL注入、目录遍历、缓冲区溢出、拒绝服务攻击(DOS)、页面篡改等;
建议措施:
1.不要相信用户的输入,删除/转码特殊字符;
2.限制输入,仅仅允许输入你所希望的内容;
3.不要输出多余的信息,比如错误信息,软件版本信息等;
4.最少的服务 最小的权限=最大程度的安全;
5.保持清晰的思维,一定要有安全意识;
一定要持续推动公司产品安全开发生命周期SDL流程的建立和完善;
(产品安全开发生命周期SDL)
各阶段所考虑的安全特征:
· 设计阶段--通过威胁建模以及安全知识库,提高产品和开发的安全意识,在产品设计阶段就能考虑安全需求,使产品更加安全可靠;
· 开发阶段--通过编码要求,最佳安全实践,以及开发过程中调用安全类库,提高代码的安全性,在开发阶段减少安全隐患;
· 测试阶段--对项目进行安全测试,提高产品安全性和稳定性;
· 上线阶段--将上线的产品进行深度的安全测试,同时对承载产品的服务器及关联系统进行测试,减少由于其它系统的脆弱性给产品带来的风险;
· 运行阶段--安全部门通过对安全事件的响应,以及对安全漏洞的管理,使产品在运行阶段稳固运行,使业务持续发展;
· 下线阶段--督促下线产品进行代码回收,设备的回收,以及剩余数据的处理,同时对无人管辖产品并存在重大安全隐患的产品进行紧急下线保护,避免下线产品对公司产生的风险;
二.网络层
计算机网络是用通信线路和通信设备将分布在不同地点的多台自治计算机系统互相连接起来,按照共同的网络协议,实现资源共享的系统。随着互联网在全球范围内的快速发展,针对及利用网络层的攻击也越来越多,如DDOS攻击,木马肉鸡,网络监听,黑客扫描,流量分析等也越来越多;
建议措施:
1.对敏感区域进行划分,通过访问控制以及防火墙实现边界防护
2.通过部署蜜罐系统,网络入侵检测系统以及安全扫描,对网络内的风险进行识别,对内部业务及资源进行保护;
(标红为安全措施)
三.系统层
由于配置不当会导致黑客利用系统漏洞进行攻击,可能导致系统出现权限提升、非授权访问、软件或服务崩溃,病毒木马等情况;
建议措施:
1.最小化安装原则;
2.动态口令登陆,开启来源IP限制;
3.安全配置脚本,同时修改相应提示信息;
4.安装HIDS
5.安装杀软
6.及时更新补丁
将安装镜像根据公司业务进行定制化,安全人员务必参与其中,除业务定制化软件外也将安全要求定制到镜像中,从而实现配置规范化;
四.终端层
需要每个终端设备必须经过网络准入认证才能访问公司资源;终端可能包括PC、笔记本、智能手机、平板电脑和特定设备,如打印机或电视机等。
建议措施:
1.网络隔离,尤其是特定设备
2.办公网接入防抵赖
3.部署防病毒软件
4.对用户行为进行画像
同时部署DLP反泄密系统用以发现内部用户泄密行为,并使用终端管理系统及上网行为管理系统,可对用户行为进行画像,检测异常用户行为,这样将大大提高终端层的安全;
如有BYOD(BringYour Own Device)用户携带自己的设备到公司办公需要我们怎么做呢?简单的原则就是达到公司用机的安全要求即可;
五.数据层
近年来,针对数据的攻击事件日益增多,拖库、撞库现象频发,归纳起来,数据受到的常见威胁大致包括:误操作、错误的安全配置、内部人员泄密、未及时修复的漏洞、高级持续威胁(APT)等。
建议措施:
1.对数据进行分级分类,根据不同的数据类型进行不同的防护等级;
2.敏感数据访问控制,做好权限控制;
3.实现数据生命周期的安全管理,
4.做好数据备份和应急处理,设定合理的数据库备份策略
5.完善的审计策略
分级分类原则及方法:
分类:依据数据的用途对数据进行分类;
分级:按照数据的内容敏感程度进行划分,比如:敏感数据,业务数据,一般数据,内部公开等进行划分,每个级别都有相应的安全保护措施;
如:用户个人身份证信息,属于敏感信息,所采取的保护措施是,加密存储,必须加盐,显示规则全部打码,后台不可修改,必须加密传输;
6.物理层
在这一层次的保护大多由公司行政部门进行负责,安全部门基本不参与,笔者建议安全管理者在遇到办公区搬迁或新大楼入驻的时候也要参与一下,因为信息安全最终保护的是人员,而物理安全则是保护人员和资产的第一道屏障;
建议参与的内容:
· 办公敏感区域划分
· 物理IDS部署
· 警卫行动路线规划
· 门禁系统部署
· CCTV安装
· 防火防盗
· IDC机房温湿度
· 审计权限等
信息安全运营体系指通过对资源的管理,配置的管理,变更的管理以及事件的管理以及流程的控制,完成公司安全日常运营工作;
首先作为安全从业人员要知道安全部门在公司中保护什么?
1.确认保护的目标
识别资产,并根据产品进行分级分类,同时根据重要程度设定优先级;
2.形成资源清单
简单的资源类型如下:
将资源清单形成CMDB(ConfigurationManagement Database),这样就可以更好的管理资源,与业务、人员、组织、流程等多方面更好的进行联动;
3.建立事务跟踪工具,比如类JIRA工具,用于进行事务跟踪、流程审批、任务跟踪、项目跟踪等工作
信息安全运营相关工作内容如下:
配置管理
制定基线,并确保系统处于一致的安全状态;
那么公司如何设定安全配置基线呢?
以制作操作系统镜像为例,首先安装操作系统及所需软件,并对系统进行安全配置和配置相应的其它安装要求,然后进行人工检测,最后将制作安装镜像,并将镜像放在镜像服务器;
需要注意版本控制,以及配置文档更新,建议加入到知识库;
事件管理
通过对安全事件的管理,实现问题快速处理,降低安全事件对公司带来的损失和影响,从而提高公司运营安全及产品的安全性;
(安全事件管理的内容)
包括三个阶段,具体内容如下:
事前准备阶段:
· 事件定义
· 事件定级标准
· 事件处理流程
· 确认组织与人员
· 工具集准备
· 相应预案
事中处理阶段
· 检测验证事件
· 专家组作为事件的第一响应者
· 事件响应
· 缓解止损
· 事件报告
· 组织内部报告
· 外部通告
· 业务恢复到正常状态
· 问题修复,根除风险
· 事后反思阶段
· 事件复盘
· 经验总结
· 更新策略
安全事件检测响应体系:
PDR模型(基于时间维度的检测响应体系)
感谢屈延文先生宣传的PDR模型,它包括protection(保护)、detection(检测)、response(响应)3个部份,是美国国际互联网安全系统公司(ISS)提出的,基于时间的可证明的安全模型,其概念是防护(Protection)及其防护时间Pt(系统在黑客攻击下的存活时间)、检测(Detection)及其检测时间Dt(黑客攻击开始到被发现时间)、响应(Response)及其响应时间Rt(从发现攻击到做出有效响应的时间)。
任何安全防护措施都是基于时间的,超过该段时间,防护措施就可能被攻破。该模型的基本思想是承认信息系统中存在漏洞,正视系统所面临的威胁,通过适度的防护并加强检测,落实安全事件响应,保障系统安全。
安全状态:Pt>Dt Rt S安全(系统S的防护时间Pt大于攻击及响应事件,系统安全);非安全状态:Pt<Dt Rt,S是不安全的,系统暴露风险敞口事件Et=(Dt Rt)-Pt。从攻击检测响应事件看,攻击存活时间Pt对应的是黑客攻击能力,不好把握。所以对检测时间Dt和恢复响应时间要求就越来越高,就像中间提到的威胁情报引入会降低MTTD和MTTR一样,采用自动化手段能显著降低响应时间(Rt)。
PDR模型的扩展包括PPDR以及PPDRR模型,其中PPDR模型增加了策略(policy);而进一步演化的PPDRR模型增加了恢复环节,包括策略(Policy)、防护(Protection)、检测(Detection)、响应(Response)和恢复(Recovery)5个主要部分。
变更管理
确保变更不会造成安全保护中断或下降,使安全策略保持有效;
变更规程如下:
1.确认是否需要变更
2.请求变更
3.由安委会变更小组进行审查评定
4.批准变更
5.实施
6.记录存档;
补丁管理
确保系统安装补丁,可以修复现有软件的漏洞,提高安全性;
建议推动补丁服务器的建立,如windows系统的WSUS(Windows Server Update Services),或者CentOS系统建立自已的YUM源服务器;
补丁更新需要遵守以下的步骤:
1.评估补丁,是否适用,补丁来源是否安全
2.测试补丁,对业务是否有影响
3.批准补丁,可以参考变更管理部分,如有补丁服务器,将进行添加;
4.部署补丁,管理员安装补丁
5.确认部署,定期测试,确保补丁有效;
漏洞管理
定期检测漏洞,评估并采取相应措施来减少相应风险;
通用漏洞披露(CVE)数据库为安全从业人员提供了研究的方向和方法,它是由MITER维护的,网址为cve.mitre.org
相信大多数安全从业人员都经历过,使用漏洞扫描器或者系统对保护的目标进行定期或不定期的扫描,发现漏洞,评估对业务的影响,找到管理员通知修复,并提供修复方法,并验证是否修复;
各位看到我们有保护的目标,也就是前面说的CMDB,有流程控制系统,那个类JIRA的系统,有管理员,有修复方法,同时公司应该也有漏洞管理的规范,那么将其自动化怎么样?
安全渗透
渗透测试是通过模拟黑客的攻击方法及方式,来评估公司信息系统安全的一种评估方法;
人员分为内部,也就是大家常听到的蓝军团队,以及外部,也就是第三方检测团队,如,安全公司,公司SRC,众测等;
方式分为:黑盒测试,白盒测试
一般步骤为:获取授权,确认范围,识别资产,扫描,漏洞利用,权限提升,渗透报告;
值得注意的是,作为第三方的检测团队,渗透测试一定要有授权才可以;
安全运营平台SOC
笔者所理解的SOC是一个集中、统一、可视化的安全信息管理平台,它更像一个指挥平台,安全部门可以通过它集中管理安全设备,实时采集各种安全信息,实时地对安全信息进行关联分析及风险评估,通过建立安全策略,能够更好的进行安全事件响应,安全漏洞处理,以及安全态势感知,同时可视化提供更好的呈现,更好的对业务进行安全赋能。
包含的相应功能有:
1.统一安全设备管理
2.日志汇聚及处理
3.配置管理库
4.变更管理库
5.安全解决方案库
6.安全工具库
7.威胁情报中心
8.应急响应中心
9.安全培训系统
10.可视化呈现
SOC也不是一蹴而就的,笔者的思路是分一二三步走:
第一步,把安全设备日志和内部系统日志收集分析,给员工画像,将业务日志,生产流量进行分析,给用户画像,给数据流画像
第二步就是把处理问题的方案方法,以及系统操作都联动起来,真正做到关联分析操作
第三步,实现漏洞事件处理可视化,系统操作简化,成为安全部门的展示和操作平台
安全体系建设也从来就不是一个项目,而是一个持续不断发展的过程,而这个过程也是需要不断的更新和修正;
PDCA是安全体系建议很科学的程序,看官们一定要好好利用;
笔者认为,有些公司有管理,技术,运营三个体系是不够的,应该还有一个安全审计体系,实现“权力应该放在笼子里”,安全审计将对安全组织的权利进行制约,同时对安全体系建设的成果进行考核和审计,会使安全体系更加有效,强烈建议;
罗马也不是一天就能建成的,安全体系建议也不是一下子就建好的,需要打好基础,循序渐进,一步一步来;
至此,我对安全体系建设的内容基本告一段落。