Çapraz kaynak hedeflerine bağlantılar güvenli değildir

target="_blank" özelliğini kullanarak başka bir sitedeki sayfaya bağlantı verdiğinizde siteniz performans ve güvenlik sorunlarına maruz kalabilir:

  • Diğer sayfa, sayfanızla aynı süreçte çalışıyor olabilir. Diğer sayfada çok fazla JavaScript çalıştırılıyorsa sayfanızın performansı olumsuz etkilenebilir.
  • Diğer sayfa, window.opener özelliğiyle window nesnenize erişebilir. Bu durum, diğer sayfanın, sayfanızı kötü amaçlı bir URL'ye yönlendirmesine neden olabilir.

rel="noopener" veya rel="noreferrer" eklemek target="_blank" bağlantılarınıza bu sorunları önler.

Lighthouse kaynaklar arası hedef denetimi nasıl başarısız olur?

Lighthouse, çapraz kökenli hedeflere yönelik güvenli olmayan bağlantıları işaretler:

Kaynaklar arası hedeflere giden güvenli olmayan bağlantıları gösteren Lighthouse denetimi.

Lighthouse, bağlantıları güvenli değil olarak tanımlamak için aşağıdaki süreci kullanır:

  1. target="_blank" özelliğini içeren ancak rel="noopener" veya rel="noreferrer" özelliklerini içermeyen tüm <a> etiketlerini toplayın.
  2. Aynı ana makineye ait bağlantıları filtreleyin.

Lighthouse, aynı ana makine bağlantılarını filtrelediğinden büyük bir site üzerinde çalışırken dikkat etmeniz gereken bir uç durum vardır. Bir sayfada, target="_blank" kullanılmadan sitenizdeki başka bir sayfaya target="_blank" bağlantısı varsa bu denetimin performansla ilgili etkileri geçerliliğini korur.rel="noopener" Ancak bu bağlantıları Lighthouse sonuçlarınızda görmezsiniz.

Sitenizin performansını artırma ve güvenlik açıklarını önleme

Lighthouse raporunuzda tanımlanan her bağlantıya rel="noopener" veya rel="noreferrer" ekleyin. Genel olarak, target="_blank" kullanırken her zaman rel="noopener" veya rel="noreferrer" ekleyin:

<a href="https://examplepetstore.com" target="_blank" rel="noopener">
  Example Pet Store
</a>
  • rel="noopener", yeni sayfanın window.opener özelliğine erişmesini engeller ve ayrı bir işlemde çalışmasını sağlar.
  • rel="noreferrer" aynı etkiye sahiptir ve Referer üstbilgisinin yeni sayfaya gönderilmesini de önler.

Daha fazla bilgi için Merkezler arası kaynakları güvenli bir şekilde paylaşma başlıklı makaleyi inceleyin.

Kaynaklar