由random()实作的随机数产生器无法抵挡加密攻击。
export function createUniqueString() {
const timestamp = +new Date() + ''
const randomNum = parseInt((1 + Math.random()) * 65536) + ''
return (+(randomNum + timestamp)).toString(32)
}
处理方法
const randomNum = parseInt((1 + Crypto.getRandomValues()) * 65536) + ''
Crypto.getRandomValues()是JavaScript中生成随机数的另一种方法。该方法生成具有密码学安全性的随机数,因此比Math.random()方法更安全。
request.js: Read window.location()
request.js 檔案會將未經驗證的使用者輸入在第 66 行轉譯為來源程式碼。在執行
期間轉譯使用者所控制的指示,可讓攻擊者執行惡意的程式碼。
setTimeout(window.location.replace(window.location.origin + '/#/login'), 2000)
处理方法
setTimeout( $router.push({path: '/login' , replace: true }), 2000)
//import $router from '../router'
//需要先记得引用$router
使用replace也同样可以