<summary><strong>Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)</strong></a><strong>!</strong></summary>
* Ikiwa unataka kuona **kampuni yako ikionekana kwenye HackTricks** au **kupakua HackTricks kwa muundo wa PDF** Angalia [**MPANGO WA KUJIUNGA**](https://github.com/sponsors/carlospolop)!
* Pata [**swag rasmi ya PEASS & HackTricks**](https://peass.creator-spring.com)
* Gundua [**Familia ya PEASS**](https://opensea.io/collection/the-peass-family), mkusanyiko wetu wa [**NFTs**](https://opensea.io/collection/the-peass-family) za kipekee
* **Jiunge na** 💬 [**Kikundi cha Discord**](https://discord.gg/hRep4RUj7f) au [**kikundi cha telegram**](https://t.me/peass) au **tufuate** kwenye **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Shiriki mbinu zako za kudukua kwa kuwasilisha PRs kwenye** [**HackTricks**](https://github.com/carlospolop/hacktricks) na [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos za github.
Tumia [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) kuunda na **kutumia mchakato wa kiotomatiki** ulioendeshwa na zana za jamii za **kisasa zaidi** duniani.\
Katika shambulio la clickjacking, **mtumiaji** anadanganywa ili **bonyeze** kipengele kwenye ukurasa wa wavuti ambao ni **isiyoonekana** au imefichwa kama kipengele kingine. Udanganyifu huu unaweza kusababisha matokeo yasiyotarajiwa kwa mtumiaji, kama vile kupakua programu hasidi, kupelekwa kwenye kurasa za wavuti zenye nia mbaya, kutoa vibali au habari nyeti, uhamishaji wa pesa, au ununuzi wa bidhaa mtandaoni.
Marafiki ni rahisi kujaza thamani za uga wa fomu kwa kutumia vigezo vya GET wakati wa kupakia ukurasa. Mshambuliaji anaweza kutumia tabia hii vibaya kujaza fomu na data ya kiholela na kutuma mzigo wa clickjacking ili mtumiaji bonyeze kitufe cha Wasilisha.
Ikiwa unahitaji mtumiaji kujaza fomu lakini hauitaji kumuuliza moja kwa moja aandike habari fulani maalum (kama barua pepe na/au nenosiri maalum unayojua), unaweza tu kumuuliza a**Drag\&Drop** kitu ambacho kitaiandika data yako iliyodhibitiwa kama katika [**mfano huu**](https://lutfumertceylan.com.tr/posts/clickjacking-acc-takeover-drag-drop/).
Kwa kawaida, mashambulizi ya clickjacking yanahusisha hatua moja tu, ambapo mtumiaji anabonyeza kitu bila kujua. Hata hivyo, kuna njia ya kufanya mashambulizi ya clickjacking kuwa na hatua nyingi. Hii inaweza kuwa muhimu hasa wakati unataka kufanya vitendo vingi kwa niaba ya mtumiaji bila kujulikana.
Kwa kufanya hivyo, unaweza kutumia JavaScript ili kutekeleza hatua nyingi za clickjacking. Kwa mfano, unaweza kuunda kifungo kinachofichwa kwenye ukurasa ambao mtumiaji anabonyeza bila kujua. Bonyeza hii inaweza kusababisha hatua nyingine, kama vile kubonyeza kifungo kingine au kuingiza data kwenye fomu.
Kwa njia hii, unaweza kufanya vitendo vingi vya clickjacking kwa mtumiaji bila wao kujua. Ni muhimu kutambua kuwa njia hii inaweza kuwa ngumu zaidi kutekeleza kuliko mashambulizi ya clickjacking ya hatua moja, lakini inaweza kuwa na athari kubwa zaidi.
Clickjacking ni mbinu ya kudanganya ambapo mtumiaji anadanganywa kubonyeza kitu fulani kwenye ukurasa wa wavuti bila kujua. Mbinu hii inaweza kutumiwa kudhibiti vitendo vya mtumiaji au kuiba habari zao za siri.
Katika mbinu hii, tunatumia mchanganyiko wa vitendo vya kuvuta na kushusha (drag and drop) pamoja na bonyeza (click) ili kufanikisha clickjacking. Hatua zifuatazo zinaelezea jinsi ya kutekeleza mbinu hii:
1. Tengeneza ukurasa wa wavuti ambao unajumuisha kitu ambacho unataka mtumiaji abonyeze bila kujua.
2. Weka kitu hicho ndani ya kificho cha kuvuta na kushusha (drag and drop).
3. Ficha kitu hicho kwa kutumia CSS ili kisionekane kwenye ukurasa.
4. Weka kitufe cha bonyeza (click) juu ya kitu hicho kilichofichwa.
5. Ficha kitufe cha bonyeza (click) kwa kutumia CSS ili kisionekane kwenye ukurasa.
6. Wakati mtumiaji anapobonyeza kitu kingine kwenye ukurasa, hatua ya bonyeza (click) itatekelezwa kwenye kitu kilichofichwa badala ya kitu kilichoonekana.
Kwa kufuata hatua hizi, unaweza kutekeleza mbinu ya clickjacking kwa mafanikio. Ni muhimu kutambua kuwa mbinu hii inaweza kuwa na athari mbaya na inapaswa kutumiwa kwa madhumuni ya kielimu au kwa idhini ya mmiliki wa wavuti.
Ikiwa umegundua **shambulio la XSS ambalo linahitaji mtumiaji bonyeze** kwenye kipengele fulani ili **kuchochea** XSS na ukurasa huo ni **mdhaifu kwa clickjacking**, unaweza kulitumia kudanganya mtumiaji abonyeze kitufe/kiungo.\
Mfano:\
_Umeona **self XSS** katika baadhi ya maelezo ya siri ya akaunti (maelezo ambayo **wewe pekee unaweza kuweka na kusoma**). Ukurasa na **fomu** ya kuweka maelezo haya ni **mdhaifu** kwa **Clickjacking** na unaweza **kuweka tayari** fomu hiyo na vigezo vya GET._\
\_\_Mshambuliaji anaweza kuandaa shambulio la **Clickjacking** kwenye ukurasa huo **kwa kuweka tayari** fomu hiyo na **XSS payload** na **kumdanganya** mtumiaji abonyeze kitufe/kiungo. Hivyo, **wakati fomu inapotumwa** na thamani zinabadilishwa, **mtumiaji atatekeleza XSS**.
* **Mipangilio ya Usalama ya Vivinjari:** Baadhi ya vivinjari vinaweza kuzuia script hizi kulingana na mipangilio yao ya usalama au kutokuwepo kwa usaidizi wa JavaScript.
* **Sifa ya `sandbox` ya iframe ya HTML5:** Mshambuliaji anaweza kufanya script za kuvunja fremu kuwa haziwezi kwa kuweka sifa ya `sandbox` na thamani za `allow-forms` au `allow-scripts` bila `allow-top-navigation`. Hii inazuia iframe kuhakiki ikiwa ni dirisha kuu, kwa mfano,
`allow-forms` na `allow-scripts` huwezesha vitendo ndani ya iframe wakati inazuia urambazaji wa kiwango cha juu. Ili kuhakikisha utendaji unaokusudiwa wa tovuti inayolengwa, ruhusa za ziada kama vile `allow-same-origin` na `allow-modals` zinaweza kuwa muhimu, kulingana na aina ya shambulio. Ujumbe wa konsoli ya kivinjari unaweza kuongoza ni ruhusa zipi za kuruhusu.
Kichwa cha majibu cha HTTP cha **`X-Frame-Options`** kinawajulisha vivinjari kuhusu uhalali wa kuonyesha ukurasa katika `<frame>` au `<iframe>`, kusaidia kuzuia Clickjacking:
*`X-Frame-Options: sameorigin` - Kikoa cha sasa tu kinaweza kuweka yaliyomo.
*`X-Frame-Options: allow-from https://trusted.com` - Kikoa kilichotajwa tu kinaweza kuweka ukurasa.
* Tafadhali kumbuka vikwazo: ikiwa kivinjari hakisaidii agizo hili, huenda halifanyi kazi. Baadhi ya vivinjari vinapendelea agizo la CSP la frame-ancestors.
Maelezo zaidi na mifano ngumu zinaweza kupatikana katika [hati ya CSP ya frame-ancestors](https://w3c.github.io/webappsec-csp/document/#directive-frame-ancestors) na [hati ya CSP ya frame-ancestors ya Mozilla](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/frame-ancestors).
**Sera ya Usalama wa Yaliyomo (CSP)** ni hatua ya usalama inayosaidia kuzuia Clickjacking na mashambulio mengine ya kuingiza nambari kwa kuelezea vyanzo vipi kivinjari kinapaswa kuruhusu kupakia yaliyomo.
* **Uhakiki wa Vitambulisho:** Tumia vitambulisho vya anti-CSRF katika programu za wavuti ili kuhakikisha kuwa maombi yanayobadilisha hali yanafanywa kwa makusudi na mtumiaji na sio kupitia ukurasa uliofungwa.
Tumia [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) kujenga na kutekeleza kwa urahisi **mchakato wa kiotomatiki** ulioendeshwa na zana za jamii **za juu zaidi duniani**.\
<summary><strong>Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Ikiwa unataka kuona **kampuni yako inatangazwa katika HackTricks** au **kupakua HackTricks kwa muundo wa PDF** Angalia [**MPANGO WA KUJIUNGA**](https://github.com/sponsors/carlospolop)!
* Pata [**swag rasmi wa PEASS & HackTricks**](https://peass.creator-spring.com)
* Gundua [**The PEASS Family**](https://opensea.io/collection/the-peass-family), mkusanyiko wetu wa [**NFTs**](https://opensea.io/collection/the-peass-family) za kipekee
* **Jiunge na** 💬 [**Kikundi cha Discord**](https://discord.gg/hRep4RUj7f) au [**kikundi cha telegram**](https://t.me/peass) au **tufuate** kwenye **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
* **Shiriki mbinu zako za kudukua kwa kuwasilisha PR kwa** [**HackTricks**](https://github.com/carlospolop/hacktricks) na [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.