近日,网上流传的一张关于“SonarQube 和 Vue.js 涉及国家安全漏洞“的截图引发业内关注。1 月 25 日, Vue.js 创始人尤雨溪迅速在个人平台账号上对此事做了回应。

尤雨溪表示,Vue 向来非常看重安全问题,近期也并未收到漏洞报告。

在回应中,尤雨溪指出“前端框架无法被黑客用于渗透”:“截图中的文字措辞可能会让一些不懂技术的朋友以为 ‘Vue 被黑客用于渗透’ —— 这是错误的理解。黑客渗透可能会利用被攻击者所使用的前端框架中的漏洞,但黑客不会用前端框架作为其渗透的工具,因为前端框架根本没有这个功能。”

在对网上公开信息进行排查后,他发现“文中的漏洞是纯粹的后端 API 鉴权漏洞,跟前端和 Vue 没有任何关系。除此之外,并没有找到任何关于 Vue 的漏洞披露。公开的 CVE 数据库中目前也没有任何针对 Vue.js 本身的漏洞。”

作为开源项目,Vue 是以 JavaScript 源码形式发布的前端项目,每一行代码都公开接受任何安全审计。Vue 2 发布至今已经 5 年多,在全球业界被广泛使用,期间从未有被发现过真正意义上的安全漏洞。

同时,尤雨溪还对 XSS 攻击手段进行了解释,“前端作为在用户浏览器里执行的代码,漏洞类型通常都是 XSS (Cross-Site Scripting),XSS 中文叫跨站脚本攻击,指的是通过上传恶意信息,让信息中包含的脚本被意外地渲染,从而能够在其他用户登陆时执行,窃取其他用户的数据。XSS 可以以多种形式出现,在纯粹服务端渲染的页面上也可能发生,不一定涉及前端框架。”

据了解,此前 Vue 团队私下也接到过一些所谓的 “漏洞” 报告,但这些报告几乎全部是在假设了将用户上传的任意 HTML 内容当作 Vue 模版或是 v-html 数据使用的前提下 —— 这种场景跟直接渲染用户上传的任意 HTML 没有本质区别,不管用的是不是 Vue 都会导致 XSS,而 Vue 文档里的安全章节也对这种做法有特别警告。

尤雨溪解释称:前端框架的职责是根据开发者提供的模版和数据渲染界面,如果开发者强行要求框架渲染不可信的模版然后指责框架不安全,这就如同用 innerHTML 渲染不可信的内容,然后指责浏览器有安全漏洞一样。

最后,他强调:只要遵循普适的前端安全常识,Vue 本身并不存在任何安全性问题。也因此,我们对于为什么 Vue 会被列入排查感到很困惑 —— 如果有哪位朋友知道详情或是漏洞细节,请发邮件到 security@vuejs.org 通知我们。如果你被同事或是上司问起,也请分享这篇文章以正视听。

据悉,目前网传的这两张截图来源不明,现已经在业内被广泛传播。其内容是“有关部门通报境外黑客正在组织利用 SonarQube 和 Vue.js 对上述单位实施网络攻击探测。因此有关部门要求境内机关、重要企事业单位对开源项目 SonarQube 和 Vue.js 的使用情况进行组织排查,重点是政府服务平台。”

03-05 13:59