# Clickjacking {% hint style="success" %} Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks * Check the [**subscription plans**](https://github.com/sponsors/carlospolop)! * **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %}
\ Use [**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_term=trickest&utm_content=clickjacking) to easily build and **automate workflows** powered by the world's **most advanced** community tools.\ Get Access Today: {% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=clickjacking" %} ## Clickjacking Nedir Bir clickjacking saldırısında, bir **kullanıcı**, bir web sayfasındaki **görünmez** veya farklı bir öğe olarak gizlenmiş bir **öğe** üzerine **tıklamaya** **kandırılır**. Bu manipülasyon, kullanıcının istemeden kötü amaçlı yazılım indirmesi, kötü niyetli web sayfalarına yönlendirilmesi, kimlik bilgileri veya hassas bilgilerin sağlanması, para transferleri veya ürünlerin çevrimiçi satın alınması gibi istenmeyen sonuçlara yol açabilir. ### Formları Önceden Doldurma Hilesi Bazen bir sayfa yüklenirken **GET parametrelerini kullanarak bir formun alanlarının değerini doldurmak** mümkündür. Bir saldırgan, bu davranışı kötüye kullanarak bir formu rastgele verilerle doldurabilir ve kullanıcının Gönder butonuna basması için clickjacking yükünü gönderebilir. ### Sürükle ve Bırak ile Form Doldurma Kullanıcının bir **formu doldurmasını** istiyorsanız ancak ona bazı özel bilgileri (bildiğiniz e-posta veya özel şifre gibi) yazmasını doğrudan istemek istemiyorsanız, ona sadece **Sürükle ve Bırak** yapmasını isteyebilirsiniz; bu, kontrol ettiğiniz verileri yazacaktır, [**bu örnekteki gibi**](https://lutfumertceylan.com.tr/posts/clickjacking-acc-takeover-drag-drop/). ### Temel Yük ```markup
Click me
``` ### Çok Aşamalı Yükleme ```markup
Click me first
Click me next
``` ### Sürükle\&Bırak + Tıkla yükü ```markup
.
1. Click and press delete button
3.Click me

2.DRAG ME TO THE RED BOX

``` ### XSS + Clickjacking Eğer bir **kullanıcının tıklamasını gerektiren bir XSS saldırısı** tespit ettiyseniz ve sayfa **clickjacking'e karşı savunmasızsa**, kullanıcıyı butona/bağlantıya tıklamaya kandırmak için bunu kötüye kullanabilirsiniz.\ Örnek:\ _Hesabın bazı özel detaylarında bir **self XSS** buldunuz (bu detayları **sadece siz ayarlayabilir ve okuyabilirsiniz**). Bu detayları ayarlamak için kullanılan **formun** bulunduğu sayfa **Clickjacking'e karşı savunmasız** ve **formu** GET parametreleri ile **önceden doldurabilirsiniz**._\ \_\_Bir saldırgan, **formu** **XSS yükü** ile **önceden doldurarak** o sayfaya bir **Clickjacking** saldırısı hazırlayabilir ve **kullanıcıyı** formu **göndermeye** **kandırabilir**. Böylece, **form gönderildiğinde** ve değerler değiştirildiğinde, **kullanıcı XSS'i çalıştıracaktır**. ## Clickjacking'i Azaltma Stratejileri ### İstemci Tarafı Savunmaları İstemci tarafında yürütülen betikler, Clickjacking'i önlemek için eylemler gerçekleştirebilir: * Uygulama penceresinin ana veya üst pencere olduğundan emin olmak. * Tüm çerçevelerin görünür olmasını sağlamak. * Görünmez çerçevelere tıklamayı önlemek. * Kullanıcıları potansiyel Clickjacking girişimlerine karşı tespit etmek ve uyarmak. Ancak, bu çerçeve kırıcı betikler aşılabilir: * **Tarayıcıların Güvenlik Ayarları:** Bazı tarayıcılar, güvenlik ayarlarına veya JavaScript desteğinin eksikliğine bağlı olarak bu betikleri engelleyebilir. * **HTML5 iframe `sandbox` Özelliği:** Bir saldırgan, `allow-forms` veya `allow-scripts` değerleri ile `sandbox` özelliğini ayarlayarak çerçeve kırıcı betikleri etkisiz hale getirebilir, `allow-top-navigation` olmadan. Bu, iframe'in üst pencere olup olmadığını doğrulamasını engeller, örneğin, ```html ``` The `allow-forms` ve `allow-scripts` değerleri, iframe içinde eylemleri etkinleştirirken üst düzey navigasyonu devre dışı bırakır. Hedeflenen sitenin beklenen işlevselliğini sağlamak için, saldırı türüne bağlı olarak `allow-same-origin` ve `allow-modals` gibi ek izinler gerekli olabilir. Tarayıcı konsol mesajları, hangi izinlerin verilmesi gerektiği konusunda rehberlik edebilir. ### Sunucu Tarafı Savunmaları #### X-Frame-Options **`X-Frame-Options` HTTP yanıt başlığı**, tarayıcılara bir sayfanın `` veya `