5.6 KiB
SOME - Izvršavanje metoda sa istog izvora
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
- Radite li u kompaniji za kibernetičku bezbednost? Želite li da vidite svoju kompaniju reklamiranu na HackTricks-u? Ili želite da imate pristup najnovijoj verziji PEASS-a ili preuzmete HackTricks u PDF formatu? Proverite SUBSCRIPTION PLANS!
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Nabavite zvanični PEASS & HackTricks swag
- Pridružite se 💬 Discord grupi ili telegram grupi ili me pratite na Twitter-u 🐦@carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na hacktricks repo i hacktricks-cloud repo.
Izvršavanje metoda sa istog izvora
Postojaće situacije u kojima možete izvršiti neki ograničeni JavaScript na stranici. Na primer, u slučaju kada možete kontrolisati povratnu vrednost koja će biti izvršena.
U tim slučajevima, jedna od najboljih stvari koje možete uraditi je pristup DOM-u da biste pozvali bilo koju osetljivu akciju koju možete pronaći tamo (kao što je klik na dugme). Međutim, obično ćete ovu ranjivost pronaći na malim krajnjim tačkama bez ikakvih interesantnih stvari u DOM-u.
U tim scenarijima, ovaj napad će biti veoma koristan, jer je njegov cilj da zloupotrebite ograničeno izvršavanje JS-a unutar DOM-a sa druge stranice sa istog domena sa mnogo interesantnih akcija.
Osnovni tok napada je sledeći:
- Pronađite povratnu vrednost koju možete zloupotrebiti (potencijalno ograničenu na [\w\._]).
- Ako nije ograničeno i možete izvršiti bilo koji JS, jednostavno možete zloupotrebiti ovo kao redovni XSS.
- Naterajte žrtvu da otvori stranicu kojom upravlja napadač.
- Stranica će se otvoriti sama u novom prozoru (novi prozor će imati objekat
opener
koji se odnosi na početni prozor). - Početna stranica će učitati stranicu gde se nalazi interesantan DOM.
- Druga stranica će učitati ranjivu stranicu zloupotrebljavajući povratnu vrednost i koristeći objekat
opener
da pristupi i izvrši neku akciju na početnoj stranici (koja sada sadrži interesantan DOM).
{% hint style="danger" %}
Imajte na umu da čak i ako početna stranica pristupi novom URL-u nakon što je kreirala drugu stranicu, opener
objekat druge stranice i dalje je validna referenca na prvu stranicu u novom DOM-u.
Osim toga, da bi druga stranica mogla koristiti opener objekat, obe stranice moraju biti na istom izvoru. To je razlog zašto, da biste zloupotrebili ovu ranjivost, morate pronaći neku vrstu XSS-a sa istog izvora. {% endhint %}
Eksploatacija
- Možete koristiti ovaj obrazac da generišete PoC za iskorišćavanje ovog tipa ranjivosti: https://www.someattack.com/Playground/SOMEGenerator
- Da biste pronašli put do HTML elementa sa klikom, možete koristiti ovaj dodatak za pregledač: https://www.someattack.com/Playground/targeting_tool
Primer
- Možete pronaći ranjiv primer na https://www.someattack.com/Playground/
- Imajte na umu da u ovom primeru server generiše JavaScript kod i dodaje ga u HTML na osnovu sadržaja parametra povratnog poziva:
<script>opener.{callbacl_content}</script>
. Zato u ovom primeru ne morate eksplicitno navesti upotrebuopener
-a. - Takođe proverite ovaj CTF writeup: https://ctftime.org/writeup/36068
Reference
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
- Radite li u kompaniji za kibernetičku bezbednost? Želite li da vidite svoju kompaniju reklamiranu na HackTricks-u? Ili želite da imate pristup najnovijoj verziji PEASS-a ili preuzmete HackTricks u PDF formatu? Proverite SUBSCRIPTION PLANS!
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Nabavite zvanični PEASS & HackTricks swag
- Pridružite se 💬 Discord grupi ili telegram grupi ili me pratite na Twitter-u 🐦@carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na hacktricks repo i hacktricks-cloud repo.