多达 38TB 的微软内部数据遭泄露,起因竟只是一个小小的配置错误?——确实如此,你没看错。
近日,云安全初创公司 Wiz Research 发布了一则公告:微软 AI 研究团队在 Github 上发布大量开源培训数据时,意外暴露了 38TB 的额外私人数据,其中还有两名员工工作站的磁盘备份,包括了机密信息、私钥、密码和超过30000条内部 Microsoft Teams 消息。
微软公司发生了一起惊人的安全漏洞,由于配置错误,导致38TB的内部数据被泄露。这一事件引发了广泛的关注和担忧,同时也推动了程序员这一岗位的需求飙升,成为了当下备受追捧的热门职业。本文将深入探讨微软数据泄露事件的影响,并剖析程序员岗位的迅猛发展,为读者呈现一个全面的视角。
而这一切的源头,仅是一个配置错误的共享访问签名(SAS)令牌。
网络安全的重要性,不言而喻。
据 Wiz 介绍,微软这场规模庞大的数据泄露,早在2020年7月就存在了,只是在今年6月才被 Wiz 发现。
作为 Wiz 研究团队工作的一部分,他们会查找云托管数据意外暴露的情况,在互联网上扫描配置错误的存储容器。在此过程中,今年6月 Wiz 发现了一个属于微软 AI 研究部门的 GitHub 存储库。
这个 GitHub 存储库提供了用于图像识别的开源代码和 AI 模型,并引导开发者前往微软云存储系统 Azure Storage 的 URL,来下载相关代码和开源模型:
乍看之下,这个 URL 没有任何问题,但 Wiz 却发现:该 URL 中包含了一个访问范围过于宽松的共享访问签名(SAS)令牌,被错误配置为授予整个 Azure 存储账户的权限——也就是说,点击该链接的人不仅可以访问开源模型,更可以共享该 Azure 存储账户中的全部数据!
根据 Wiz 扫描显示,该 Azure 存储账户包含 38TB 的额外数据,其中包括微软员工的个人电脑备份。这些备份包含敏感的个人数据,包括微软服务的密码、密钥以及来自 359 名微软员工的 30000 多条内部 Microsoft Teams 消息。
在计算机备份中找到的一小部分敏感文件样本
两名微软员工之间经过编辑的团队对话。
说了这么久,那SAS令牌到底是什么呢?
具体来说,共有3种类型的SAS令牌:账户SAS、服务SAS和用户授权 SAS。而此次用于微软存储库中的,正是账户SAS令牌。
在Azure中,SAS令牌是一个经过签名的URL,可授予对Azure存储数据的访问权限,其访问范围和到期时间都可以由用户自定义:
生成账户SAS令牌的过程很简单,用户只需配置令牌的范围、权限和到期日期,即可生成令牌。在后台,浏览器会从Azure下载账户密钥,并用密钥签署生成的令牌——整个过程在客户端完成,既不是Azure发起的事件,生成的令牌也不是Azure对象。
但也正因如此,一旦用户创建了一个权限过高且还没过期的SAS令牌时,管理员就很难发现。
在描述过往经历时,我们总会遇到下面的情景:
例如,2020 年 7 月 20 日微软 AI 开发人员首次将 SAS 令牌提交到 GitHub 存储库,并把权限到期日设为 2021 年 10 月 5 日;到了 2021 年 10 月 6 日,又把 SAS 令牌到期日更新为 2051 年 10 月 6 日。
从时间上来看,微软的这个 SAS 令牌没什么问题;但从权限范围和级别来看,其风险就很大了:不仅可以访问存储账户中的全部数据,该 SAS 令牌还被错误配置为“完全控制”权限而非“只读”权限。
这意味着,所有人不仅可以查看存储账户中的所有文件,都能随时删除、替换并向其中注入恶意内容。
对于这个隐患,Wiz 联想到了最初这个 GitHub 存储库的目的:提供用于图像识别的开源代码和 AI 模型。
对此,Wiz 提出了一种假设:“也就是说,攻击者可以将恶意代码注入该存储账户中的所有 AI 模型,而每个信任微软 GitHub 存储库的用户都会因此受到感染。”
不过值得注意的是,Wiz 指出这个存储账户似乎并没有直接暴露给公众:“事实上,这是一个私人存储账户。”
表面上看,微软开发人员使用了一种名为“SAS 令牌”的 Azure 机制,允许创建一个可共享的链接,授予对 Azure 存储账户数据的访问权限。但 Wiz 表示:在检查时,该存储账户看起来仍然是完全私有的。
对于这个问题,微软安全响应中心也强调:“没有客户数据因此暴露,也没有其他内部服务因这个问题而面临风险。”
微软表示,根据 Wiz 的研究结果,它已经扩展了 GitHub 的秘密扫描服务,该服务可以监控所有公开源代码的更改,以防明文暴露凭证和其他机密,包括任何可能具有过度许可权限或过期的 SAS 令牌。
尽管此次事件并未造成严重后果,但 Wiz 依旧认为,这件事提醒了工程师们,在组织 AI 研究时,必须充分考虑到所需的安全措施——毕竟像微软这样的科技巨头,也会因为一个错误配置导致大规模的数据泄露:
“随着数据科学家和工程师竞相将新的 AI 解决方案投入生产,他们处理的海量数据需要额外的安全检查和保护措施。由于许多开发团队需要处理海量数据、与同行共享数据或在公共开源项目上合作,像微软这样的案例越来越难以监控和避免。”
数据泄露事件的曝光引发了企业对数据安全的高度重视,从而导致程序员岗位需求的迅速增长。随着企业加大对数据保护的投入,对程序员的需求涵盖了从数据安全专家到网络安全工程师的各个层面。程序员们掌握着保护数据和网络安全的关键技能,他们的工作变得更加重要和抢手。
工信部预测,到2027年我国网络安全从业人员的需求数量将达到300万人,然而目前每年实际培养出的网络安全人才却不到5万人。
如此庞大的市场需求自然让网络安全人才尤为抢手,薪资可观。
随着程序员岗位需求的激增,成为一名优秀程序员变得更具挑战性和竞争力。除了扎实的编程技能和深厚的技术功底外,程序员还需要具备良好的沟通能力、团队合作精神和对安全问题的敏感性。同时,不断学习和更新知识也是保持竞争力的关键,因为技术的发展变化日新月异,程序员需要不断跟进和适应新的技术趋势。
随着数据泄露事件的警示和企业对数据安全的重视,程序员岗位将继续迎来更多的机遇和挑战。未来,随着技术的不断演进,程序员们需要关注数据隐私保护、网络安全、人工智能等方面的知识和技能。同时,与其他领域的融合也将成为程序员发展的趋势,例如物联网、云计算和大数据等领域的交叉应用。
微软数据泄露事件的发生提醒了我们对数据安全的重视,同时也为程序员们带来了新的机遇和挑战。随着企业对数据安全需求的不断增长,程序员这一职业将变得越来越抢手。通过不断提升自身技能和知识,成为一名优秀的程序员,将拥有广阔的职业前景和发展空间。