# 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" %} ## Šta je Clickjacking U clickjacking napadu, **korisnik** je **prevaren** da **klikne** na **element** na veb stranici koji je ili **nevidljiv** ili prikazan kao drugi element. Ova manipulacija može dovesti do nepredviđenih posledica za korisnika, kao što su preuzimanje malvera, preusmeravanje na zlonamerne veb stranice, davanje kredencijala ili osetljivih informacija, transfer novca ili online kupovina proizvoda. ### Prepopunjavanje obrazaca trik Ponekad je moguće **popuniti vrednost polja obrasca koristeći GET parametre prilikom učitavanja stranice**. Napadač može zloupotrebiti ovo ponašanje da popuni obrazac proizvoljnim podacima i pošalje clickjacking payload tako da korisnik pritisne dugme Pošalji. ### Popuni obrazac sa Drag\&Drop Ako treba da korisnik **popuni obrazac** ali ne želite da ga direktno pitate da unese neke specifične informacije (kao što su email ili specifična lozinka koju znate), možete ga jednostavno zamoliti da **Drag\&Drop** nešto što će uneti vaše kontrolisane podatke kao u [**ovom primeru**](https://lutfumertceylan.com.tr/posts/clickjacking-acc-takeover-drag-drop/). ### Osnovni Payload ```markup
Click me
``` ### Multistep Payload ```markup
Click me first
Click me next
``` ### Drag\&Drop + Click payload ```markup
.
1. Click and press delete button
3.Click me

2.DRAG ME TO THE RED BOX

``` ### XSS + Clickjacking Ako ste identifikovali **XSS napad koji zahteva da korisnik klikne** na neki element da bi **pokrenuo** XSS i stranica je **ranjiva na clickjacking**, mogli biste to iskoristiti da prevarite korisnika da klikne na dugme/link.\ Primer:\ _Pronašli ste **self XSS** u nekim privatnim podacima naloga (podaci koje **samo vi možete postaviti i čitati**). Stranica sa **formom** za postavljanje ovih podataka je **ranjiva** na **Clickjacking** i možete **prepopuniti** **formu** sa GET parametrima._\ \_\_Napadač bi mogao pripremiti **Clickjacking** napad na tu stranicu **prepopunjavajući** **formu** sa **XSS payload** i **prevariti** **korisnika** da **pošalje** formu. Tako, **kada se forma pošalje** i vrednosti se modifikuju, **korisnik će izvršiti XSS**. ## Strategije za ublažavanje Clickjacking-a ### Klijentske odbrane Skripte koje se izvršavaju na klijentskoj strani mogu izvesti radnje kako bi sprečile Clickjacking: * Osiguranje da je prozor aplikacije glavni ili gornji prozor. * Činjenje svih okvira vidljivim. * Sprečavanje klikova na nevidljive okvire. * Otkrivanje i upozoravanje korisnika na potencijalne pokušaje Clickjacking-a. Međutim, ovi skripti za razbijanje okvira mogu biti zaobiđeni: * **Bezbednosne postavke pregledača:** Neki pregledači mogu blokirati ove skripte na osnovu svojih bezbednosnih postavki ili nedostatka podrške za JavaScript. * **HTML5 iframe `sandbox` atribut:** Napadač može neutralisati skripte za razbijanje okvira postavljanjem `sandbox` atributa sa `allow-forms` ili `allow-scripts` vrednostima bez `allow-top-navigation`. Ovo sprečava iframe da proveri da li je gornji prozor, npr., ```html ``` The `allow-forms` i `allow-scripts` vrednosti omogućavaju akcije unutar iframe-a dok onemogućavaju navigaciju na vrhunskom nivou. Da bi se osigurala nameravana funkcionalnost ciljanog sajta, dodatne dozvole kao što su `allow-same-origin` i `allow-modals` mogu biti neophodne, u zavisnosti od tipa napada. Poruke u konzoli pretraživača mogu pomoći u određivanju koje dozvole treba omogućiti. ### Server-Side Defenses #### X-Frame-Options **`X-Frame-Options` HTTP odgovor header** obaveštava pretraživače o legitimnosti prikazivanja stranice u `` ili `