新聞中心
我們經(jīng)常使用 HTML target="_blank" 或 window.open() 在新窗口中打開(kāi)頁(yè)面。

創(chuàng)新互聯(lián)公司專(zhuān)注于網(wǎng)站建設(shè)|成都網(wǎng)站維護(hù)公司|優(yōu)化|托管以及網(wǎng)絡(luò)推廣,積累了大量的網(wǎng)站設(shè)計(jì)與制作經(jīng)驗(yàn),為許多企業(yè)提供了網(wǎng)站定制設(shè)計(jì)服務(wù),案例作品覆蓋水泥攪拌車(chē)等行業(yè)。能根據(jù)企業(yè)所處的行業(yè)與銷(xiāo)售的產(chǎn)品,結(jié)合品牌形象的塑造,量身策劃品質(zhì)網(wǎng)站。
- // in html
- open google
- // in javascript
- window.open("www.google.com")
但是,當(dāng)新打開(kāi)的頁(yè)面指向一個(gè)我們不知道的網(wǎng)站時(shí),我們就會(huì)被暴露在釣魚(yú)網(wǎng)站的漏洞中。新頁(yè)面通過(guò) window.opener對(duì)象獲得了對(duì)鏈接頁(yè)面的一些部分訪問(wèn)權(quán)限。
例如,可以使用 window.opener.location 將初始頁(yè)面的用戶(hù)指向一個(gè)假的釣魚(yú)網(wǎng)站,該網(wǎng)站模仿原始網(wǎng)站的外觀并做各種惡心的事情。鑒于用戶(hù)信任已經(jīng)打開(kāi)的頁(yè)面,這可能是非常有效的。
為了防止這種情況,我們可以:
在 HTML 中使用 rel="noopener 和 target="_blank"。
在Javascript中,一定要重置 opener 屬性:
- const newWindow = window.open("someLink.com");
- newWindow.opener = null;
后續(xù):現(xiàn)在看來(lái),noreferrer 是多余的,所以noopener` 對(duì)于HTML的使用應(yīng)該是足夠的。
作者:Daniel 譯者:前端小智
來(lái)源:js-craft 原文:http://www.js-caft.io/blog/window-open-and-target_blank-have-a-security-vulnerability/
新聞名稱(chēng):Window.open() 和 target= blank 有個(gè)安全漏洞
URL網(wǎng)址:http://www.dlmjj.cn/article/cddhodp.html


咨詢(xún)
建站咨詢(xún)
