石墨文档是如何保证数据的安全的?

一.数据安全

作为一款云端 Office 产品,企业往往会将生产数据等内部资料存储在石墨文档上,因此数据安全尤为重要。本篇将介绍企业的生产数据、资料隐私和信息安全是如何在石墨文档上得到保障的。

1.文件内容加密

存储在石墨文档的所有文件都经过加密处理。对于每一个文件的初始内容以及后续所有的实时更新记录,石墨文档都会使用基于 KMS 的信封加密算法处理后落盘,

KMS 即密钥管理服务,是一套完善且符合(NIST) 800-57 建议的密码安全基础设施。KMS 使用通过(FIPS) 140-2 标准验证的安全模块,借助实施逻辑和物理安全控制来防止未经授权的访问,所有的密钥都会经过行业标准的 256 位强加密算法进行加密。这套底层加密体系符合如下标准:

  • CSA STAR
  • PCI DSS
  • C5 KRY-03
  • 《信息系统安全等级保护基本要求 GB/T 22239-2008(送审稿)》中第四级中“8.1.3.7 镜像和快照”和“8.1.4.5 数据保密性“的安全要求

基于 KMS,石墨文档通过信封加密来保证应用服务器磁盘和 KMS 均无法单方面获取文件原文。加密一个文件的流程首先是由应用模块向 KMS 请求为该文件生成一个随机 AES 256 密钥,KMS 会返回一个明文密钥和一个密文密钥。应用模块使用明文密钥加密该文件,并将加密后的文件内容和密文密钥落盘存储。如图 1 所示:

image.png

解密一个文件时,应用模块先从磁盘读取密文文件和密文密钥,然后通过 KMS 解密成明文密钥,最后使用明文密钥对密文文件解密。如图 2 所示:

image.png

2.数据可靠性保障

所有加密后的文件数据都会存储到物理磁盘上,每一个文件都会进行最低三副本存储,保证拥有多重冗余。整个文件数据底层存储引擎的可靠性指标为行业数据存储的顶级水平 99.999999999%(系统上文件损坏概率约为 2017 年单期双色球中头等奖概率的一百二十分之一,在工业领域欧美企业会使用同样可靠性的系统存放核心数据),确保企业的文件落盘后不会损失。

3.传输层加密

石墨文档的所有数据传输(包括文件编写与协作、首页、文件列表、移动客户 端、桌面客户端等)都通过 TLS/SSL 协议传输。以此可确保企业在石墨文档上的任何信息资料的双向传输在链路上都是高强度加密传输的,是不可能被第三方非法篡改和窃取的。同时 HTTPS 证书保证了企业访问石墨文档时不会被中间人污染。

 

相比于没有采用 TLS/SSL 技术的服务,石墨文档确保了企业数据在传输过程中的安全性。更进一步地,石墨文档启用了 HSTS1 技术,而且 SaaS 企业版的主域名 shimo.im 从 2017 年 10 月 3 日起已经被内置在了 Chrome, Firefox, Opera,Safari,IE(11 及以上)和 Edge 浏览器中,保证企业访问该域名时会直接访问 HTTPS 服务,避免降级攻击的可能。

 

石墨文档使用的传输技术在全球知名的 HTTPS 检测网站 Qualys 中拿到了最高的 A+成绩 2,如图 4 所示:

image.png

4.Robots 协议

Robots 协议(也称为爬虫协议、机器人协议等)的全称是“网络爬虫排除标准”(Robots Exclusion Protocol),网站通过 Robots 协议告诉搜索引擎哪些页面可以抓取,哪些页面不能抓取。

石墨文档通过 Robots 协议限制了浏览器对网站上所有公开文件资料的抓取,即使企业在石墨文档上将文件设置为「公开可见」,搜索引擎也不会将这些文件收录。保证了当企业取消对文件的公开分享时,这些文件的内容能够立即在全网不可见。

image.png

image.png

5.账号敏感信息处理

所有的账号密码都会经过专业散列处理后存储在数据库中,即使是石墨文档内部工作人员也无法查看和破解这些数据。每个账号均采用不同的 Salt 参与到散列运算中,有效防止彩虹表等类似攻击手段。

二.系统网络安全

石墨文档的系统网络安全架构基于亚洲领先的云计算服务商阿里云构建,所有的服务均处于多层防火墙的保护之下,保证数据安全。

1.DDoS 防护

石墨文档通过阿里云的云盾产品实现对 DDoS 的防护,可以自动防御一定流量的攻击。此外对于大流量的攻击,石墨文档有人员安排和技术手段两方面的应急预案, 保证服务的高可用性。

2.冗余计算资源

在关键计算资源上,石墨文档使用 Serverless 技术保证计算资源的充分。目前在协作计算上保持 60%的冗余资源。冗余的计算资源支持实时扩容,通过智能调度云计算资源实现弹性伸缩,防止恶意访问或者计算对网站的性能产生影响。

3.多可用区设计

石墨文档的服务分布在同城的三个可用区中,部分服务分布在四个至五个可用区中。每个可用区的网络和电力资源都是完全独立的,保证当单个可用区出现问题时余下的可用区能够继续提供服务。所有数据相关服务都做了合理的规划,避免单点故障。

三.运维安全

石墨文档非常注重运维安全,并一直在不断审视和优化运维工作流程。目前对资料和服务器的权限控制以及完善的应急制度使得石墨文档能够在运维层面保障企业用户的安全。

1.资料权限控制

企业版所有的数据采用分级制度管理,对企业的所有资料都进行严格的权限控 制,保证数据的安全和隐私。只当必要时候,石墨文档的员工会按照流程通过完善的内部工具帮助用户解决诸如无法收到邮箱验证码等问题,期间企业的所有资料都无法被内部员工接触到。

 

石墨文档采用的底层服务对于所有数据访问操作都有操作日志,可以精确到时间(毫秒)、IP 地址和子用户。提供相应报警机制,对于异地登录、敏感数据异常访问等情况都能进行实时报警。

2.服务器权限控制

石墨文档所有线上服务器和 QA 服务器均做了端口和来源 IP 的白名单,线上服务器使用了阿里云的 SLB 实现外网与内部环境的隔离和安全限制。

 

石墨文档员工需要登录内部服务器时,都必须通过堡垒机进行。石墨文档采用的堡垒机通过正向代理实现运维身份鉴别、账号管控、操作审计等功能。堡垒机使用高强度加密算法保障运维通道数据传输的机密性和完整性,整个过程满足如下法规要 求:

  • 《等级保护》系列文件中的技术审计要求
  • 金融监管部门系列文件中的技术审计要求
  • 《ISO27000》系列文件中的技术审计要求

 

3.应急制度

石墨文档有专门的「危机应对小组」,该组由各个组的核心负责人组成。运维部门 7X24 小时随时响应系统报警,对任何故障进行快速处理。应急预案包括了从收到报警、故障等级判定、事故处理、公告发布、信息同步到客户反馈等一整套详细的处理过程。

 

与此同时,研发内部会定期进行灾难演练。如对特定服务进行故障模拟,观察故障后其他关联服务是否会受到影响,以及影响范围。

4.办公室网络隔离

为了提升数据安全性,石墨文档的内部系统部署在办公室网络之外,统一通过堡垒机对数据进行访问管控。进一步地,办公室本身启用了访客网络,保证访客网络和内部员工网络的隔离。