lxw124 / Interview

前端
2 stars 0 forks source link

window.opener有什么问题 #81

Open lxw124 opened 3 years ago

lxw124 commented 3 years ago

当a页面点击a标签打开新的b页面时,可以通过window.opener获取a页面的window对象。如果是同源的网站一般不会有什么风险,但如果是外部网站,可以通过window.opener操作a页面,例如改写原站点地址,跳到一个仿真a页面的页面,用户不会察觉到,这时用户再输入个人信息就会被获取到。 解决方法: ①设置rel属性为noopener,这样新页面的window.opener就为null ②通过js的window.open打开页面 ③通过重定向打开页面