1 概述
近年来,伴随着企业上云的步伐不断加快,云上业务与数据随之增多,同时云上风险和安全事件也层出不穷。对象存储作为云原生的一项重要功能,同样面临着一系列安全挑战。在对象存储所导致的安全问题中,绝大部分是由于用户错误的配置导致的。云上服务资产数量巨大、类型众多,不同服务及资产暴露的攻击面均不相同,安全态势复杂,尽管对象存储服务等公有云服务在配置界面已经设置了多种提示和警告措施,云上数据泄露事件依然每年都在发生,而云上数据可能泄漏的敏感信息多种多样。近年来的安全事件泄漏信息包括:用户信息, 公司内部信息、数据库等各种配置信息,系统构建源码,git仓库信息、平台账号、密码、密钥、证书、隐私数据等。
对象存储服务重大泄漏事件回顾:
1.2022年微软数据泄漏事件, 披露的泄露数据包括执行证明(PoE)、工作说明文档、发票、产品订单 / 报价、项目详情、已签署的客户文件、POC工程、客户电子邮件、客户产品价目表和客户库存、客户内部意见、营销策略、客户资产文档以及合作伙伴生态系统详细信息等。
2.丰田于2017年将其“T-Connect”应用程序的源代码发布在软件开发平台GitHub上后,数据发生泄露。然而,丰田直到近五年后才意识到源代码是公开的。丰田更改了访问代码,但该漏洞暴露了30万客户的电子邮件。
由上面两起泄漏事件来看,数据泄漏绝不是小事,“大厂”依然中招,让我们一起来通过测绘数据来看看云存储的风险情况。
2 云存储风险分析
2.1 存储桶概述
存储桶是对象的载体,可理解为存放对象的“容器”,对象以扁平化结构存放在存储桶中,无文件夹和目录的概念,用户可选择将对象存放到单个或多个存储桶中。由于存储桶具有扩展性高、存储速度快、访问权限可自由配置等优势, 如今已纳入各大公有云厂商的关键基础设施,例如 Amazon 的 S3、Microsoft 的 Blob、阿里云的 OSS、腾讯云的 COS 等。
2.2 存储桶访问测试
2.2.1 S3存储桶访问方式
Amazon作为全球最大的公有云厂商之一,其所提供的S3存储桶服务正在被许多租户所使用。S3存储桶的一种访问域名形式为https://.s3..amazonaws.com/, 在这种域名形式下,变量主要有两个,分别为存储桶名bucket-name,存储桶所在区域region;注意:s3默认必须加区域,某些区域才能不加region-code。如下图所示:
2.2.2 S3存储桶访问方式
根据S3全局端点存储桶域名特征包含‘s3.amazonaws.com’在X情报社区-资产测绘检索,资产示例如下图所示:
存储桶地址访问示例: http://softxxxx.s3.amazonaws.com,返回页面如下图所示:
可公开访问的存储桶可以获取以下信息:存储桶名称、存储桶中所有资源路径、存储桶信息更新时间、存储桶资源md5 hash值。
测试资源下载:存储桶地址 + 资源路径。
成功下载:
这意味着,只要在浏览器中输入了正确的URL,世界上任何人都可以访问这些数据。
2.3 存储桶访问常见返回页面
a. 访问权限受限,不可公开访问:
b. 存储桶目前不存在:
c. 可公开访问:
根据可公开访问存储桶页面特征,我们可以在X情报社区-资产测绘检索出全网可公开访问的存储桶;根据X情报社区-资产测绘数据统计近一年存储桶总数约784万,其中可公开访问存储桶约为24万,即可公开访问存储桶约占测绘中存储桶总量的3%。
2.4 厂商特征与资产占比统计表
2.4.1 各大厂商返回的header头特征示例:
2.4.2根据各厂商特征,X情报社区-资产测绘统计了各厂商未授权资产占比统计表:
存储桶资产国家分布统计表:
根据统计结果,s3存储桶使用量是最多的,也意味着它可公开访问的存储桶也是最多的;其次是国内的阿里、腾讯、华为等公司的云服务在市场占比靠前;存储桶资产量最多的国家分别是美国、中国与日本。
2.5 小结
根据S3存储桶访问实验,我们可知一旦存储桶配置了可公开访问,这意味着,只要在浏览器中输入了正确的URL,世界上任何人都可以访问这些数据;如果由于配置错误,公开了本应该受保护的资源,对于个人或企业来说数据泄露的发生已经临近。
CSOP 2023
网络安全领域最具专业性的年度盛会之一 CSOP 2023 网络安全运营与实战大会将于6月8日在深圳继续,安全负责人和CISO不能错过~
长按识别下方二维码即可报名:
3 各厂商存储桶访问权限测试
3.1 阿里云
据统计,阿里云存储桶资产数最近一年约55W,主要分布在中国,集中我国发达城市,北京、浙江、广东、香港、上海等省市存储桶资产总数排名居前。
OSS存储桶服务域名构成规则如下图所示:
oss存储桶资产示例:
通过ip可以成功访问,页面泄漏了存储桶名称:
根据阿里云存储桶域名构造文档,已知存储桶名称和地理位置,构造访问域名: http://yxxxxxan.oss-cn-beijing.aliyuncs.com, 如图所示,无权限访问;
如图所示,直接根据域名是无法访问的,存储桶域名访问是有权限控制,不能公开访问; 域名解析的ip只是cdn服务的ip地址,与数据真正所在设备ip并不相同。
3.2 腾讯云
据统计,腾讯云存储桶资产数最近一年约100W,主要分布在中国,国内以山东、天津、河南、山西、江苏存储桶资产总数排名居前。
cos存储桶服务域名构成规则如下图所示:
cos存储桶资产示例:
通过ip可以成功访问,页面泄漏了存储桶名称:
根据腾讯云存储桶文档,我们根据存储桶名称以及地理位置构造访问域名https://asp-12xxxxx22.cos.ap-shanghai.myqcloud.com,无权限访问;
如图所示,直接根据域名是无法访问的,存储桶域名访问是有权限控制,不能公开访问; 域名解析的ip只是cdn服务的ip地址,与数据真正所在设备ip并不相同。
3.3 谷歌云
据统计,谷歌云存储桶资产数最近一年约3W,资产主要集中在美国,中国则是以香港,台湾等省市排名居前。
谷歌云存储桶域名访问文档示例:
谷歌存储桶资产示例:
通过ip可以成功访问,页面泄漏了存储桶名称:
根据谷歌存储桶域名访问文档,存储桶地址没有区域之分,已知存储桶名称,构造域名: http://storage.googleapis.com/存储桶名称 或 http://存储桶名称.storage.googleapis.com/,可正常访问:
谷歌云存储桶通过ip或域名访问用的是同步的访问策略,ip可访问的使用域名也可访问;通过存储桶的内容我们即可知道为同一个存储桶资源。
3.4 小结
根据上述存储桶访问权限测试,当通过厂商给出的存储桶域名构造条件构造访问域名时候,未设置公开访问的存储桶是无法通过域名访问到资源的,起到了保护存储桶信息的作用;但可以通过存储桶ip直接访问存储桶资源,本质上等于存储桶仍旧处于暴露状态;根据X情报社区-资产测绘统计, 可直接通过ip访问存储桶资源占比所有可公开访问存储桶资源的10%。
4 存储桶敏感信息发现
4.1 存储桶数据类型统计
根据泄漏文件分类,我们统计了可公开访问存储桶的资源类型统计表,如下图所示:
数据类型 |
文件后缀名 |
备注 |
图片 |
jpg、png、jpeg、svg、bmp、gif、tif |
网站icon图标、图片静态资源 |
前端文件 |
js、html、htm、css、xml |
html,css, js等文件 |
媒体 |
mp3、mp4、frg、mov、flv、swf、wmv |
音视频,用户上传或企业宣传物料 |
文档 |
xlsx、csv、txt、json、log、pdf、ppt、doc、docx |
企业平台使用文档、各类文件模版、 配置文件、统计表格、日志文件、客户端 |
可执行文件 |
exe、bat、apk、cmd、bat、bin、app、dmg、jar |
可执行程序、安装包 |
其他 |
— |
其他类型文件 |
4.2 数据泄漏案例分享:
CSV文件泄漏了某次网课学生网络信息:
图片资源泄漏个人信息:
Excel文件泄漏个人手机号、邮箱等信息:
4.3 小结
泄露信息分类
公司相关:员工信息、公司运营数据、合同信息、发票信息、内部报告等
用户信息:身份证信息、手机号、邮箱、住址、ip、用户名等
根据分析各厂商未授权的存储桶信息来看,主要存储了图片,网站静态资源、音频、视频、文档、压缩包、安装包等类型数据;根据泄漏信息来看,泄漏信息数据主要来自于文档信息,大部分来自于文件后缀为xlsx、csv文件,允许下载系统备份、源代码等的存储桶这对这家泄密的公司来说是一个关键风险,利用源码攻击者可以找到系统漏洞,实施攻击。即使是可供下载的日志文件也可能会显示用户名、密码、数据库查询等信息。根据上述案例我们可以发现,信息泄漏仍在发生,正确的权限配置与定时检查是防止信息泄漏的必要手段。
5 存储桶恶意文件发现
存储桶存储的文件资源多种多样,除了观察泄漏信息之外,我们进一步留意了存储桶中出现的恶意文件,根据恶意文件特征从测绘数据中筛选出来一批存储桶,对存储桶内的恶意文件行为特征进一步分析并关联到了一批恶意文件。
5.1 恶意文件行为特征检索
存储桶中的恶意文件示例:
通过微步云沙箱进一步确认,判定文件确实存在恶意行为,如图所示:
5.2 恶意文件关联
通过对存储桶恶意文件进行排查,我们发现某些样本存在于多个存储桶之中:
根据样本内容我们可以看出这是一个后门文件,如图所示:
通过微步云沙箱对样本进一步检测,结果如图所示:
此批存储桶中还存在另外一个可疑文件,该恶意文件可以下载文件并修改了权限,调用后台执行,如图所示:
通过微步云沙箱对样本进一步检测,我们可以看到文件的恶意行为,结果如图所示:
关联到的几个样本同时出现在一批存储桶之中,而通过对存储桶的资源进行分析,存储桶是某些公司网站用来存储网站静态资源的,推测由于存储桶权限问题,导致存储桶可以被公开读写,一旦攻击者上传了后门,即可在网站形成webshell, 通过webshell进一步控制主机,甚至在内部横移控制更多设备,根据存储桶被非法写入的文件,相关公司应该或多或少已经出现主机失陷。
5.3 小结
后门文件出现在多个存储桶之中,部分存储桶因为设置公开读写,攻击者可以在存储桶中存储的Web应用代码内安插后门代码或后门文件,并触发代码自动化部署服务将后门部署至服务器以完成持久化操作。这些存储着恶意后门将会持久的存在于Web应用代码中,当服务器代码迁移时,这些后门也将随着迁移到新的服务器上部署。
6 存储桶风险分析总结
近年来,世界各国都陆续开始重视数据及隐私安全。欧盟推出了通用数据保护条例(GDPR),我国《中华人民共和国数据安全法》也于2021年6月10日通过。在全球信息化程度不断加深的当下,每个人都必须重视数据安全。对于互联网服务的提供者来说,如何合法合规地提供数据相关服务,已经是生产过程中不容忽视的问题;对于互联网服务的使用者来说,如何确保自己的个人数据安全、不被恶意使用,同样是一个愈加复杂但重要的事情。而存储桶数据泄露事件主要是人为错误配置导致的。而从最后我们发现的敏感信息来看,访问权限的错误配置导致的数据泄露问题如今仍在时刻发生着。针对存储桶数据泄露的防护策略可从两个方向入手,一方面需要加强存储桶运维人员的安全意识,从源头上避免访问权限错误配置的情况发生,另一方面则需要有效的数据安全评估工具,当存储桶有数据泄露的情况发生时,可以进行及时地发现并锁定敏感信息。
参考链接
https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/userguide/VirtualHosting.html#virtual-hosted-style-access
https://help.aliyun.com/document_detail/31837.html
https://www.tencentcloud.com/zh/document/product/436/6224
https://cloud.google.com/storage/docs/buckets?hl=zh-cn
声明:本文来自微步在线研究响应中心,版权归作者所有。文章内容仅代表作者独立观点,不代表士冗科技立场,转载目的在于传递更多信息。如有侵权,请联系 service@expshell.com。