本文来自铅笔道电子烟论坛:铅笔道

记者 | 付艳翠

编辑 | 吴晋娜

人工智能学习路线+实战训练

https://edu.csdn.net/topic/ai30?utm_source=csdn_bw

在阿里云云效平台上,只要登上账号,就能浏览到很多公司的“内部”代码。

““能造成多大损失,那就要看你的想象力了。”说完,张中南通过微信发来几张用户手持身份证的照片。照片中,隐约可以看到用户的个人信息。这是张中南在阿里云公共代码托管平台上,浏览到的万科集团的用户“内部资料”。

张中南是一位网络安全方面的爱好者,同时也是上海一家科技公司的后端工程师。

近日,他向铅笔道爆料,半年前他发现,由于阿里云代码托管平台的项目权限设置存在歧义,导致开发者操作失误,造成至少40家以上企业的200多个项目代码泄露,其中涉及到万科集团、咪咕音乐、51信用卡旗下51足迹、百度无人车合作伙伴ecarx等知名企业,问题至今未完全解决。

面对可能会引发的一系列难以想象的网络安全灾难,这位工作不到3年、年仅24岁的小伙子,有些不知所措。期间,他曾怀着忐忑的心情,一边怕惹上官司,一边又自己通过电邮、微信等方式联系了其中的十余家公司。

他本寄希望于阿里云平台能帮忙一次性解决掉这些公司的安全隐患,经过多次沟通,他却发现依旧徒劳,让他百思不得其解的是,“阿里云只要向企业发个邮件、打个电话就能解决,有那么难吗?”

注:本文内容主要来自铅笔道记者采访和网络公开信息,论据难免偏颇,不存在刻意误导。

发现了“不得了”的秘密

近日,作为网络安全方面的爱好者,上海一家科技公司的后端工程师张中南向铅笔道吐露了半年以来的这段经历。

去年8月下旬的一天,他在网上看到阿里云在推广云效平台,还出了一本书叫《阿里巴巴Java开发手册》。抱着学习的心态,他注册了一个阿里云平台账号。

“我是一个ruby工程师,java和php都是半吊子。在这里,我就像打开了新世界的大门。”他意外地发现,在阿里云效平台上,只要登上账号,能浏览到很多公司的“内部”代码。

最初,张中南以为这些代码是开源的。这个发现,让他在最初感到非常欣喜。“这些项目大多数是用java和php写的,看企业里面真正的项目,要比自己看书摸索要真实一些。”

然而,张中南很快发现了“不对劲”的地方,这些代码内容很多都是不该出现在开源项目中的。比如,项目的数据库、账号、密码等。为此,抱着测试一下的态度,张中南登录了这些账号和密码。

张中南震惊地发现,竟然真的能见到一些公司生产环境的具体数据。虽然离最初发现时已过去半年,但他如今描述时还是感到难以置信。“这其中的很多企业,竟把数据库也抛在公网上,任凭谁,只要按照里面记录的账号密码登录,就能访问。

一番研究过后,张中南猜测,之所以出现这种情况,可能是因为这些公司的程序员在给项目建库时操作不当,将项目权限设置成“平台公开”。

张中南解释,因为当时的阿里云代码托管业务还是全英文平台,可能很多企业在创建项目的时候会误选择“internal”,也就是“平台公开”。

他认为,“internal”的意思得因人而异。“如果是个人在使用代码托管,那么‘internal’的意义非常明确,就是使用这个平台的人都能访问。但如果是企业在使用代码托管,那么‘internal’的意义是‘对企业内的用户都公开’还是‘使用这个代码托管平台的人都能访问’呢?”

目前,阿里云云效平台建库操作页面为中文,默认权限为“私有”。

他开始担心,“如果这些信息被人发现并利用,迟早有一天要出事

张中南用一些他发现在阿里云平台上出现代码泄露的企业举例。比如,中国移动旗下咪咕音乐,泄漏后端代码及配置数据,包括访问高清曲库接口的密钥,访问中央音乐平台总线接口的密钥,支付密钥等。黑客可以根据代码逻辑和支付密钥,伪造支付成功请求。

又如,由金正大集团发起并控股的,由世界银行集团国际金融公司、华夏银行共同参与的金丰公社,泄漏代码为电商后端和CMS。其阿里云oss访问密钥也泄漏,该密钥可以访问金丰公社生产环境的文件系统,包括用户上传的图片和资源、内部系统的报表、服务器日志等。黑客如果用恶意app和网页替换掉oss中的原有项目,用户通过金丰公社升级app或访问特定页面时,便会被劫持。

还有,基于微信的教育应用服务平台浙江小虫科技,泄漏代码为服务器监控中间件,代码中暴露出高权限生产环境数据库账号,可以直接登录查看线上数据。尝试登录阅览,其中一个数据库存储了36万条中小学生的姓名、手机号和学校。如果泄漏,后果不堪设想。

张中南通过电话联系了对方创始人,对方很快将代码泄漏情况全部处理。事后,张中南表示:“想想还蛮开心的,今天保护了几十万个小孩子的隐私。”

此外,上海图聚智能科技有限公司的客户已经包括全国数百家医院和商场,以及高德地图等,它的代码近乎全部泄露。张中南称:“且不说其辛苦运营的数据如果被竞争对手全数获取会怎样,试想如果黑客把数据库中合作医院的地址改为某个‘不作为’的医院,后果也不堪设想。

张中南介绍,虽然万科集团泄露代码不多,但生产环境oss密钥泄漏了出来。该密钥权限非常大,可以访问整个万科集团的线上oss,包括购房客户上传的身份证,各地销售人员报表等。而这些信息,对黑客来说,无疑是一个宝库。

感性战胜理智

知道了“代码秘密”的张中南,在接下来的几天,开始陷入是否要通知这些企业的犹豫中。“之所以犹豫,是因为之前世纪佳缘网白帽子事件。”

世纪佳缘网白帽子事件发生在2015年12月,在2016年6月,被白帽子父亲披露。

资料显示,知名第三方漏洞平台——乌云网的注册白帽子袁炜,在检测漏洞中发现了世纪佳缘的漏洞,并告诉了世纪佳缘该漏洞。几天后,世纪佳缘确认并修复了该漏洞,同时致谢乌云网和袁炜。

但在2016年1月,世纪佳缘报警称有4000余条实名注册信息被不法分子窃取。2016年3月8日,袁炜遭到警方刑事拘留,并于4月12日被批准逮捕。罪名是基于《刑法》285条第2款,入侵获取网络金融证券系统身份认证信息 10 条以上、一般系统 500 条以上,被认为情节严重。

虽然担心自己会有和袁炜一样的遭遇,但最终,张中南的感性战胜了理智。

在代码泄露的公司中,张中南打算挑一家互联网兼职平台试试水。“之所以选择这家公司,是因为他们有一位看起来很友善的年轻CEO。”

2018年9月4日,张中南给这家互联网兼职平台的几位研发人员发送了一封邮件,告知对方公司项目在阿里云托管平台的代码存在安全隐患,并将建议也一并发给对方。

张中南回忆,为了害怕有人已经离职,他特地给该公司多个一线研发发送了邮件。

张中南给互联网兼职平台发送的邮件截图(张中南提供)。

很快,张中南发现,泄露的项目就被“悄悄下掉”了,但他一直没有收到回信,“甚至连声感谢都没有”。

迟迟没有回复,也让张中南产生了犹豫。“毕竟当时是鼓起很大勇气才发邮件的,因为怕他们报警。

但消沉几天后,张中南还是觉得应该去做些事情,继续将这个发现告诉涉事公司。

这次,张中南找到了比邮件更好的方法:通过代码提交的记录,直接添加开发者的微信,再向他们告知。

前后忙活了十余个公司,效果还不错。但在联系这些公司人员时,大家其实一开始还是倾向于怀疑和不信任。”张中南感受到。

张中南联系泄露公司时的对话截图(张中南提供)。

这也让张中南开始期望与这些公司对话,引起公司上层重视。之后,张中南通过网站留言的方式,联系了代码同样泄露了的上海某科技公司。

“第二天,公司CTO就打来电话道谢。”说到这里,张中南显然很开心。因为他认为,这也证明他这么做下去是值得的。

多次沟通,问题未解

在11月底,张中南在和其哥哥通电话时,说了他正在做的事情。但之后其哥哥了解了情况后,专程给张中南打电话劝他不要管了,因为这种做法法律风险很大。

在考虑了哥哥的意见后,张中南决定找阿里云官方渠道,希望阿里云能够通过平台来解决这件事

11月26日晚,张中南将51信用卡在阿里云code上托管的代码项目51足迹app,因为权限配置不当而泄漏的情况告知了云效客服。他并表明,希望阿里云能发个站内信告知这部分公司。

11月26日,张中南与阿里云客服对话截图(张中南提供)。

当时阿里云云效方面表示,张中南反馈的51信用卡旗下51足迹app后台的代码,仓库级别设置为了“internal”,需要通知客户改为“private”的问题,已经关联任务。

本以为事情可以圆满得到解决,因为张中南发现,在11月他与平台沟通之后,确实监测不到云效平台上再出现代码泄露项目的新公司了。然而,他发现,在11月之前监测过的代码泄露企业,依旧处于“裸奔”状态,这意味着阿里云并没有通知到代码泄露的企业。

今年1月31日,不甘心就这么算了的张中南再次联系了阿里云云效平台,并提供了几个大厂如咪咕音乐、百度无人车合作伙伴ecarx、51信用卡旗下的51足迹的泄露情况,希望事情得到处理。

这次,阿里云客服表示:“作为公有云的代码托管,我们无权扫描用户的代码,这一点公有和私有一样,仓库的开放性是用户自主的权利。”也就是说,阿里云作为代码服务平台,无权扫描用户代码。而代码不管是平台公开,还是私有,都是用户的权利。

阿里云称,感谢张中南的反馈,会将其反馈到的信息给到其发现的几个仓库的维护者。但同时也建议张中南可以直接通过commit的邮箱与维护者进行提示。

1月31日,张中南与阿里云客服对话截图(张中南提供)。

这一次,张中南同样不知道阿里云是否通知了项目方。“虽然不知道阿里云是否联系了这些企业,但上述企业的代码泄露情况依然存在,可见它们并没有接到通知。”

在他看来,阿里云这样的知名云服务提供商,应该有告知代码泄露公司的义务。

在张中南提供的泄露代码公司的表格里,有28家公司、共235个项目的代码存在泄露风险。这里还不包括张中南此前自己联系过的10余家公司。

张中南表示,名单中还漏掉了很多企业,因为他写的爬虫代码不是很好。解析过程中,一些页面解析错误就漏掉了。

在此之前,用户数据泄露事件频繁发生,Facebook、Uber、华住、顺丰、万豪、陌陌等企业深陷其中。

2018年9月,华住旗下酒店汉庭、桔子、全季等开房数据泄露事件,就是华住程序员将数据库的用户名、密码,上传至公共代码托管平台导致的。据悉,泄露的房客信息包括名字、邮寄地址、邮箱地址、电话号码、护照号码、出生日期、性别、到达和离店信息等,已经构成一种完整意义上的个人大数据。

“现在阿里云面对的是几十家企业,几百个项目的代码泄露。而阿里云只要发个邮件、打个电话就能避免,打个电话那么难吗?”对于这个问题,张中南百思不得其解。他认为,阿里云这种不作为行为,会让这件事情有可能变得十分严重。

阿里云:权限始终默认“私有”

针对网友反应的问题,阿里云云效平台表示:“针对部分用户不那么熟悉此类平台,我们也会展开一些科普与使用规则提醒,确保大家对自己分享的代码有清晰的认知。”

为此,铅笔道采访了此前张中南联系过的一家公司,该公司研发人员李杰(化名)表示:“阿里云所说的向用户科普和使用规则,基本能够满足用户正常使用。但因人而异,因为我就没有过多的关注。”

李杰继续称,阿里云后来将页面从英文变更为中文,就可以看出它们做了很多优化。“大家都是开发者,对于面向开发者的平台来说,也无须苛求太多。”

当时之所以建站出错,李杰回忆,是因为在建站的时候,云效还是全英文平台,他记得当时权限控制默认确实是“internal”,“主要是程序员个人建库的时候疏忽了。”

针对李杰所说的云效平台此前默认操作是“平台公开”一事,阿里云云效平台表示:云效平台和github一样,从一开始就是默认的“私有”,但客户可以手动更改,相关的选项也都符合行业的通用规则,且完全由客户自己设置。

对此,李杰称,这件事情发生在去年8月份,记忆有些模糊了。在当时,他一共建了3个项目,他在事后特别确认了一遍,当时的3个项目权限全部是平台“公开”的。“我建项目的时候,肯定不会把所有项目,专门都从‘私有’改成‘公开’。”

针对云效平台是否默认“私有”一事,张中南则回忆,印象中他开始注意到限制操作设置时已经是默认为“私有”,而更早之前注册并建库的项目开发者操作时是否默认为“公开”,他也不得而知。

然而,他认为,即使阿里云云效平台为开发者提供的是免费服务,且从一开始就把限制操作设置为“私有”,在这次泄露事件中也有责任。他认为,一方面,阿里云未能及时优化和解释有歧义的英文权限描述;另一方面,即使云效平台是免费服务平台,也有通知其用户预防风险的义务。

“事实上,阿里云被动发现问题后,没有重视问题,也没有提出解决措施。”张中南表示,他之所以选择公开此事,只是想要引起企业对代码安全的关注,同时希望阿里云改善服务流程。(

1月31日,张中南与阿里云客服对话截图(张中南提供)。

这一次,张中南同样不知道阿里云是否通知了项目方。“虽然不知道阿里云是否联系了这些企业,但上述企业的代码泄露情况依然存在,可见它们并没有接到通知。”

在他看来,阿里云这样的知名云服务提供商,应该有告知代码泄露公司的义务。

在张中南提供的泄露代码公司的表格里,有28家公司、共235个项目的代码存在泄露风险。这里还不包括张中南此前自己联系过的10余家公司。

张中南表示,名单中还漏掉了很多企业,因为他写的爬虫代码不是很好。解析过程中,一些页面解析错误就漏掉了。

在此之前,用户数据泄露事件频繁发生,Facebook、Uber、华住、顺丰、万豪、陌陌等企业深陷其中。

2018年9月,华住旗下酒店汉庭、桔子、全季等开房数据泄露事件,就是华住程序员将数据库的用户名、密码,上传至公共代码托管平台导致的。据悉,泄露的房客信息包括名字、邮寄地址、邮箱地址、电话号码、护照号码、出生日期、性别、到达和离店信息等,已经构成一种完整意义上的个人大数据。

“现在阿里云面对的是几十家企业,几百个项目的代码泄露。而阿里云只要发个邮件、打个电话就能避免,打个电话那么难吗?”对于这个问题,张中南百思不得其解。他认为,阿里云这种不作为行为,会让这件事情有可能变得十分严重。

阿里云:权限始终默认“私有”

针对网友反应的问题,阿里云云效平台表示:“针对部分用户不那么熟悉此类平台,我们也会展开一些科普与使用规则提醒,确保大家对自己分享的代码有清晰的认知。”

为此,铅笔道采访了此前张中南联系过的一家公司,该公司研发人员李杰(化名)表示:“阿里云所说的向用户科普和使用规则,基本能够满足用户正常使用。但因人而异,因为我就没有过多的关注。”

李杰继续称,阿里云后来将页面从英文变更为中文,就可以看出它们做了很多优化。“大家都是开发者,对于面向开发者的平台来说,也无须苛求太多。”

当时之所以建站出错,李杰回忆,是因为在建站的时候,云效还是全英文平台,他记得当时权限控制默认确实是“internal”,“主要是程序员个人建库的时候疏忽了。”

针对李杰所说的云效平台此前默认操作是“平台公开”一事,阿里云云效平台表示:云效平台和github一样,从一开始就是默认的“私有”,但客户可以手动更改,相关的选项也都符合行业的通用规则,且完全由客户自己设置。

对此,李杰称,这件事情发生在去年8月份,记忆有些模糊了。在当时,他一共建了3个项目,他在事后特别确认了一遍,当时的3个项目权限全部是平台“公开”的。“我建项目的时候,肯定不会把所有项目,专门都从‘私有’改成‘公开’。”

针对云效平台是否默认“私有”一事,张中南则回忆,印象中他开始注意到限制操作设置时已经是默认为“私有”,而更早之前注册并建库的项目开发者操作时是否默认为“公开”,他也不得而知。

然而,他认为,即使阿里云云效平台为开发者提供的是免费服务,且从一开始就把限制操作设置为“私有”,在这次泄露事件中也有责任。他认为,一方面,阿里云未能及时优化和解释有歧义的英文权限描述;另一方面,即使云效平台是免费服务平台,也有通知其用户预防风险的义务。

“事实上,阿里云被动发现问题后,没有重视问题,也没有提出解决措施。”张中南表示,他之所以选择公开此事,只是想要引起企业对代码安全的关注,同时希望阿里云改善服务流程。(校对 | 林夕

人工智能如何学?

https://edu.csdn.net/topic/ai30?utm_source=csdn_bw

阿里云出现源代码泄露企业 涉及万科等40家企业200余项目相关推荐

  1. 阿里云西安ACE同城会 | 钉钉生态应用促进企业信息化实战沙龙

    简介:未来的企业应用是什么样子,如何让企业员工0成本低代码搭建企业自己的系统,现在由企业实现贴合自身业务发展的系统,变得如此简单.我们请来阿里钉钉事业部的资深专家为我们讲解融合云原生.钉原生与生态aP ...

  2. 阿里云数据湖解决方案全面满足数据需求,帮助企业释放数据价值

    简介: 基于阿里云对象存储OSS构建的数据湖解决方案,可以全面满足数据的存储.离线分析.交互查询等各种业务诉求,帮助企业释放数据的价值 1.行业综述 游戏市场需求旺盛,行业景气度持续提升 2020年突 ...

  3. 中芯国际三季度净利润创历史新高;阿里云年收入将位居全球第三位 | 美通企业日报...

    今日看点 Forrester发布<2021年Forrester亚太区市场预测>显示,2021年阿里云的收入将仅次于AWS和微软Azure,位居至全球第三.该报告对2021年的主要预测包括: ...

  4. 阿里云因Ak泄露,被攻击处理过程

    根据阿里云后台安全预警,检查到系统出现紧急预警时间:恶意脚本代码执行,预警后发现SSh无法登录(ssh服务被杀掉),服务器瘫痪,重启服务器后能正常远程. 第一件事禁用掉泄露的AK,防止二次伤害 如果不 ...

  5. 阿里云低代码音视频工厂正式上线,为企业用户提供音视频开发最短路径

    简介:阿里云低代码音视频工厂正式上线,极大程度降低音视频开发门槛,打破传统音视频开发壁垒,全新定义音视频应用开发. 1月5日,阿里云低代码音视频工厂正式上线,极大程度降低音视频开发门槛,打破传统音视频 ...

  6. 从零开始部署Node.js服务至阿里云ECS服务器并通过express框架实现外网IP访问html项目

    大致步骤(2017.07.25): 1.购买阿里云服务器 2.在云服务器上搭建node环境 3.上传Node.js代码,并测试通过 一.购买阿里云服务器 1.登陆阿里云 2.选择控制台 3.选择云服务 ...

  7. 【漫画】AI小猪的一生---阿里云ET农业大脑如何与特驱集团养出“200公里猪”

    6月7日,在上海云栖大会上,阿里云发布ET农业大脑.希望将人工智能与农业深入结合,目前已应用于生猪养殖.苹果及甜瓜种植,具备数字档案生成.全生命周期管理.智能农事分析.全链路溯源等功能.AI可以记录猪 ...

  8. “企业上云”计划出炉,三年内河北万家企业要上云!|中机智库

    云是承载各类信息化应用的关键基础设施,上云已经成为加速制造业数字化.网络化.智能化转型的有效路径.日前,河北省信息化和工业化深度融合工作领导小组办公室印发<河北省企业上云三年行动计划(2018- ...

  9. 《阿里云服务器搭建》------实现Jenkins和github之间自动化部署Java web项目

    本系列教程的搭建环境为阿里云服务器,其他服务器可作为参考. 本文主要讲述实现Jenkins和github之间自动化部署项目 在浏览器中打开我们的jenkins页面.(http://ip:80/jenk ...

最新文章

  1. OpenCV+python:轮廓发现与对象测量
  2. php鼠标已入移除,angularjs鼠标移入移出实现显示隐藏
  3. laravel token ajax,Laravel中ajax post操作需要传递csrf token的最优化解决方式
  4. 全志A33-串口的使用
  5. 使用 python 的 urllib2和 urllib模块爆破 form 表单的简易脚本
  6. CF741C Arpa’s overnight party and Mehrdad’s si
  7. Harris的角点检测和特征匹配
  8. 1.亿级流量的电商网站---概述
  9. div 一段时间后自动隐藏
  10. Linux安装中文字体
  11. 为什么固态硬盘比机械硬盘读取速度快?
  12. 单片机数码管显示程序c语言,基于STC89C52单片机的动态数码管显示C语言程序
  13. word ppt中设置TAB缩进量
  14. linux 喂狗时间,看门狗喂狗时间及程序
  15. 连锁商超行业使用OA系统实现人、财、物统一管控
  16. pcb板子开窗_PCB中 开窗 是什么意思?
  17. Linux(ubuntu)中删除除了一个文件之外的所有文件
  18. 王者荣耀孙策520皮肤特效展示 孙策520皮肤值得买吗
  19. mysql服务器优化加速_如何通过宝塔面板优化服务器来加快网站运行速度
  20. WebBrowser或IE物件分析網頁表格/自動登入網頁

热门文章

  1. 【一牛网科大讯飞】AIUI评估板免费赠?讯飞评测活动告诉你:有戏!
  2. 51单片机配置中断与定时器应用
  3. git archive命令使用介绍
  4. 写给想成为前端工程师的同学们
  5. 阿里云TSDB时空数据库实战(一):数据入库与导出
  6. 简单的动态网页设计及开发(关联数据库)
  7. 全球牛油果市场处于不断增长状态,墨西哥已成为世界上最大的牛油果生产国与出口国[图]
  8. html中font属性中face,CSS3 @font-face属性
  9. 和不同的男人结婚,离婚,最终她成为了美国名校的终身教授,目标明确的女人真可怕...
  10. 教程:让你的网速提高4倍