← Tüm yazılar

Reverse Tabnabbing ve target='_blank' Riski: Küçük Bir Etiketin Büyük Etkisi

10 Eylül 2026

Reverse Tabnabbing ve target='_blank' Riski: Küçük Bir Etiketin Büyük Etkisi

target="_blank" ile yeni sekmede açtığınız dış bağlantılar, ilk bakışta zararsız görünür. Ancak rel özniteliği olmadan kullanıldığında, açtığınız sayfaya sizin sayfanızı manipüle etme imkânı verebilir. Bu tekniğe reverse tabnabbing denir ve özellikle oltalama için kullanılır. Neyse ki çözümü tek bir öznitelikle sağlanır.

Reverse tabnabbing nasıl çalışır?

Klasik davranışta, target="_blank" ile açılan yeni sekme, kendisini açan sayfaya bir referansa (window.opener) sahip olabilirdi. Açılan (dış) sayfa bu referansı kullanarak açan sekmeyi başka bir adrese yönlendirebilir:

// Açılan dış sayfada çalışan kod:
window.opener.location = "https://sahte-giris.example";

Kullanıcı ilk sekmeye geri döndüğünde, tanıdığı sitenin yerine birebir kopyalanmış bir sahte giriş sayfası bulur — ama sekme “arka planda” değiştiği için çoğu kişi bunu fark etmez ve kimlik bilgilerini girer. Saldırı, güvendiğiniz sitenin sekmesini sessizce ele geçirir.

Çözüm: rel=“noopener”

Bağlantıya rel="noopener" eklemek, açılan sayfanın window.opener referansını almasını engeller; böylece açan sekmeyi manipüle edemez:

<a href="https://dis-site.example" target="_blank" rel="noopener noreferrer">Bağlantı</a>
  • noopener: window.opener’ı null yapar; reverse tabnabbing’i engeller.
  • noreferrer: Ek olarak Referer başlığını göndermez (gizlilik); opener’ı da engeller.

İyi haber: modern tarayıcılar, target="_blank" bağlantılarında noopener’ı artık varsayılan olarak uygular. Yine de açıkça yazmak, eski istemciler ve tutarlılık için önerilir.

Ne zaman dikkat etmeli?

  • Kullanıcı içeriğindeki bağlantılar: Yorum, profil, mesaj gibi kullanıcı-üretimli bağlantılar target="_blank" ile açılıyorsa, rel="noopener noreferrer" mutlaka olmalı.
  • Eski kod tabanları: Modern varsayılanlar öncesi yazılmış sayfalar hâlâ savunmasız olabilir; taramalarda bu işaretlenir.

Özet

target="_blank" ile açılan dış bağlantılar, rel="noopener" olmadan açan sekmeyi manipüle edebilir (reverse tabnabbing) ve oltalamaya yol açar. Çözüm basittir: dış bağlantılara rel="noopener noreferrer" ekleyin. Modern tarayıcılar bunu varsayılan yapsa da, özellikle kullanıcı-üretimli içerikte açıkça belirtmek en güvenlisidir.

Kaynaklar: OWASP: Reverse Tabnabbing, MDN: rel=noopener.

Sitenizdeki dış bağlantılar reverse tabnabbing’e karşı korunuyor mu? CyberTestify’ın taraması bu tür ince ama yaygın riskleri değerlendirir.