曾经作为一阵子网页前端,根据我的经验,阿里的这个Antd是一个开源的前端框架,使用它可以比较轻松的通过代码实现一些网页特效,让页面更加好看。再加上有阿里旗下的蚂蚁金服在后面背书,所以有很多商业网站和企业网站甚至政府网站都在使用Antd。
由于Antd本身是开源的,所有代码任何人都看得见,所以使用它的开发者都默认为它是一个干净、安全的框架。却没想到,Antd的一位维护人员不知道出于什么想法,在9月10日提交了一个“彩蛋”源码,它的作用是在12月25日当天,为所有使用Antd框架的网页中的表单提交按钮,增加了一个“飘云”的特效,当鼠标移动到按钮上是还会显示“Ho ho ho”的文字提示。
按理说,给提交按钮增加这样一个特效无关大雅。但需要注意的是,前面已经提到,很多政府、企业网站都在使用Antd的框架,而这些网站很多都是极其严肃的,并不适合这些玩笑似的“彩蛋”。尤其是这一彩蛋被设定在12月25日这天出现,指向性的含义非常明显,因此给不少网站的维护人员带来了很大的麻烦,甚至据说还有前端因此而丢掉饭碗。
一开始,这一彩蛋的提交者还认为这不是什么大事,直到不少开发者通过各种社交软件“炮轰”,才在github发表了一个不痛不痒的声明,称是在自己的“一意孤行且愚蠢的决定”。
而这次事件也给广大开发中敲响了警钟。一直以来,很多开发者认为“开源”的东西一定的安全的,因为所有代码对外开放,任何人都可以查看。但是当一些大型的开源项目涉及到很多行代码的时候,不一定有开发者能够完整的阅读所有的开源代码。而且像Antd这样由团队负责运营的开源项目,很多时候默认就是安全的,人们使用它就是为了提高工作效率源码,不大可能把所有代码都读一遍。这就使得一些开源项目存在了隐患的可能。这次仅仅只是加入了一个彩蛋,如果下次增加点后门什么的,后果不堪设想。
尽管由于Antd是开源项目,根据协议即使这一彩蛋给开发者带来困扰甚至害人丢了工作,开发者也很难追究添加彩蛋的运营人员的责任,因为开发者在使用Antd框架的时候并没有付费,该框架也并非用于盈利。但是这一事件也给Antd项目的声誉造成了严重的负面影响,一些开发者已经着手在网站页面中将Antd框架删除。总而言之,这次“彩蛋事件”虽然是个别人员的非主观恶意造成的,但是却给整个开源社区带来了一场“信任危机”。