AWS 安全信息泄露-----21天烧了27万
安全问题一直都是个老生常谈的话题,对于我们做IT的来说,是更为重视的。从使用开发工具的是否授权合规,到从事的工作内容是否合法。我们都应该认真的思考一下这些问题,毕竟我们要靠IT这门手艺吃饭。
2021年7月,对我来说差点成了我一生的梦魇挥之不去。我的个人的AWS账号的IAM User 子账号(以下就简称A账号)的安全信息泄露,导致从7月7号到7月30号烧掉了约4.3万美元,折合人民币27.8万。

2020年5月,我注册了AWS的个人账号用于学习,平时的话经常使用ECS,EC2,Lambda等服务做一些简单的测试Demo,所以我的重点就一直在学习AWS 技术,没有想着按照公司基本的信息安全防护,比如开启MFA,定期轮换 AWS 账户密码等策略。
对于AWS 的学习计划,我的博客中也可以体现出来,之前也分享过跨账号资源访问权限,以及使用Azure DevOps 部署AWS ECS Service 等文章。对于每月的学习,分享计划,我自己也自始自终尽量控制每月的服务花费。2020年开账号到年底几个月基本控制在每月20美元以内,2021年这几个月基本上每月不超过5美元。
事情的开端
21年的3月那会儿,刚好有同事为了和我一次测试 aws 服务,由于公司的 aws 账号申请流程繁琐且慢,所以我的自作主张的给同事开了 AWS IAM 账号在我个人的 AWS 账号做测试,完事后也完全疏忽删除这个A账号。此时的aws账单也正常。

21年的6月有发现这个子账号在登陆我的AWS,又自认为是同事只是误操作登陆,所以又疏忽没有删除这个账号。这两月的 aws 账单也是正常

噩梦的开始
每个月月底的时候,我都会下意识的看看aws 的账单,结果可怕的时候就发生了。7月29号下午,登陆到AWS 控制台查账单的时候,发现数额巨大的3.68万美元看的我瞬间整个人都不好了,“难道是我忘记关闭ECS了”,“难道是我开了RDS忘记删了“,在无数个自我找原因的同时,我急忙查看这巨额费用是怎么产生的。从7月7号 下午13点开始几乎所有的区域都分别开了2台规格为 ”p3.2xlarge“ 的EC2。

我慌了,赶紧删这些资源,脑子里面想到的第一件事情就是”我的账号被盗了“,停完这些服务已经29号下午4点40多了。此时我的心思完全不在工作上,急忙联系aws 技术支持说我的 ”access_key被黑客盗用“ 了,黑客开了好多EC2 服务,我自己没有及时检查,是否可以退还这笔费用。

那天也着急回去,并且想跟踪 aws 的技术支持回复的问题,想弄清到底出了什么问题,包括这笔快4万美元的费用怎么处理。这个时候我有个很大的疑问 ”Access_key“ 是怎么泄露的?
噩梦依旧持续
29号下午7点40左右到家,赶紧登陆到AWS 控制台,看到aws 的技术支持并没有回复我的这些问题。我就先联系aws 绑定的信用卡的客服中心,并说明情况,能否先冻结信用卡。(不是恶意逃费,而是折合人民币20多万对我个人来说不是一笔小数目,并且我一年都赚不到20多万),信用卡中心回复这个牵扯到境外的免密,让我先冻结信用卡,并继续联系 aws 沟通此情况。
29号晚上10点再次登陆 aws 控制台,并查看这笔巨额账单的时候,发现有莫名奇妙的在好多个区域创建了同规格的”p3.2xlarge“ 的EC2。我震惊了,不是都删了吗,怎么又出现了。于是又紧急删这些非法创建的资源,同时发现A账号有登陆的痕迹,于是赶紧打电话给 pm 情况,让她帮忙问问情况。同时我也删除了A账号的权限。并在 CloudTrail 中查看相关日志。
7月07 13:08,A账号登陆创建大量规格为 ”p3.2xlarge“ 的EC2
7月29 18:41,A账号登陆到AWS控制台
7月29 18:51,A账号通过某种方式又创建了大量规则为 ”p3.2xlarge“ 的EC2
7月29 22:26,紧急删除了A账号的权限
7月30 02:08,A账号再次登陆到AWS控制台
登陆痕迹

创建资源痕迹

出现这一系类问题,我急忙联系那位同事,并且得知他就自从3月和我一起测试完需要验证的服务后,就再也没有登陆过。且没有任何人知道A账号的登陆信息。挂完电话后,短暂通过110报警后,就奔赴当地的派出所现场沟通报案。对话内容就暂时不透露了。
从派出所回来,想着民警告知的先通知银行挂失,将绑定到 aws 上所有的银行卡/信用卡都解绑,先止损。在联系aws 调查此事。但问题在于账单金额每分钟都在上涨。因为短短的4个小时,账单金额增长了4000多美金,我不确定什么时候金额才能停下来?我有些不知道接下来我应该做点什么,即使我关闭了所有的服务,这个账单的费用依旧在增长..........
前路如何,不得而知
7月30号早上6点,经历了前一晚的初步判断调查,我把 aws cloudtrail 中的日志逐步进行筛选分析,得出并不是aws root 账号信息泄露,也不是 access_key 泄露。就是因为这系列看似正常的操作才导致悲剧的发生。A账号信息是怎么泄露的,一直是个谜。
7月30号7点左右的时候,我第三次给招商银行信用卡中心打电话再次确认,这笔暂时还没有扣款的巨额费用在我注销卡之后是否会扣款成功,听到他们那边很肯定的回复,我心里暂时松了一口气,我知道接下来我需要证明得是我不是恶意注销卡,不付款的。而是在警方,和银行的建议下先行注销,即使止损,同时发邮件这些信息告知 aws 的技术支持。

7月30号9点左右,项目pm先行我一步去了公司所在区域的分局报警,希望网警能介入调查此事..........
7月30号12点左右,回到家里后,看到aws 回复告知,他们很重视这次信息安全时间,会将我的账号冻结24小时,判断是否要进行下一步操作,同时审计部门也会介入进来核算账单。
.............
其实写道这里,我暂时写不下去了,因为后面就牵扯太多的个人,公司,aws 的太多信息。此时此刻,我自己有对安全不重视的自我匹配,也更多的是愤怒。登陆的安全信息不管是从公司泄露出去,还是其他方式被黑客攻击,都不是我想看到了。不管是内部人员干的,还是外部人员干的,我真的有些失望了。人心太可怕了。
言谈外传
对于这次的安全信息被盗用,我承认有我的问题,但在没有任何邮件通知的情况下,产生4.3 万美元的巨额账单,这正常吗?
我统计了历史账单,2020年5月到2020年12月,基本上每月都可以保证到不超20美元。2021年1月到2021年6月,基本上每月都不超4美元,我真的特别想反问一句aws,根据意识账单的消费情况,是否有风控监管部门?是否有很人性化的提醒?对我来说,这样的事情发生一次就够了。
这段经历确实给我造成了很严重的困扰,作为一个不合格的云开发人员,真的很失败。但这不会打乱我的整个学习。我想通过这件事告诉大家,信息安全问题真的不容无视,云信息安全真的更为重要。
AWS 安全信息泄露-----21天烧了27万的更多相关文章
- 互联网安全的必要性:CSDN用户信息泄露案告破
本报讯 昨天,记者从北京警方获悉,历时40多天的侦查,轰动互联网的“CSDN网站用户信息泄露案”告破,涉案嫌疑人已被刑拘.由于保密措施不力,北京警方还向CSDN网站开出我国落实信息安全等级保护制度以来 ...
- WordPress Backdoor未授权访问漏洞和信息泄露漏洞
漏洞名称: WordPress Backdoor未授权访问漏洞和信息泄露漏洞 CNNVD编号: CNNVD-201312-497 发布时间: 2013-12-27 更新时间: 2013-12-27 危 ...
- Linux kernel 内存泄露本地信息泄露漏洞
漏洞名称: Linux kernel 内存泄露本地信息泄露漏洞 CNNVD编号: CNNVD-201311-467 发布时间: 2013-12-06 更新时间: 2013-12-06 危害等级: ...
- Linux Kernel ‘/net/socket.c’本地信息泄露漏洞
漏洞名称: Linux Kernel ‘/net/socket.c’本地信息泄露漏洞 CNNVD编号: CNNVD-201312-037 发布时间: 2013-12-04 更新时间: 2013-12- ...
- Linux Kernel ‘mp_get_count()’函数本地信息泄露漏洞
漏洞名称: Linux Kernel ‘mp_get_count()’函数本地信息泄露漏洞 CNNVD编号: CNNVD-201311-054 发布时间: 2013-11-06 更新时间: 2013- ...
- Linux Kernel ‘/bcm/Bcmchar.c’本地信息泄露漏洞
漏洞名称: Linux Kernel ‘/bcm/Bcmchar.c’本地信息泄露漏洞 CNNVD编号: CNNVD-201311-053 发布时间: 2013-11-06 更新时间: 2013-11 ...
- 【转】Android应用开发allowBackup敏感信息泄露的一点反思
转载:http://blog.csdn.net/yanbober/article/details/46417531 1 背景 其实这篇文章可能有些小题大作,但回过头想想还是很有必要的,有点阴沟里翻船的 ...
- PuTTY 信息泄露漏洞
漏洞名称: PuTTY 信息泄露漏洞 CNNVD编号: CNNVD-201308-380 发布时间: 2013-08-27 更新时间: 2013-08-27 危害等级: 低危 漏洞类型: 信息泄露 ...
- Linux kernel ‘key_notify_policy_flush’函数信息泄露漏洞
漏洞名称: Linux kernel ‘key_notify_policy_flush’函数信息泄露漏洞 CNNVD编号: CNNVD-201307-072 发布时间: 2013-07-05 更新时间 ...
随机推荐
- 【题解】Luogu P2889 [USACO07NOV]挤奶的时间Milking Time
Luogu P2889 [USACO07NOV]挤奶的时间Milking Time 题目描述 传送门Bessie is such a hard-working cow. In fact, she is ...
- redis不完整的事务实现Transaction
使用场景 redis一个命令执行是单线程的,不用担心并发冲突,如果你想有几个命令想像一个命令一样,在这几个命令执行过程中不会执行别的客户端发来的命令 ,也就是原子性,就可以用 redis Transa ...
- Electron-Vite2-MacUI桌面管理框架|electron13+vue3.x仿mac桌面UI
基于vue3.0.11+electron13仿制macOS桌面UI管理系统ElectronVue3MacUI. 前段时间有分享一个vue3结合electron12开发后台管理系统项目.今天要分享的是最 ...
- Java实现单例模式的几种方式
单例模式(Singleton),保证在程序运行期间,内存中只有一个实例对象. 饿汉式,最常用的方式.JVM加载类到内存中时,创建实例,线程安全. public class Boss { private ...
- kubeadm部署高可用版Kubernetes1.21[更新]
环境规划 主机名 IP地址 说明 k8s-master01 ~ 03 192.168.3.81 ~ 83 master节点 * 3 k8s-master-lb 192.168.3.200 keepal ...
- (Element UI 组件 Table)去除单元格底部的横线
Element UI 组件 Table 有一个属性 border,添加它可以增加纵向边框,但是无法控制横线边框,因此即使是最简单的 el-table,也会包含一个底部横线. 这个底部横线其实是一个 b ...
- Linux中Crontab的用法
1.crontab的概念: crontab命令用于设置周期性被执行的指令.该命令从标准输入设备读取指令,并将其存放于"crontab"文件中,以供之后读取和执行.可以使用它在每天的 ...
- 限流神器Sentinel,不了解一下吗?
概述 书接上回:你来说说什么是限流? ,限流的整体概述中,描述了 限流是什么,限流方式和限流的实现.在文章尾部的 分布式限流,没有做过多的介绍,选择了放到这篇文章中.给大伙细细讲解一下 Sentine ...
- 2.QT浏览器控件设置“透明颜色”
使用样式表或者设置背景颜色,使用 background-color:transparent 但,使用透明的颜色是不可行的: QColor(255,0,0,0)
- AcWing 243. 一个简单的整数问题2
给定一个长度为N的数列A,以及M条指令,每条指令可能是以下两种之一: 1."C l r d",表示把 A[l],A[l+1],-,A[r] 都加上 d. 2."Q l r ...