导读:Vue.js到底能不能渗透后端,作者公开发表态度,不存在。
近日,中国国家公安部以及工信部通报VueJS的安全隐患问题,其核心内容是目前多家公司在统计开发软件时使用Vue以及SonarQube(声呐方块,一款软件源代码管理平台),有国外黑客利用这两款开源软件漏洞对中国境内的政府机关以及重要企事业实施XSS、漏洞等实施攻击以及窃取图片、源代码等恶意行为。
四川省公安厅的安全公告
据媒体报道,2021年10月以来,境外突袭论坛异军突起的ATW黑客团伙利用SonarQube漏洞,窃取大量源代码,并在论坛上公然兜售泄露代码,其中涉及我国数十家重要企业单位的应用代码。
黑客ATW团体声称同时采用VueJS漏洞进行攻击,所以,中国国家网络安全部门针对VueJS可能存在的未知漏洞威胁进行了不同形式的多次预警。
Vue.js是旅居新加坡的尤雨溪创建。2014年2月,Vue.js正式发布。2015年10月27日,正式发布1.0.0;2022年1月20日,Vue3将成为默认版本。于 Vue 在国内用户众多,于是就有很多开发者将截图发给了尤雨溪。
2022年1 月 25 日,Vue作者尤雨溪在知乎上做了公开回应:
公告地址:https://zhuanlan.zhihu.com/p/461720764
尤雨溪提到,Vue 对于安全问题是很看重的,但我们近期并没有收到漏洞报告。漏洞是纯粹的后端 API 鉴权漏洞,跟前端和 Vue 没有任何关系。除此之外,并没有找到任何关于 Vue 的漏洞披露。公开的 CVE 数据库中目前也没有任何针对 Vue.js 本身的漏洞。
另外,截图中的文字措辞可能会让一些不懂技术的朋友以为 “Vue 被黑客用于渗透“ —— 这是错误的理解。黑客渗透可能会利用被攻击者所使用的前端框架中的漏洞,但黑客不会用前端框架作为其渗透的工具,因为前端框架根本没有这个功能。
但是,有多家安全平台有Vue环境下的XSS攻击的详细攻略。
Vue也确实能够与后端数据库连接和存取。相关代码如下:
// sqlMap.js
var sqlMap = {
// 用户
user: {
add: 'insert into user(id, username, password) values (0, ?, ?)',
select_name: 'SELECT * from user where username = ?', //查询 username
select_password: 'SELECT * from user where password = ?' //查询 password
},
// 招聘
hire: {
add: 'insert into hire(hire_id, title, money, degree, exp, site, time, addr) values (0, ?, ?, ?, ?, ?, ?, ?)',
getAll: 'SELECT * from hire',
search: 'select * from hire where title = ?',
update: 'update hire set title = ? where hire_id = ?'
}
}
module.exports = sqlMap;
因此,人们对Vue有安全问题的疑惑,也算有依据。大多数的前端框架只是做路由和渲染,而计算和逻辑都交由后端API完成,但现在的前端框架已经做到了全栈,也难免有误用的情景,亦未可知。
在座的有做前端、也有后端人士,大家对此事怎么看?欢迎文底评论~
作者:大雄
本文为 @ 场长 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。