SOME - Same Origin Method Execution
WhiteIntel je pretraživač pokrenut na dark web-u koji nudi besplatne funkcionalnosti za proveru da li je kompanija ili njeni korisnici kompromitovani od strane malvera za krađu podataka.
Primarni cilj WhiteIntela je borba protiv preuzimanja naloga i napada ransomvera koji proizilaze iz malvera za krađu informacija.
Možete posetiti njihovu veb lokaciju i isprobati njihovu mašinu za besplatno na:
Izvršenje metoda sa istog izvora
Postojaće situacije u kojima možete izvršiti određeni JavaScript na stranici. Na primer, u slučaju kada možete kontrolisati vrednost povratnog poziva 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 pronaći ovu ranjivost u malim krajnjim tačkama bez bilo čega zanimljivog u DOM-u.
U tim scenarijima, ovaj napad će biti veoma koristan, jer je cilj da možete zloupotrebiti ograničeno izvršenje JS unutar DOM-a sa druge stranice sa istog domena sa mnogo zanimljivih akcija.
Osnovno, tok napada je sledeći:
Pronađite povratni poziv koji možete zloupotrebiti (potencijalno ograničen na [\w\._]).
Ako nije ograničen i možete izvršiti bilo koji JS, možete jednostavno zloupotrebiti ovo kao redovan XSS
Naterajte žrtvu da otvori stranicu koju kontroliše napadač
Stranica će se sama otvoriti u različitom prozoru (novi prozor će imati objekat
opener
koji referiše na početni)Početna stranica će učitati stranicu gde se nalazi zanimljiv DOM.
Druga stranica će učitati ranjivu stranicu zloupotrebljavajući povratni poziv i koristeći objekat
opener
da pristupi i izvrši neku akciju na početnoj stranici (koja sada sadrži zanimljiv DOM).
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 objekat opener, obe stranice moraju biti na istom izvoru. To je razlog zašto, da biste zloupotrebili ovu ranjivost, morate pronaći neku vrstu XSS-a na istom izvoru.
Eksploatacija
Možete koristiti ovaj obrazac da generišete PoC za eksploataciju ovog tipa ranjivosti: https://www.someattack.com/Playground/SOMEGenerator
Da biste pronašli putanju DOM-a do HTML elementa sa klikom, možete koristiti ovaj browser dodatak: 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 korišćenjeopener
.Takođe proverite ovaj CTF writeup: https://ctftime.org/writeup/36068
Reference
Last updated