- SVG filtrelerini kullanan yeni bir clickjacking tekniği sunuldu ve geleneksel basit tıklama yönlendirme saldırılarını daha karmaşık, etkileşimli saldırılara dönüştürüyor
feColorMatrix, feDisplacementMap gibi SVG filtre öğelerinin cross-origin iframe'lere de uygulanabildiği doğrulandı; bu sayede görsel manipülasyon ve veri çıkarımı mümkün oldu
- Filtre kombinasyonlarıyla piksel okuma, mantıksal işlemler ve koşula dayalı UI manipülasyonu yapılarak çok aşamalı clickjacking veya girdi yönlendirme saldırıları uygulanabiliyor
- Gerçek bir örnekte Google Docs zafiyeti kullanılarak başarılı bir saldırı gerçekleştirildi ve araştırmacı Google VRP'den $3,133.70 ödül aldı
- Bu teknik, tarayıcı güvenlik modelinde yeni bir saldırı yüzeyi açığa çıkararak, SVG filtrelerinin mantıksal kullanımla güvenlik tehdidine dönüşebileceğini gösteriyor
SVG clickjacking'e genel bakış
- Geleneksel clickjacking, bir iframe'in üstüne yerleştirilmiş bir katmanla kullanıcının istemeden tıklama yapmasını sağlayan basit bir saldırı modeliydi
- Yeni sunulan SVG clickjacking, SVG filtreleri sayesinde karmaşık etkileşimler ve veri sızıntısı sağlar
feColorMatrix ve feDisplacementMap gibi filtrelerin cross-origin belgelere uygulanabildiği, böylece dış içeriklerin görsel olarak manipüle edilebildiği doğrulandı
SVG filtresinin bileşenleri
- Başlıca filtre öğeleri <feImage> , <feFlood> , <feOffset> , <feDisplacementMap> , <feGaussianBlur> , <feTile> , <feMorphology> , <feBlend> , <feComposite> , <feColorMatrix>
- Bu öğeler, giriş görüntüsünü birleştirip dönüştürerek yeni bir görüntü oluşturur ve zincir halinde bağlanabilir
- Bu kombinasyonlarla saldırganın görsel efekt, maskeleme, renk manipülasyonu gibi işlemleri istediği gibi uygulaması mümkün hale gelir
Saldırı örnekleri
- Sahte captcha (fake captcha):
feDisplacementMap kullanılarak metin bozularak kullanıcıdan hassas bir kod girmesi istenir
- Gri metin gizleme (grey text hiding):
feComposite ve feMorphology ile giriş kutusundaki ipucu veya hata mesajları kaldırılarak kullanıcı, saldırganın belirlediği parolayı girmeye yönlendirilir
- Piksel okuma (pixel reading): Belirli bir pikselin rengini algılayıp filtre davranışını kontrol ederek düğme tıklama, fareyle üzerine gelme ve giriş durumu algılama gibi dinamik tepki veren saldırılar uygulanır
Mantıksal işlem ve birleşik saldırılar
feBlend ve feComposite kombinasyonuyla AND, OR, XOR, NOT gibi mantıksal kapılar uygulanabilir
- Böylece SVG filtresi içinde tam bir mantık devresi kurulabilir ve çok adımlı clickjacking senaryoları otomatikleştirilebilir
- Örnek olarak ‘Securify’ uygulama saldırısında, pencere açma, onay kutusu tıklama ve düğme tıklama gibi adımlar mantıksal olarak kontrol edilerek kullanıcı kandırma yapısı kurulur
Gerçek örnek: Google Docs zafiyeti
- Google Docs'ta
Generate Document butonuna tıklandıktan sonra çıkan açılır pencere ve giriş alanı, SVG filtre tabanlı mantıkla algılanıp manipüle edilir
- Giriş alanının odak durumu, gri metin ve yükleme ekranı gerçek zamanlı olarak algılanarak saldırı akışı kontrol edilir
- Bu saldırı Google'a bildirildi ve $3,133.70 bug bounty ödülü verildi
QR kodu uygulamaları
- SVG filtre içinde QR kod üretim mantığı uygulanarak piksel verileri URL olarak kodlanır ve QR biçiminde gösterilebilir
- Kullanıcı QR kodu taradığında, veriler saldırganın kontrolündeki sunucuya iletilir
- Tarama yapılabilir QR üretimi için
feDisplacementMap ve Reed–Solomon hata düzeltme birlikte kullanılır
Ek kullanım senaryoları
- Metin okuma, tıklama tabanlı veri sızıntısı, sahte fare imleci ekleme gibi farklı saldırı senaryoları mümkündür
- JavaScript olmadan yalnızca CSS/SVG ile saldırı kurmak mümkün olduğu için CSP atlatma olasılığı ortaya çıkıyor
Araştırma bulgusu
- SVG filtreleriyle mantıksal işlem tabanlı clickjacking, önceki araştırmalarda ele alınmamış yeni bir saldırı tekniği olarak öne çıkıyor
- Önceki çalışmalar SVG'yi yalnızca basit görsel maskeleme amacıyla anarken, bu çalışma mantıksal yürütme ve etkileşim kontrolünü kanıtlıyor
- Araştırmacı bunu yeni bir zafiyet sınıfı olarak tanımlayarak, tarayıcı güvenlik modelinin yeniden gözden geçirilmesi gerektiğini vurguluyor
Sonuç
- Bu çalışma, SVG filtrelerini bir programlama dili gibi kullanan ilk güvenlik saldırısı örneği olarak değerlendiriliyor
- Yazar, 2025 sonu 39c3 ve Disobey 2026'da ilgili sunumların yapılacağını belirtiyor
- Gönderi, sadece HTML/CSS/SVG ile, görsel veya JS olmadan 42kB boyutunda hazırlandı ve deneysel güvenlik araştırmalarının yaratıcılığını gösteriyor
Henüz yorum yok.