1.3 安全开发能力对企业安全建设的作用
具备一定规模的安全团队需要具备安全开发的能力:一是可以节约采购成本,自研一些日常使用的基础系统,如高危端口扫描器;二是可以提高工作效率,用脚本的方式调度Nessus、AWVS和sqlmap等扫描器,将资产管理、漏洞扫描及漏洞修复等一整套流程形成闭环;三是可以对开源的安全系统进行二次开发与改造,使其更好地适应公司的现状,方便运营管理等,比如将OSSEC的日志都收集到ES中,通过ES分析日志和报警等。
1.3.1 安全团队具备自研能力的好处
安全开发能力是安全团队的标配能力,安全团队具备自研能力有以下好处。
● 提高工作效率,将安全工程师从日常烦琐的手工操作中解放出来。
● 可以根据企业的实际情况对安全开源系统进行二次开发,使其更适合应用在企业中。
● 可以开发一些企业有需求、但没有现成或通用的系统或产品,如业务风控系统等。
● 避免受制于厂商,对于厂商提供的通用系统,如果企业有个性化需求,厂商需要评估后再决定是否增加,其次厂商的时间排期也不可控。
● 有一些系统是按站点收费的,比如HIDS,服务器规模较少时可以接受采购的方式,但服务器规模较大时,采购费用就足够维持一个完整的HIDS团队了,这个时候采取自研的方式一方面可以降低成本,另一方面也不会受制于第三方。
1.3.2 自研与采购的取舍
一些安全系统既可以采购,又可以自己研发,自研与采购该如何取舍,可以从以下几个方面进行权衡。
1.自研成本与采购成本
若企业需要一个与Nessus一样功能强大的扫描器,或一个数据防泄露(Data Leakage Prevention,DLP)产品时,就需要直接购买了。因为安全厂商在这些领域是专业的,且经过了多年的积累,自己研发花费相同的成本想做成同样品质的产品几乎是不可能的。
对于业务规模很大,采购成本已经超过自研成本时,可以选择自研的方式,如按部署量收费的HIDS。如果现在或未来几年服务器规模会达到数万台的级别,采购成本已经超过自研成本,这时候就需要自研了,因为团队的成长、积累也需要时间,若后期再改用自研的方式,可能会跟不上业务的发展,需要提前规划和布局。
2.是否有现成的产品可以满足需求
有些安全需求,如扫描器、防火墙等有通用的产品,可以选择采购;但与企业特有的业务强相关的,如风控系统、信息安全部内部的一些Web平台、UEBA、安全日志分析系统和溯源系统等,市面上是没有现成的产品的,只能选择自研的方式。
3.是否会受制于厂商
对于一些需要经常迭代、增加新功能且大规模部署的系统需要自研,如HIDS,当服务器规模达到一定的量级时,需要频繁增加新功能,厂商的更新速度可能无法满足需求。若更换厂商时需要将已部署的全部系统下线再上线新系统,更换成本也相当大,这种会受制于厂商的情况也可以考虑自研。