· Hakan Çelik · Güvenlik · 1 dk okuma

Clickjack Tuzagını Engellemenin Yolu

Clickjacking'e karşı JavaScript tabanlı frame busting çözümleri neden yetersiz kalır? X-Frame-Options ve Content-Security-Policy header'larıyla bu saldırıyı doğru şekilde nasıl engellersiniz, anlattım.

Clickjack Tuzagını Engellemenin Yolu

Araştırdığım zaman bu açığın bir kaç satır javascript kodu ile de engellenebildiğini ve sağlıklı olmadığını okudum.

X-Frame-Options Nedir?

Kendileri HTTP response header’i olup, X-Frame-Options Bir tarayıcının <frame>, <iframe>, <embed> veya <object> içinde bir sayfa oluşturmasına izin verilip verilmeyeceğini belirtmek için bu HTTP yanıt başlığı (X-Frame-Options) kullanılabilir. Siteler, içeriğinin başka sitelere gömülmemesini sağlayarak, tıklatma saldırılarını ( clickjack ) önlemek için bunu kullanır. Kısacası bu tuzağı engellemenın yolu X-Frame-Options’dan geçer, peki ama nasıl?

X-Frame-Options için 3 olası sonuç vardır.

X-Frame-Options: deny
X-Frame-Options: sameorigin
X-Frame-Options: allow-from https://example.com/
  • deny bütün alan adlarına izin verir
  • sameorigin yalnızca sayfanın kendisi ile aynı kökene sahip bir çerçevede olduğunda izin verir, bundan dolayı kullanımı pek tavsiye edilmez, birden fazla siteye istemeden izin vermiş olabilirsiniz.
  • allow-from https://example.com/ sadece example.com sitesine izin verir.

Not; Html dosyamızda <head> </head> etiketleri arasına <meta http-equiv="X-Frame-Options" content="deny"> yazarak engellenemez.

Örnek olarak stackoverflow’da bir arkadaşın isyanına bakabilirsiniz, x-frame-options-is-not-working-in-meta-tag

Back to Blog

Related Posts

View All Posts »
Clickjack Tuzagı Saldırısı Nedir

Clickjack Tuzagı Saldırısı Nedir

Bu tür bir saldırı kötü niyetli site bir kullanıcıyı gizli bir çerçeveye ( frame ) veya iframe'e yükledikleri başka bir sitenin gizli bir öğesine tıklamaya zorladığında oluşur.