专栏首页安全乐观主义浅谈块存储的安全配置

浅谈块存储的安全配置

介绍

我们已经多次关注亚马逊S3、阿里云oss这类对象存储的安全性问题,比如Bucket的权限管理,上传文件的xss问题、AK\SK的保护。如果说对象存储Object Storage Service像云盘,而本文所说的块存储Block Storage是类似于机械硬盘、固态硬盘的“云硬盘”。亚马逊方面在Elastic Compute Cloud (EC2)的实例的持久块存储称为Elastic Block Storage。阿里云EBS是指为ECS云服务器提供的块设备,高性能、低时延,满足随机读写,可以像使用物理硬盘一样格式化、创建文件系统,可用于云硬盘、快照、模板。在底层所承载的分布式存储系统是盘古系统,技术实现类似于HDFS,分为Master、Client、Chunk Server,基本的产品矩阵如下:

在设计之初,主要关注的安全特性为:

  • 存储空间由很多chunk(数据块)组成,分布式存储的方式使得某处chunk被窃取,也不会发生数据安全问题;
  • 底层数据每个chunk通过三副本存储在集群中的不同节点上,保证数据可用性;
  • 为了满足云中静态数据加密的安全性和加密合规性要求,支持对于传输的和保存、启动的数据以行业通用的AES-256算法利用KMS服务的数据密钥加密,并在读取数据时自动解密;
  • 在传输过程中,使用 SSL 或 TLS 对数据进行加密;
  • 支持定期对 EBS 卷做快照,

Amazon EBS做得好的一点是可以对启动卷默认也加密。

安全

今年DEF Con来自Bishop Fox的高级安全分析师Ben Morris显示了公共EBS卷可能公开未加密公共暴露给外部客户,通过任意加载快照即可暴露磁盘内容,有点像本地C盘开启了共享,然后被攻击者以net use的方式挂载磁盘一样泄露安全信息。

很难界定是安全问题还是功能,只能说是客户不安全的配置,并非是云计算公司的问题。在亚马逊官网的最佳实践介绍中已经说明

By modifying the permissions of a snapshot, you can share it with the AWS accounts that you specify. Users that you have authorized can use the snapshots you share as the basis for creating their own EBS volumes, while your original snapshot remains unaffected. If you choose, you can make your unencrypted snapshots available publicly to all AWS users. You can't make your encrypted snapshots available publicly.

对此事也发出声明:“Amazon EBS快照默认情况下是安全的。客户可以控制快照是否设置为公共。已经通知所有无意间配置Amazon EBS快为公共访问的所有客户进行脱机处理。与往常一样,AWS建议客户在修改默认共享权限或将其公开之前查看快照中包含的数据。客户还可以配置其帐户以在其EBS快照和卷上默认强制加密。通过采用此设置,所有新EBS卷在发布时都会被加密,现有的未加密快照副本也是如此。“

问:如何发现已与我共享的 Amazon EBS 快照?

从 AWS 管理控制台“快照”部分的列表中选择“私有快照”,即可找到已与您共享的快照。本部分列出了您拥有的快照和与您共享的快照。

问:如何了解哪些 Amazon EBS 快照是全局共享的?

从 AWS 管理控制台“快照”部分的列表中选择“公有快照”,即可找到全局共享的快照。

这个快照功能类似于操作系统共有镜像功能,市场中共享镜像就是ECS实例系统盘某一时刻的快照,这个安全问题只是数据盘里可能有敏感信息而已。

笔者实践使用这样的命令可以自助审计

aws ec2 describe-snapshot-attribute    --region us-east-1    --snapshot-id snap-0ee33391e721cfe2f    --attribute createVolumePermission    --query 'CreateVolumePermissions[]'

当国外已经出现安全漏洞时,国内可能还没有实现这类功能….腾讯云CBS(云硬盘),百度云的CDS(云磁盘),华为云的EVS都没有存储快照功能,而阿里云类似的共享块存储功能仍处于内部测试中,但是可以翻看API手册方便预测此类安全威胁。

例如,通过github获取某子账户的ak和secret,

使用cli接口调用api查询./aliyun ecs DescribeDisks --RegionId cn-beijing --EnableShared true,

获取到目标DiskId后,执行匹配目标主机的命令:aliyun ecs AttachDisk --RegionId default --InstanceId InstanceId --DiskId DiskId即可绑定实例挂载云盘,当然该磁盘的状态必须为待挂载(Available)。

本文分享自微信公众号 - 安全乐观主义(gh_d6239d0bb816),作者:Ramos

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-08-12

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 超硬核!使用图数据技术发现软件漏洞

    图数据库和图计算介绍痛点和机会基于图数据库的代码分析详细介绍show me the code分析命令执行漏洞优点直观展示漏洞的利用路径通用开源的搭建能力兼容现有...

    Ramos
  • 可信计算和可信赖计算的渊源

    看到业界在谈论可信计算时,将任何微软做的事情都称为可信计算,其实这里面发展过程很复杂,历史的交叉结合翻译的错误颇有故事,微软做的一些事情和可信计算既有区...

    Ramos
  • 使用方舟编译器检查Fastjson OOM问题

    通过介入编译期间进行安全检查是类似于Facebook infer类的产品,为什么要这么做呢?源代码安全检查工具粗略分为两个大的流派,一个是类似于cover...

    Ramos
  • 数据备份 快照技术 之第一次写时复制(COW)和写时重定向(ROW)

    创建快照以后,如果源卷的数据发生了变化,那么快照系统会首先将原始数据拷贝到快照卷上对应的数据块中,然后再对源卷进行改写。

    种花家的奋斗兔
  • Elastic Cloud Enterprise的快照管理

    3月23号,Elastic又发布了最新的7.12版本。在这个版本中,最重要的一个更新是frozen tier的发布。相比于之前版本的cold tier(关于co...

    点火三周
  • 快照是什么?揭秘存储快照的实现

    存储网络行业协会SNIA(StorageNetworking Industry Association)快照的定义:关于指定数据集合的一个完全可用拷贝,该拷贝包...

    BH8ANK
  • Kubernetes 1.17 特性:Kubernetes卷快照移至Beta版

    Kubernetes 卷快照功能现在Kubernetes v1.17中处于beta版。它在Kubernetes v1.12中作为Alpha引入,在Kuberne...

    灵雀云
  • 创建快照操作文档

    前言:快照是腾讯云提供的一种数据备份方式,通过在指定时间点对指定云硬盘进行完全可用的拷贝,使该备份独立于云硬盘的生命周期。在某些变更导致数据错误或数据丢失时,可...

    cdc
  • Stream 分布式数据流的轻量级异步快照

    分布式有状态流处理支持在云中部署和执行大规模连续计算,主要针对低延迟和高吞吐量。这种模式的一个最根本的挑战就是在可能的失败情况下提供处理保证。现有方法依赖于可用...

    smartsi
  • 云快照的2种存储机制

    云计算是庞大的IT技术的结合,例如我们经常在云主机ECS中使用的快照功能,仔细研究起来,每一个功能实现都沉淀着“攻城狮的智慧”。今天我们来看一下云快照的两种不同...

    希望的田野

扫码关注云+社区

领取腾讯云代金券