阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

企业数据安全怎么建设?看看 OTA 巨头携程的具体实践

  • 2019-10-10
  • 本文字数:4220 字

    阅读完需:约 14 分钟

企业数据安全怎么建设?看看OTA巨头携程的具体实践

2014 年 3 月,在北京举行的一场大数据产业会议上,阿里巴巴创始人马云在主题演讲中说:“人类正从 IT 时代走向 DT 时代。”作为一个企业家,马云的“直觉”很准,他预见到未来是一个数据时代。确实,大数据今天已经深入人们生活和工作的方方面面。



数据,是这个时代的“石油”。


对许多企业来说,数据的价值越来越重要。在这个时代,企业传统的经营模式逐渐“落伍”,其节奏无法跟上外部快节奏的变化。想要生存?想要发展?企业应该考虑的是:我如何在这种不确定的复杂环境中生存下去,逐渐壮大。


虽然这里没有一个完整的答案,但有一条肯定是必选项:企业要懂数据、善用数据。


未来,或许每一家企业都是一个大数据公司。


既然数据很重要,那数据安全则是重中之重。简单说,数据安全是数据这座大厦的“根基”,根基不稳,大厦危矣,后果可能是“楼塌人亡”。


因此,对企业而言,数据安全建设是必要举措。但是,关于数据安全建设,我们却有很多疑问:


数据和数据安全是什么关系?在企业安全中,数据安全处于何种地位?企业数据安全的建设思路是什么?数据安全建设面临哪些常见难点?如何平衡数据安全建设和业务之间的关系?…


抱着一系列的疑问,InfoQ 记者采访了 OTA 巨头携程信息安全高级经理章锦成。今年 10 月,他将在QCon全球软件开发大会(上海站)2019分享题为《携程数据安全建设实践》的演讲。

企业数据安全建设思路:抓大放小,从源头切入

提起企业数据安全建设,很多人“不知所措”。在章锦成看来,数据安全建设就几个步骤:


第一,梳理数据和数据流转链路。即数据在哪里,有哪些人或系统可以接触到数据。


第二,根据数据链路上各节点的应用场景,分析可能存在的风险。主要从两个方向分析:一是合规性,是否符合监管要求、遵循用户隐私政策;二是防泄漏,是否存在直接或间接的数据风险。


第三,根据不同的场景及风险点,设计不同的解决方案。遵循最小化使用原则,控制数据的使用范围。不能控制的,做好监控审计,确保数据的使用在可监控、可审计的范围内。


第四,持续运营,不断优化安全方案。


这个思路在实际操作中,还需要掌握一些技巧。据章锦成介绍,携程体量大,每天都会产生海量数据。


2018 年,携程全年净营业收入为 310 亿元,集团总交易额(不包括天巡在内)达到 7250 亿元人民币(1050 亿美元),超过国际在线旅业巨头 Expedia 2018 年 GMV 1000 亿美金。因此,从规模上看,携程已经成为 OTA 行业的全球老大。



章锦成说,“如果不掌握好方法,光是数据梳理,就够我们抓瞎了(东北话,即乱着急,不知所措)。”


因此,总原则是“抓大放小”,从源头切入。首先,数据范围上,携程选择从手机号、证件号和邮箱这类用户敏感数据切入,从数据库这个“源头”开始梳理。


在风险治理上,优先解决问题概率高或风险危害高的风险点。


此外,“‘团结一切可以团结的力量’,补充安全资源的不足。方案设计上,能‘搭车’的尽量搭其他团队的‘车’。产品运营上,可以制定运营流程和操作规范,能下放的尽量下放,做好安全审计。”他补充说。

携程的数据安全建设实践

我们以携程为例,看看这家 OTA 行业巨头是怎么做的。


简单说,数据安全建设是围绕数据生命周期的各个环节设计解决方案。



数据生命周期,数据从产生,会经历采集、存储、建模、分析和变现五个阶段。


在存储方面,携程建立了一套数据分类分级制度和工具。在 DB 建表时,要求开发对各字段打上相应的密级和标签。


同时,章锦成称安全团队还设计了一套中心化敏感数据加解密系统。各业务线数据采集后涉及敏感数据,必须接入这套加解密系统,存储(数据)入库前必须加密。


并且,为确保各业务线严格遵守这个原则,他们还开发了一套敏感数据扫描系统,定期扫描数据库中的新数据。一旦发现明文,自动通知开发同学进行整改。


一旦数据加密入库,中心化加解密的好处就体现出来。


他说,“一方面,我们只要管控好数据的解密权限,就能轻松掌握数据的访问动向。另一方面,不管是应用系统的解密,还是人工解密,都需要经过安全的审批和授权,我们也就掌握到业务团队做安全需求的主动权。


据悉,他提到的“中心化敏感数据加解密系统”,系统开发上线 3 个月,实际落地 2 年多。


“我在做数据安全项目,产品开发、上线都比较顺利,难的是推动业务部门接入。”章锦成说。


一旦企业开始做数据安全建设,会发现有很多“坑”等着踩,这些“坑”包括:


1.有哪些重要数据,流经哪些系统,哪些员工可以获取到,没人讲得清楚;


2.数据太分散,业务需求各式各样,安全流程无法落地;


3.业务变化太快,历史问题没解决,新业务又要火速上线;


4.黑样本太少,安全策略如何制定,能否覆盖到实际安全问题;


5.业务部门太强势,安全项目偷工减料,达不到预期效果;


6.安全预算不够,要堵的窟窿太多,资源完全不够用。


在携程的数据安全建设中,章锦成坦承,“确实走过不少弯路,特别是一些大型数据安全项目的落地上。”


如何去解决这些问题?在他看来,可以分为三步:


第一,说服管理层,自上而下推动。章锦成指出,这种说服既可以通过自己公司已经发生的事件或业内同行的案例出发,也可以从监管合规的角度切入,陈述利害。


第二,安全方案的设计,一定要充分考虑用户体验(用户指接入安全方案的业务团队)。一方面,尽量简化接入步骤,以“Don‘t make me think"为原则,提供接入组件或 SDK。另一方面,多下基层,了解业务团队当前现状,安全要求不能定得太高。可以根据不同业务反馈的难易程度,由易到难,设置一、二、三期目标,让有资源的团队走得更远,没资源的团队不至于放弃治疗。


第三,项目推动前,明确项目验收标准,最好提供验收工具,让业务团队自行验证是否满足安全要求,降低过多的沟通成本。



让我们进一步来看看携程的数据安全架构。


章锦成说,“简单说,我们的数据安全架构是以敏感信息保护为中心,构建各类防护产品。”


首先,源头上给数据打上相应密级和标签,加密存储入库。集中控制敏感数据的解密权限,一方面制定策略和模型实时监控应用系统和人工数据解密异常,另一方面从解密节点切入,摸清明文数据的访问源头并理清其流转链路。


DB 层访问,通过 DB 日志审计的方式,实时监控涉敏 DB 的查询行为,及时发现其中的异常链接、异常 SQL、异常查询返回数等并进行干预。


应用层访问,通过流量镜像捕获其中涉敏 url 或 api,自动提交越权测试工具测试。同时,从 IP、设备指纹、目标 url、用户账号等维护制定不从策略,实时监控 API 遍历、员工违规查询等行为。


数据仓库层,通过提供针对敏感数据的维表方式,严格限制敏感数据解密,禁止明文数据落地,从根源上杜绝敏感数据泄露的可能性。


终端上,部署 DLP 产品,对数据外发行为进行实时监控和拦截。

企业数据安全建设的两个阶段

数据安全建设一:从 0 到 1

作为携程信息安全高级经理,章锦成有着 10 多年信息安全从业经验,主导了携程数据安全从 0 到 1 的建设。


从 0 到 1,最初或许来自一本书《Zero to One:Notes on Starups,or How to Build the Future》。人们谈“从 0 到 1”,将其视为一个从无到有,从 0 到 1 创造市场的过程。


如果放到数据安全建设上,从 0 到 1 同样对数据安全人员有着重要的启发。


在章锦成看来,公司需要思考为什么要成立数据安全团队,公司对数据安全防护的期望是什么。


对携程而言,最大的期望就是没有数据泄露,同时符合监管要求。


他说,“从 0 到 1 阶段,我们围绕数据放泄露展开。要完成这个目标,首先,要明确需要保护的数据范围,比如我们的重点是保护用户隐私和商业秘密这两类数据;其次,理清这些数据的采集源头,数据血缘,做好分类和标记;最后,根据不同场景制定不同安全方案,比如数据展示脱敏、数据存储加密、数据库操作审计和终端防泄漏等等。”

数据安全建设二:从 1 到 N

迈过从 0 到 1 的阶段,就进入从 1 到 N。


章锦成说,“从 1 到 N 的重点是精细化运营,不断迭代优化安全方案,提高防御的广度和深度。”


此外,最好让安全下沉到业务,拉着业务团队一起做数据安全。



以 UEBA 为例,携程也在做,也尝试过一些商业方案,收集许多业务日志和流量,怎么从这些数据中找出异常,怎么快速核实异常。


“比如,系统监控某位员工订单查询量高于历史基线,某台 PC 上登录多个账户等,经常出现我们觉得有异常的业务觉得挺正常,但业务觉得有问题,反倒没有通知出来。所以,我觉得在设计数据安全产品时,要考虑到产品的赋能能力,能支持业务团队自行运营。


UEBA,全称 User Entity Behavior Analytics,即用户实体行为分析。它诞生于 2014 年。Gartner 率先提出 UBA(用户行为分析)的概念,旨在应对日益增长的内部威胁。后来,实体(Entity)被引入 UBA,并逐步演进成 UEBA。


当然,他还提到容易被忽视的一点:安全文化建设,安全意识宣传和习惯养成。

如何平衡业务和数据安全建设的关系?

上文,我们以携程为例,探讨了企业数据安全建设的实践。不过,有些关键问题,我们需进一步探讨。


对互联网企业来说,数据是企业发展的一项重要无形资产。并且,数据分析、价值挖掘能力已经成为互联网企业的核心竞争力。


数据和数据安全是一个什么关系?在章锦成看来,数据安全的目的是为了确保数据能更安全地服务于企业,在利用数据满足业务需求的同时,规避可能存在的安全风险。


他表示,”我觉得数据和数据安全应当作为一个整体去看待,数据安全是围绕数据生命周期中采集、传输、存储、处理和销毁等各个环节展开安全防护,即数据安全建设贯穿于数据整个生命周期。“


不过,对企业而言,业务最优先。在他看来,做安全的目的是为了给业务提供安全保障,脱离业务谈安全是毫无意义的。


不过,他也坦承,“安全在一定程度上会影响效率。在安全和效率之间找到一个最佳平衡点是门艺术。”


只要业务在发展,资源必然不够。因此,原则还是“抓大放小”。


具体说来,首先,不管如何利用数据价值,必须严格遵守公司的数据安全红线,比如用户隐私政策。在安全红线内,可以让业务团队去量化忽略安全的收益有多大,安全团队可以计算忽略安全控制后出现安全问题的概率有多大。


另外,公司确定要做的安全项目,做的时候不要留坑,不要欠债。“实践证明,安全债的利息是非常高的。”他说。


最后,做安全的要多站在业务角度去考虑安全问题,方案尽量轻。思想上,不要把自己跟业务对立,尊重业务,业务部门一旦理解安全需求,它们有可能找到更合理、更高效的解决方案。


在 QCon 上海 2019 的演讲中,章锦成老师将详解携程数据安全相关技术方案和架构,带你了解携程是如何展开数据安全建设的,踩过哪些坑,如何规避,点此查看详情


2019-10-10 09:514105
用户头像
万佳 前InfoQ编辑

发布了 677 篇内容, 共 335.5 次阅读, 收获喜欢 1795 次。

关注

评论

发布
暂无评论
发现更多内容

ASM插桩--多线程运行监测,2021Android大厂面试经验分享

android 程序员 移动开发

SAP云平台运行环境Cloud Foundry和Neo的区别

Jerry Wang

云平台 SAP 11月日更

Android面试必问:Handler、Bitmap(1),kotlin数据库框架

android 程序员 移动开发

Android面试必问:Handler、Bitmap,android插件化开源

android 程序员 移动开发

Android高工面试(难度:四星(1),真的太香了

android 程序员 移动开发

Android高工面试:用Glide加载Gif导致的卡顿,说一下你的优化思路

android 程序员 移动开发

Android高工:细说 Android 多线程,探究原理知其所以然

android 程序员 移动开发

Android面试抱佛脚:进程间通讯学习,从Binder使用看起

android 程序员 移动开发

Android高工面试(难度:四星,Android开发三年月薪才12K

android 程序员 移动开发

英特尔与腾讯以全方位合作 开启云数智时代新征程

科技新消息

BATJ面霸:程序员可是要改变世界呀!阿里巴巴3面(1),flutter下载文件

android 程序员 移动开发

BATJ面霸:程序员可是要改变世界呀!阿里巴巴3面,移动客户端开发岗面试题

android 程序员 移动开发

Android面试题之Java基础篇,安卓rxjava使用

android 程序员 移动开发

【LeetCode】最长定差子序列Java题解

Albert

算法 LeetCode 11月日更

【设计模式】第十一篇 - 装饰模式 - 孙悟空的六神装

Brave

设计模式 装饰模式 11月日更

BAT常见Android面试20题详解,小白看完都会了

android 程序员 移动开发

Android面试必备!爆火超全的《Android性能优化全方面解析

android 程序员 移动开发

Android面试题之Listview篇,2021Android面试心得

android 程序员 移动开发

ARouter系列2:源码分析,移动端跨平台开发

android 程序员 移动开发

Android面试:来说一说Context吧,Android中的Context跟Java有什么区别

android 程序员 移动开发

Android题集四大组件之Content provider、BroadcastReceiver

android 程序员 移动开发

Android高速下载器实现思路——单个任务的提速与优化,flutter二维码扫描

android 程序员 移动开发

Android:手把手教你实现在XML中配置网易云歌手详情滑动效果

android 程序员 移动开发

AOP与OOP有什么区别,谈谈AOP的原理是什么,腾讯T2大牛亲自讲解

android 程序员 移动开发

Android:知道类加载过程面试还是卡壳?干货总结,安卓运行内存监控

android 程序员 移动开发

Android:这是一份全面&详细的-热修复-学习指南,含泪狂刷Android基础面试118题

android 程序员 移动开发

ARouter源码详解,androidjni开发流程

android 程序员 移动开发

BindService的生命周期分析【我读源码你不读,我吃螃蟹你吃土(1)

android 程序员 移动开发

RabbitMQ详解——RabbitMQ服务端执行逻辑(三)

BeyondLife

RabbitMQ 服务端执行逻辑

Android:2021大厂直通车面试宝典,为你的offer保驾护航

android 程序员 移动开发

Android:这是一份全面&详细的-热修复-学习指南(1),统统给你解决

android 程序员 移动开发

企业数据安全怎么建设?看看OTA巨头携程的具体实践_安全_万佳_InfoQ精选文章