Clickjacking: görünmez bir frame üzerinden çalınan tıklamalar
Herhangi bir site sayfanı bir frame'e koyabiliyorsa, frame'i görünmez yapıp senin bir butonunu ziyaretçinin tıklamak istediği bir şeyin altına hizalayabilir.
Örnek
HTTP/1.1 200 OK
Content-Type: text/html
(no X-Frame-Options, no CSP frame-ancestors)Content-Security-Policy: frame-ancestors 'self'
X-Frame-Options: DENYNasıl oluşur
Saldırganın sayfası seninkini şeffaf bir iframe'de yükler ve "Hesabı sil", "Ödemeyi onayla" veya "Kameraya izin ver" zararsız görünen bir butonun altına gelecek şekilde konumlandırır. Ziyaretçi sitende giriş yapmış durumdadır; tıklama gerçektir. Tek tıkla durum değiştiren her sayfa hedeftir.
Nasıl düzeltilir
Tarayıcıya seni kimin frame'e alabileceğini söyle.
- Content-Security-Policy: frame-ancestors 'self' (veya 'none')
- Eski tarayıcılar için X-Frame-Options: DENY veya SAMEORIGIN
- Her HTML yanıtında header olarak gönder
- İkinci savunma hattı olarak yıkıcı işlemlerde onay iste
RepoVerse bunu nasıl bulur
- OrtaSayfalar herhangi bir site tarafından frame içine alınabiliyor
Başka bir site sayfalarını görünmez bir frame'de açıp giriş yapmış ziyaretçiyi göremediği butonlara tıklatabilir — ayarları değiştirmek, ödeme onaylamak.
web sitesi · CWE-1021
Sorular
- frame-ancestors'ı meta etiketinde ayarlayabilir miyim?
- Hayır. Tarayıcılar <meta> CSP'deki frame-ancestors'ı yok sayar; bir HTTP header'ı olmalıdır.
- Sayfam gömülmek için tasarlandıysa?
- Frame'e almayı herkese açık bırakmak yerine gömmesine izin verilen siteleri frame-ancestors'ta listele.
İlgili
- Content Security Policy: gerçekten koruyan bir politika yazmakXSS'i gerçekten durduran bir Content-Security-Policy yaz: unsafe-inline ve unsafe-eval neden zayıflatır, nonce ve strict-dynamic, başlangıç politikası.
- CSRF: kullanıcılarının hiç göndermek istemediği isteklerCSRF (CWE-352) giriş yapmış bir ziyaretçinin tarayıcısına sitene nasıl form gönderttirir; CSRF token'ları ve SameSite cookie'leri bunu nasıl durdurur.
- Her eksik için çözümüyle güvenlik header kontrolüSitenin HTTP güvenlik header'larını kontrol et — Content-Security-Policy, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy — her eksik için eklenecek satırla.
Güncellendi 2026-10-11