Chrome แก้ปัญหาด้านความปลอดภัยเมื่อเปิดหน้าต่างใหม่
(bleepingcomputer.com)-
เมื่อเปิดหน้าต่างใหม่ด้วย
target="_blank"ได้มีการเปลี่ยนให้ทำงานเสมือนว่ามีการใช้rel="noopener"บังคับ เพื่อหลีกเลี่ยงปัญหาด้านความปลอดภัยที่ทำให้เข้าถึงหน้าเว็บต้นทางได้ -
Safari ใช้งานสิ่งนี้แล้วตั้งแต่ปี 2018
-
นักพัฒนาของ MS Edge ได้เพิ่มฟีเจอร์นี้เข้าไปใน Chromium ทำให้ถูกนำไปใช้กับทุกเบราว์เซอร์ เช่น Edge/Chrome/Brave
-
มีการเพิ่มเข้าไปใน Chrome Canary แล้ว และมีแผนจะปล่อยอย่างเป็นทางการใน Chrome 88 ที่จะออกในเดือนมกราคม 2021
3 ความคิดเห็น
ดูเหมือนว่าถ้าต้องการให้หน้าต่างใหม่เข้าถึงหน้าต่างแม่ได้เหมือนเดิม ก็ต้องเพิ่มแอตทริบิวต์
rel="opener"ให้กับแท็กaสำหรับเว็บไซต์ที่ไม่ได้รับการบำรุงรักษา การใช้ฟีเจอร์นี้ก็น่าจะก่อปัญหาได้พอสมควร
โดยส่วนตัวแล้ว เพื่อเชื่อมการทำงานระหว่างหน้าต่างแม่กับหน้าต่างลูก ผมเปิดป๊อปอัปแบบด้านล่างนี้
var childWin = window.open("", "childWin");
childWin.location.href = "https://news.hada.io";
ถ้าทำแบบนี้ ถึงทั้งหน้าต่างแม่และหน้าต่างลูกจะเปลี่ยนหน้าไปแล้ว ก็ยังควบคุมกันและกันได้
ผมมักใช้วิธีนี้ตอนเปิดเพลเยอร์เป็นป๊อปอัป
ประเด็นนี้คือเมื่อเปิดหน้าต่างใหม่ หาก JavaScript ของ URL ใหม่นั้นประสงค์ร้าย ก็อาจพาหน้าต้นทางไปยังที่อื่นได้ เช่น เว็บไซต์ฟิชชิง
สิ่งนี้อาจเกิดขึ้นได้กับเว็บไซต์ที่ผู้ใช้สามารถลงทะเบียน URL ได้ผ่านเนื้อหาหรือคอมเมนต์ เป็นต้น
ถ้าจะป้องกันเรื่องนี้ ก็ควรเพิ่ม
rel="noopener"เมื่อใช้targetตั้งแต่ตอนนี้เป็นต้นไป