在众多厂商、企业都在尽力强调数据安全、落地各种防护方案时,关于代码安全,尤其是企业的核心代码防护仿佛并没有被时常提及,是否代码的敏感性、重要程度已不如数据?企业保护核心代码的措施又应该是怎样的?本期话题我们以核心代码安全为话题,就相关问题展开讨论。
代码安全要看行业的,如果是快速迭代的互联网模式,老的代码没什么用,也就不用怎么保护了。要是传统软件的代码就不一样了,你看微软什么时候公开过代码库。
A2:
现在企业中都有专门的代码仓库来保管代码,分组织、项目、人员来管理的。
A3:
代码安全根据行业来区分,例如公司是专门从事软件开发行业、软件服务的,他们的核心资产就是代码,那么他们会对代码安全要求很严格;如果行业并不是靠这行吃饭的,代码算不上核心资产,那么自然也就不会那么重视。
A4:
没错,看行业,尤其是制造等硬件底层的一些代码,开发环境都得隔离,代码落地加密处理,敏捷开发的前端没这个必要。
A5:
重不重要取决于对公司的价值。代码如果是核心产品,必然很重要。代码库也会设置各种权限,尤其是核心代码。
A6:
我这并没有开放给大部分员工,一般是项目相关的会有权限。但是我现在没遇到特别好用的代码管理软件,Git虽然优秀,但是其实面向的还是开源软件开发,在容错性上做的很好,但是权限和安全性是不足的。比如某人如果取消了权限,但是Clone到本地的代码一样能用。举个例子,某云的Devcloud也明显就是社区作风,代码库的创建者可以自行删掉代码库,真的是震撼了我。
A1:
核心代码的安全我认为应该分两方面来考量吧,第一是自身的安全考量,比如遭受安全事件后的影响程度;第二是从合作伙伴来考虑,比如华为就对合作伙伴有专门的标准,要求必需满足某些指标才会采购。
A2:
确实有这种声音。但被竞争对手拿到也不是那么绝对。安全价值或者说对公司的价值更多的是产品依赖度和知识产权。
A3:
题干说的这种核心代码应该是“瘦”核心,只要最重要的工作,其他都通过中、外围系统的完成,要有接口和相应的能力,不然核心代码只能跑非常少的功能。
A4:
除非特别大公司的特别大的业务系统的某个模块,其他的不存在跑不起来,毫无用处这个概念。无论是设计思路的窃取还是攻击漏洞的暴露,代码保护还是重要的,重要程度取决于老板预算。
A5:
这个说法应该是我老东家当年提的吧,号称的代码太吃资源了,被偷走了也跑不起来。结果,201x年的时候,真的有离职员工做竞品,结果现在互联网大厂普通员工都要签竞业协议了。而且也专门设置了安全部门来检查员工是否拉不该拉的代码,特别是离职前。
A6:
代码不出网这是基本要求,所谓和核心代码放出来的,只是现在的开源文化,放出一个公版,其他就不细说了。
A7:
小规模业务的代码,离开公司绝对能跑起来,客户端代码离开公司绝对可以跑起来。基本上就是轮子造的多的公司,可能代码没法直接Run起来,但是核心业务的核心代码,根本不需要直接Run,直接抄里面的功能逻辑就行。
不过说实在,现在大多数企业也没有核心代码吧,写的大多数是垃圾。代码泄露更大的问题是增加攻击面。
A8:
打个比方,开源那些机器人项目,人家的机器人18岁能蹦能跳,你把开源抄过来,看上去像脑血栓,真正的核心,不管是核心功能还是存在隐患,不太可能让所有人都能访问。
A9:
这部分的差异可能不是代码,有的时候是数据。甚至是日积月累的,这是真正的技术壁垒。比如搜索头部公司为啥会一骑绝尘,就是网页库这个后来者很难追赶了,成本极高。
A10:
感觉死代码是最没用的技术壁垒,太容易被复制了。
A11:
但好像还是有很多人复制了代码,也不会用。
A12:
国内不是卷嘛,研发核心人员把代码拿着出去又成立一个公司,产品五折,这种例子不要太多。
A13:
话说代码仓库开放不是会产生硬编码的泄漏吗?硬编码那才是影响巨大。
A14:
对,所以杜绝硬编码,因代码泄露感觉是不可避免的。
A1:
分级管理,最小化知悉。核心代码权限申请需要审批。
A2:
这种的措施挺多的了,比如代码开发环境完全隔离,代码开发不落地,都在云平台上实施。根据不同的行业,实施的方案也不同。游戏开发需要使用大量的美术资源,就无法适用上面的方法。
包括零信任方案,也有推出相关的解决方案。还有制度要求、技术要求、惩罚措施、定期审计。不同的公司支持力度不同,预算不同,也就有了不同的方案。
A3:
技术层面,我们这边搞的是代码落地加密,实施比较快,但是也有一些不足,比如加密客户端对MAC兼容性不太友好。
A4:
1.完善的代码设计、开发、测试、上线流程。
2.独立开发、测试、上线环境。
3.审计。
A5:
看老板预算,有多少钱办多少事情,我现在这种情况,只能做到所有代码库在我管辖范围之内,并且代码提交和和拉取记录有备份,也就是防一下离职前的大规模代码拉取。至于电脑上的管控,成本太高,就不做了。
A5:
暗水印技术。
A6:
那得拍多少呀?
A7:
不一定要拍很多,比如游戏行业,他只要拍一点开发画面,对于游戏接下来的计划、发行方案都有影响。
A8:
能详细说说吗,在代码上加水印,还是在屏幕上加水印?
A9:
放拍照当然是屏幕水印了,源文件加上会影响文件属性。
A10:
水印技术更多是为了泄漏后增强可追溯性,并不能防止拍照或截图。不过在心理上,会造成一定的震慑。
A11:
类似隐写,你可以了解一下。就是你拍照看不出什么东西,但是查到了根据图片的暗水印信息就能定位是谁泄露出去的。
A12:
暗水印是在文挡或屏幕里加不可见点阵,通过反选,或者调色能把点阵显示出来,然后根据点阵特征溯源。
A1:
前者负责方案,后者负责审核、审计。
A2:
在这个场景内,个信更多偏需求方,数安偏方案和执行。
A3:
目前大家墨守陈规的是个信和数据交融相错。
A4:
数据安全包含个人信息,但是由于PII比较重要,所以专门拿出来做隐私管理,至于加密之类的归属数据安全。
A5:
那说起来,个信这块,还是偏向于前端能不能收;数据这块,偏向于要不要加密、怎么加,是这么理解吗?至于要不要加密,得结合个信一起讨论(总觉得这个地方是双方共同的点,一个偏向法律要求,一个偏向技术实现)。
A6:
我觉得这么理解吧,个人信息主要在于前期收集、收集范围、告知用户权力、数据所有者权力,如何处置收集到个人信息(根据当地政策),收集到了,那就是归属数据安全进行管理。因为个人信息主要就是违法收集信息问题和过度收集信息。
我觉得企业如果在做PII管理,可以融入数据安全流程,主要是在收集到的数据如果进行管理,例如加密、脱敏、以及后续共享传输等方面,还有授权控制。
A7:
我指的是加密,不是收集。数据安全仅仅处理已经拿到的数据,而不管能不能拿这个数据。
A8:
我们是归公司总经理管,成立数据安全小组,负责人由高层担任,包括了法务和研发负责人,安全只是干活的。规则可以安全订,订完其他人审核。通过之后下发是以高层的名义来。
A9:
所以你们的用户隐私协议要写好,告知用户他的权力、数据所有者的权力,所以国内一些隐私协议写的很长,就是让用户不想看,出卖自己的隐私。这也算是一些小动作吧,在法律范围内,数据所有者增加自己持有个人信息的处置权。
A10:
增加了自己的处置权,也意味着自己需要对数据提供保护义务和责任。
A11:
所以,回归到问题本身,数据安全和个信的分工。
A12:
刚开始就已经说明了,如果有能力情况下肯定是分工的。但是实际工作过程中也是融入数据安全进行协同的,我不知道为什么要分的那么清楚,而且前期很多时候法务就可以搞定,都不用安全。
——————————————————
本期精彩观点到此结束啦~此外,FreeBuf会定期开展不同的精彩话题讨论,想了解更多话题和观点,快来扫码免费申请加入FreeBuf甲方群吧!
加入即可获得FreeBuf月刊专辑,还有更多精彩内容尽在FreeBuf甲方会员专属社群,小助手周周送福利,社群周周有惊喜,还不赶快行动?
申请流程:扫码申请-后台审核(2-5个工作日)-邮件通知-加入会员俱乐部
如有疑问,也可扫码添加小助手微信哦!
FreeBuf甲方群成员(因篇幅限制仅展现部分行业成员):
金融行业:贝宝金融 安全负责人、成都农商银行 信息安全负责人、晋商银行 安全负责人、北京银行 安全负责人、君龙人寿 技术负责人、合合信息 合规负责人、合生 信息安全负责人、航天产业投资基金IT负责人、工银金融 信息安全负责人、前海联合基金 信息安全负责人、天弘基金 安全负责人、阳光保险 信息安全部负责人、南京证券 安全负责人、宝马金融 信息安全经理
运营商:中国联通 网络安全主管、中国电信 信息安全技术主管、上海电信 网络安全主管、天津电信SOC主管、太平洋电信 研发总监
精彩推荐