2 月 22 日,据铅笔道报道,上海一家科技公司的后端工程师张中南爆料,阿里云代码托管平台的项目权限设置存在歧义,导致开发者操作失误,造成多家企业项目代码泄露,他半年前已经发现此事,并向阿里云云效平台报告,问题至今未完全解决。张中南认为,之所以出现这种情况,可能是因为这些公司的程序员在给项目建库时操作不当,将项目权限设置成“平台公开”。因为当时的阿里云代码托管业务还是全英文平台,可能很多企业在创建项目的时候会误选择“internal”,也就是“平台公开”。
目前,阿里云云效平台建库操作页面为中文,默认权限为“私有”。
【 图片来源:铅笔道 所有者:铅笔道 】
网络尖刀团队曲子龙撰文反驳了铅笔道《独家 | 阿里云出现源代码泄露企业 涉及万科等 40 家企业 200 余项目》该文的论调,他认为,文章描述实际泄漏源过度倾向于问题出自“阿里云代码托管平台”,但事实上并非如此。
“什么是代码托管?用大白话讲就是提供一个存代码的地方,企业可以像托管服务器一样,在上面自由存放托管代码。
托管怎么泄露的?就是创建托管项目分为“公开”和“私有”模式,很多程序员对公开和私有可能有什么误会,把本该私有模式的代码(阿里云默认就是私有模式),设置成为了公开,导致所有有公开权限的人都可以在这里 down 他原本需要设置成为“私有”的代码。
和阿里云有什么关系?文章里又一个吐老血的狗屁剧情就这样发生了,文章描述阿里云存在的问题竟然是因为阿里云代码托管平台的业务,这些描述都是用英文写的!
自认为,即便是英文不认识,读读描述仍然是能搞的懂的问题,不知道为什么会成为一个直接导致“用户数据泄露”的大问题。”
曲子龙指出,程序员误传代码,把包含敏感信息的项目传到了开源平台,这是一个常年累积下来的幺蛾子病。
“GitHub 敏感信息泄露,已经成为了一项标准的安全测试流程了,这些问题都出自程序员本身对安全意识的匮乏,程序员要背锅,技术老大的锅也跑不了,能当的上团队的技术 leader 起码的安全风控意识,安全标准还是要有的吧?为什么没有有效的管理、培训、风控体系,才让程序员犯了这么低级的错误,导致出这一的大问题,我想是每一个技术负责人都该自我检讨和思考的。”曲子龙写道。
也有人认为,阿里云未尽到提示义务。
CODING公司产品总监王振威对雷锋网表示,阿里云方面存在两个问题。第一,企业级产品可以这么随意的选择公开源码选项是有问题的,不符合企业管理的规范。第二,它提供了一个具有误导性的选项 internal,让用户误以为是内部项目,其实不是。此外,阿里云云效平台客服处置不当。“这个操作不需要扫描用户代码,应该及时通知所有用户检查自己项目的权限设置。”王振威说。
雷锋网发现,2 月 22 日下午 2 点左右,阿里云在其新浪微博上发布了关于 Internal 访问权限的说明:
我们收到开发者用户反馈,认为阿里云代码托管平台 code.aliyun.com 访问权限设置中的“Internal”选项存在理解歧义。
该平台旨在为开发者提供代码托管与交流服务。我们提供了Private(私有)、Internal(站内登录可见)、Public(完全公开)三个访问权限选项。默认代码访问权限为Private(私有),用户可以手动更改为其他选项。
2018 年 9 月底,我们已经增强了对 Internal 权限的中文注解,并于昨日发出全站通知提醒。同时,我们正在逐一通知之前将访问权限设为 Internal 的开发者用户,确保大家正确理解该访问权限的含义。
任何产品功能理解上的歧义,都说明我们在产品设计和用户体验上做得不够好。我们正在评估、改进相关产品设计,让所有开发者有一个更安全、清晰的使用体验。
阿里云代码托管团队
2019年2月22日
雷锋网注:上述部分信息援引自《程序员智障,你TMD打了个阿里标?》,曲子龙,网络尖刀;《独家 | 阿里云出现源代码泄露企业 涉及万科等40家企业200余项目》,付艳翠,铅笔道。