2 minute read

Clickjacking, kurbanların kandırılarak sahte bir web sitesindeki tıklanabilir içeriğe tıklamasından sonra gizli bir web sitesindeki başka bir eylemi gerçekleştirmek için tasarlanan arayüz tabanlı bir saldırıdır.

Örneğin kurban ödül kazanmak için bir butona tıklar ve bilmeden saldırgan tarafından gizlenmiş başka bir web sitesinde ödeme yapar. Teknik bir iframe içinde bir düğme veya gizli bağlantı içeren görünmez işlem yapılabilir web sayfasının dahil edilmesiyle alakalıdır.

Lab 1 Lab 2 Lab 3 Lab 4 Lab 5

Lab-1 Basic clickjacking with CSRF token protection

Bu laboratuvardaki oturum açma fonksiyonu ve CSRF token tarafından korunan bir hesap sil butonu içermektedir. Lab’ın tamamlanması için hesap silmeye neden olan bir Clickjacking saldırısı gerçekleştirilmelidir.

wiener:peter bilgileri ile giriş yaptıktan sonra My Account kısmında Delete Account butonu görüntülenmektedir. iframe kullanarak ilgili sayfanın üzerine sahte bir web sayfası hazırlanmaktadır ve tam Delete account butonunun üzerine kurbanın tıklaması için tıklanılabilir bir nesne oluşturulmaktadır.

image-center

image-center

Daha sonrasında sahte web sitesi kurbana gönderilerek Click Me adlı sahte butona tıklanması beklenmektedir. Kurban butona tıklayınca hesabı silinerek tab tamamlanmaktadır.

image-center

Lab-2 Clickjacking with form input data prefilled from a URL parameter

Bu lab bir önceki lab’ın devamıdır. Lab’ın amacı URL parametresini kullanarak bir formu öncedne doldurup, kullanıcıyı “E-posta güncelle” butonuna tıklatmaktır.

Verilen bilgilerle giriş yaptıktan sonra Update email butonu görüntülenmektedir.

image-center

Kurbanın Update email butonuna tıklaması için sahte iframe hazırlanmaktadır. Kurban butona tıkladığında eposta zararlı web sitesinde ayarlanmış olan e-postaya dönüşmektedir.

image-center

image-center

Lab-3 Clickjacking with a frame buster script

Bu lab web sitesinin frame’lenmesini önleyen bir frame buster kullanmaktadır. Lab, frame buster’ı atlatıp e-posta değiştirmeye neden olan bir Clickjacking saldırısı düzenlenmesini istemektedir.

Verilen bilgiler ile hedef sisteme giriş yapıldığında aşağıdaki görsel görüntülenmektedir.

image-center

Sahte bir web sitesi ayarlayıp kurbana tıklatarak e-posta verisini değiştirmeyi hedeflemekteyiz. Fakat frame buster bu süreci zorlaştırmaktadır. Buna çözüm iframe attribute olan sandbox değerini allow-forms olarak değiştirmektir.

image-center

image-center

Lab-4 Exploiting clickjacking vulnerability to trigger DOM-based XSS

Bu lab tıklama ile tetiklen bir XSS güvenlik zafiyetine sahiptir. Lab’ın tamamlanması için kullanıcının “Click Me” butonuna basması sonucu oluşan bir alert() komutu çalıştırılmalıdır.

Hedef web sitesindeki geri bildirim fonksiyonunda bulunan “name” değerinde XSS güvenlik zafiyeti bulunmaktadır. Kurban “Click me” butonuna tıkladıktan sonra payload geribildirim fonksiyonuna giderek XSS’i tetiklemektedir ve bu durum da print() fonksiyonunu çalıştırmaktadır.

image-center

image-center

Lab-5 Multistep clickjacking

Bu lab CSRF token tarafından korunan bazı fonksiyonlara ve Clickjacking’e karşı koruma sağlamak için onay iletişim kutusuna sahiptir. Lab’ın tamamlanması için “Click me first” and “Click me next” sahte butonlarına kurbanın tıklaması gerekmektir. Bu durum gerçekleştiğinde kurbanın hesabı silinmektedir ve lab tamamlanmaktadır.

Hesap silme fonksiyonu iki adımlıdır önce Delete Account dedikten sonra Yes butonuna tıklanması gerekmektedir.

image-center

image-center

Bu yüzden sahte web sitesinde iki adımlı bir tıklama süreci bulunması gerekmektedir.

image-center

image-center

Kurban Test me first butonuna tıkladıktan sonra açılan pencerede Test me next butonuna tıklamaktadır. Paylodan kurban kullanıcıya gönderilmeden önce butonlardaki “Text” yazıları “Click” yazısıyla değiştirilmelidir.

image-center

image-center