日前知名百科网站维基百科出现严重的安全问题,维基百科在进行某种安全测试时调用某个不安全的 JavaScript 脚本,此次安全事件导致大量维基百科管理员账号出现安全问题。
为应对这种紧急情况维基百科直接将受影响的站点设置为只读模式,随后进行排查后发现相关的恶意脚本已经存在两年但没有被发现,而且脚本此前也没有被激活过,这个恶意脚本还具有蠕虫特性可以自我传播。
源头是似乎是安全工程师的测试:
在社区讨论中有网友发现此次安全问题的根源指向维基媒体基金会的某位安全工程师,这名工程师使用拥有权限极高的员工账户进行测试,这个账户有权编辑每个页面上的 CSS 样式表和 JS 脚本。
至于具体的测试目的目前还不清楚,只是这次测试牵涉到加载大量用户脚本,而这名工程师似乎决定直接加载随机的用户脚本,而不是为这次测试活动创建专门的脚本。
而其中某个脚本是来自 ruwiki 的恶意脚本名,这个脚本存在时间超过 2 年,该恶意脚本具有蠕虫特性可以将自身注入到每个页面的全局 JavaScript 代码中,然后又注入到访问该页面的用户的用户脚本中。
这种蠕虫式传播具有极强的破坏性,这也触发维基媒体基金会的内部警报,最终维基媒体基金会决定将受影响的项目临时设置为只读模式并进行彻底的排查。
事后维基媒体基金会发布声明:
今天早些时候维基媒体基金会的工作人员在对维基百科上用户编写的代码进行安全审查时,在审查过程中不慎激活某些休眠代码,随后工作人员很快发现这些代码具有恶意目的。
作为预防措施我们在移除恶意代码并确认网站对用户安全后,暂时关闭维基百科和其他维基媒体项目的编辑功能,目前导致此次中断的安全问题已经得到妥善解决。
该代码持续运行时间为 23 分钟,在运行期间恶意代码更改并删除 Meta-Wiki 项目上的内容但并未造成永久性破坏,我们没有证据表明维基百科遭到攻击,也没有证据表明用户个人信息被泄露。
与此同时我们也在制定额外的安全措施以最大程度降低此类事件再次发生的风险,我们将持续通过基金会的公开事件日志发布最新进展。
