美创CTO周杰:如何保护流动的数据
不知道你们有没有这种感觉,一堆骚扰、推销电话时常扎堆打过来,清净一段时间后,又开始如被鞭尸般捞起来继续被“骚扰”。
让人有种恍如隔世的感觉:我的信息到底是在哪个环节泄露的?
住过万豪酒店的朋友们应该能体会雷锋网 (公众号:雷锋网) 编辑的这种想法,2018 年 3.83 亿预订喜达屋酒店客户的详细个人信息遭到泄露。今年 7 月,这家公司被英国罚款 1.24 亿美元。
毕竟 1.24 亿美元的罚款也不会被平分给这些被泄露信息的受害者,说来也没什么可高兴的。它只发出了一个严重警告的信号:出来混,泄露信息,是要挨罚的。
听起来有点严重,前阵子,中国一些涉及非法爬虫业务的所谓“大数据风控”企业日子不好过,被抓的传闻四起,这两天的一个消息是,江苏淮安警方依法打击了 7 家涉嫌侵犯公民个人信息犯罪的公司,涉嫌非法缓存公民个人信息 1 亿多条,其中,拉卡拉支付旗下的考拉征信涉嫌非法提供身份证返照查询 9800 多万次,获利 3800 万元。
因此,考拉征信服务有限公司及北京黑格公司的法定代表人、董事长、销售、技术等 20 余名涉案人员被警方一起带走了。
看上去,这些“主动”把个人信息拿来赚钱的企业果然没有好下场。但对“被动挨打”也要认,被人盯上数据的企业就只能浑浑噩噩过日子了吗?
并不是。 按照一个朴素的道理,如果一个人抱着金银珠宝上街,起码也要配备一两个保镖,如果是拍卖公司运货,可能配上的是一个安保公司全方位的服务。
当然,还有一些本来就有钱有势的“大富豪”,可能直接出手成立一家专为自己服务的安保公司。
这种朴素的理念映射到现代企业保护自己的各类数据或者数据库,也很好理解: 有钱有人的大公司自己有安全部门、安全人员,甚至自己研发了保护工具,一般企业还是购买专业方案,也就是购买“安保公司的服务”。
由于对数据的保护实在迫在眉睫,一家专业数据“安保公司”美创甚至将之前主打的“数据库安全”增长到“数据安全”,他们做出这个决定是在两年前。
为什么会有这种变化?保护数据的思路应该是什么样?雷锋网与美创公司的 CTO 周杰聊了聊。
口述:周杰 | 整理:李勤
关于打法:数据安全厂商的不同
我所指的数据安全是指要防止数据被恶意泄漏,或者是被恶意拖库、撞库、弄坏、被加密等。数据库防火墙、数据库审计、防水坝、加解密、防勒索、业务安全审计、脱敏等肯定是我们的主流产品,当然,灾备也不可能丢掉,任何系统都需要做灾备,灾备严格来讲也属于安全产品。现在线下迁移到线上,上云的态势很猛,异构的数据库迁移产品很重要。
不过,有些公司对数据安全的理解就等同于只有数据库灾备,我理解的是,就算你只用灾备产品,也不应局限在数据库灾备上,它应该是全业务的灾备。
比如,一个企业可能除了主系统,还有很多微服务,应用系统宕机后,切换是很困难的,如果有100个微服务,备份顺序如何?是否能实时备份?这是很复杂的情况。
国内很多数据安全厂商是从传统安全厂商转型而来,他们的防护理念是从外到内的,他们从黑客的角度出发想问题,并没有明确的保护对象,是在梳理攻击者的攻击路径,保护程度可能比较浅,从 IP 到端口就完了。没有实时阻断,可能只有旁路阻断,实际上旁路阻断是伪命题,它不可能实现100%阻断,流量一大,肯定无法阻断危险操作。
我们的思路是从内而外出发,有明确的保护对象,也就是数据。
我们首先会定义“有什么东西”,梳理核心资产,从保护对象出发,可以精确了解攻击方式,从而缩小攻击面。比如,对一个数据库的破坏有哪些形式?用勒索病毒加密、物理拷贝、 通过 SQL 语句删除数据或窃取数据等。
除了缩小攻击面,还要尽量隐藏攻击面。
比如,MySQL 的默认连接端口是3306,如果把 MySQL 的 3306 端口变成了 3308,就可以在黑客撒网式批量扫描过程中增加一些免疫的效果,虽然只是一点点,但它是有作用的。如果我们的敏感资产不会被发现,自然受攻击的可能性大大减小。
我们还可以在 3306 的端口上放个陷阱,模拟 MySQL,把攻击流量引入陷阱,用于来分析或定位黑客。
很多厂商的思路是,“漏报”比“误报”好,如果当下对一个“威胁”不能确定,会先放过,等问题上报、分析、检测这一套漫长的运营流程下来后,事情就可能已经发生了,伤害已经造成,要有什么效果也只能等到下一次。
面对核心资产,不能放过任何一个危险操作。美创的理念还是实时阻断,采取动态的策略,知白守黑。好人是可被穷尽的,坏人是不可被穷尽的。
比如,做 PDF 防篡改,能够编辑 PDF 的软件有多少?95% 的企业用的都是同一种,我们只要做出一个画像,确定了关键指标,别人想伪造这个软件也很难,只有具有合法身份的访问才被允许。
关于用户:上安全是否影响业务
安全要上马,对用户来说,也不是一件容易的事情。
我们在和用户交流中,常常发现他们有这样的疑虑:上了安全系统是否会影响业务系统?业务系统可能在 99% 的时间保持工作状态,安全系统可能是在 1% 的时间里抵御攻击,所有的安全系统都是为了保障业务的正常进行,不能上了一套系统把业务搞瘫了。
所以,我们研究数据安全防护必须尽量取得平衡。
首先,安全策略要尽可能动态化,减少对用户正常工作的打扰。引入自学习,让策略更加聪明。
其次,当安全系统真出现异常的时候,让安全系统从串行变成旁路,保证业务系统正常运行,让业务系统先好好干活,稍微闲余时再抓包分析。
关于数据:流动中的全链路防护
我们始终认为,安全应该是一个防护链,而不是某个点。
在数字化转型的大背景下,数据一直在流动,也就导致了数据所处的位置是不同的。根据数据所处位置的不同,可以把数据分为三类:在数据中心、在流动路上、在终端上。
对不同位置上的数据,保护策略不一样。
对于在数据中心的数据,因为对“云厂商”天然的不信任,对数据进行加密灾备是必须的。数据中心的数据本来就是供人访问的,要进行数据交换,因此在校验身份上没那么简单,进行多因子身份认证是必须的,对这一点,各家都有自己的方案。
我们的思路是,除了验证最基本的账号和密码,还要验证访问者的操作系统,用何种应用程序连接,如果说我们只是解析协议,得到的信息是有限的,因此我们可能需要在访问者的终端上安装一个代理,报告进程的哈希值或者签名,从源头上控制访问端,排除恶意软件的连接。
确认身份后,还需要分析上下文的语境,弄清楚为什么这个访问者需要访问,为什么是这个时间段,在这个地址发起访问。对于工作时间以及常用地址之外的访问,我们会先判断有风险。
总之,还是尽可能地描述访问者的画像,并在数据中心进行相应的防护。从不信任,永远验证。
审计也是很重要的一环,把所有的操作都审计下来,有助于事后的分析,回溯。
因为数据是流动的,我们要对敏感数据进行脱敏,对脱敏之后数据进行全链路加密。
所谓脱敏,就是去掉敏感信息,保留原来数据一定特征,即保持数据原有的可用性。也是说对数据进行脱敏过程中,得到的结果一定是这个数据还是可以用的,能保持原有的特征,能让数据共享方获得的数据仍然可以用、可以处理、可以提取相应的特征价值,从而获得原有对数据的要求。
脱敏分为静态脱敏和动态脱敏。
静态脱敏往往是线下的、旁路的;动态脱敏往往是线上的、活的数据。
静态脱敏一般用在非生产环境,把数据批量离线做脱敏,把生产环境里结构化数据、非结构化数据进行脱敏之后,加载到非生产环境使用。用于开发测试等。动态脱敏是实时脱敏,一般应用环境是生产环境,访问敏感信息时再脱敏。根据场景、权限、角色不一样,对同一个敏感信息时有可能进行统一的屏蔽,也可能不同的屏蔽,根据场景操作。
此外,大家都在提数据水印,就是防止在数据的流转中泄密而找不到流失源头。
我们一直想实现的是一种透明水印,使用者看不到,但一旦泄密,可以通过水印逮到泄露者,这种灵感来源于“藏头诗”: 如果我发给你10000 行记录,在第一行某个地方写一个字,在其他行写一个字,用户对此是无感知的。
数据安全技术还会有这些趋势:
第一,隐私计算,我们经常有一些数据需要流动和外发,不可能把所有的数据进行脱敏,有些数据的脱敏程度不高的话,复原也不是难事。
数据隐私的保护手段,主要分为可信硬件和密码学两个流派。硬件方面主要是可信执行环境(Trusted Execution Environment,TEE),而密码学方面有同态加密(Homomorphic Encryption),安全多方计算(Multi-party Computation)和零知识证明(Zero-knowledge Proof, ZKP)。
TEE 可能会是个方向,但是 TEE 这条路大家也是刚开始走。基于硬件的方案也有问题,比如升级困难。当MPC,同态加密等有重大突破的时候,TEE 会退休。
第二,就是云化和大数据化,我们在这里也要做很多东西,未来的数据安全在云端。
第三,自适应安全架构。以一些安全策略为例,如果安全策略定得太宽松,没什么用,定得太细致则会干扰正常业务,所以我们要让策略根据情况调整。
第四,数据库加解密也是方向之一,数据库加解密一直是个业界难点。国内很多企事业单位用的加密算法是国外算法,在过保上可能会遇到一些问题,现在有国密算法,在安全可控的大背景下,数据库加解密支持国密算法大有可为,但国产替代会是一个比较长期的过程。
雷锋网年度评选—— 寻找19大行业的最佳AI落地实践
创立于2017年的「AI最佳掘金案例年度榜单」,是业内首个人工智能商业案例评选活动。雷锋网从商用维度出发,寻找人工智能在各个行业的最佳落地实践。
第三届评选已正式启动,关注微信公众号“雷锋网”,回复关键词“榜单”参与报名。详情可咨询微信号:xqxq_xq
。