Безпека Firefox: rel = noopener для target = _blank

Mozilla тестує нову функцію безпеки в Firefox Nightly, яка автоматично додає rel = "noopener" до посилань, які використовують target = "_ blank".

Target = "_ blank" вказує браузерам автоматично відкривати ціль посилання на новій вкладці веб-браузера; без цільового атрибуту посилання відкриються на одній вкладці, якщо користувачі не використовують вбудовану функціональність браузера, наприклад, утримуючи Ctrl або Shift, щоб відкрити посилання іншим способом.

Rel = "noopener підтримується всіма основними веб-браузерами. Атрибут гарантує, що відкривач вікон недійсний у сучасних браузерах. Null означає, що він не містить значення.

Якщо rel = "noopener" не вказано, пов'язані ресурси мають повний контроль над початковим об'єктом вікна, навіть якщо ресурси мають різні джерела. Цільове посилання може маніпулювати початковим документом, наприклад, замінити його на лоокаліке для фішингу, відображення на ньому реклами або маніпулювати ним іншим способом, який можна уявити.

Тут ви можете ознайомитись з демонстраційною сторінкою щодо зловживань rel = "noopener". Це нешкідливо, але підкреслює, як сайти призначення можуть змінювати початковий сайт, якщо атрибут не використовується.

Rel = "noopener" захищає вихідний документ. Вебмайстри можуть - і повинні - вказати rel = "noopener", коли вони використовують target = "_ blank"; ми вже використовуємо атрибут на всіх зовнішніх посиланнях тут, на цьому сайті.

Apple в жовтні здійснила зміну Safari, яка автоматично застосовує rel = noopener до будь-якого посилання, яке використовує target = _blank.

Нічна версія Firefox також підтримує функцію безпеки. Mozilla хоче збирати дані, щоб переконатися, що зміна не порушить нічого серйозного в Інтернеті.

Параметр dom.targetBlankNoOpener.enable контролює функціональність. Він доступний лише у Firefox 65 і встановлений у значення true за замовчуванням (це означає, що rel = "_ noopener" додано).

Користувачі Firefox можуть змінити налаштування для вимкнення функції. Хоча це не рекомендується через наслідки для безпеки, можливо, ви захочете це зробити, якщо у вас виникли проблеми із сумісністю.

  1. Завантажте про: config? Filter = dom.targetBlankNoOpener.enable в адресному рядку браузера.
  2. Підтвердьте, що ви будете обережні, якщо відобразиться попереджувальний рядок.
  3. Двічі клацніть на налаштування.

Значення true означає, що rel = "noopener" додається до посилань з target = "_ blank", значення false, що це не так.

Mozilla націлений на Firefox 65 для випуску Stable. Речі можуть затягуватися залежно від питань, про які можна повідомити чи помітити. Firefox 65 вийде 29 січня 2019 року (через Sören Hentzschel)