[NRPPZW] 2. projekt - 2021/2022
LucidDreamer
reygrep ako te ista tjesi i ja sam uzeo zadnju znamenku
Gocc
Događa li se nekome da koristi express-xml-bodyparser i da ne uspije dohvatiti sadržaj zapisan u čvorovima, da Mu ispiše Invalid character ; kada npr referencira &bar;
LucidDreamer
*** nisam ti koristio express-xml-bodyparser ali jesam xml2js i nisam imao problema s tim tako da probaj tako
Gocc
LucidDreamer može li se s takvim parserom parsirati ovako neki xml uopce? Jer potrebno je ispisati sadržaj datoteke,a ne vidim drugi način da se to napravi, a s tim parserom mi vraća undefined.
jer jedan od zadataka je “Dohvaćanje datoteke na poslužitelju i ispis sadržaja datoteke putanjom zapisanom u čvor parsirane XML datoteke” ne znam kako bi to s tim ostvarila
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
<!ELEMENT foo ANY>
<!ENTITY xxe SYSTEM
"file:///etc/passwd">
]>
<foo>
&xxe;
</foo>
ili pak ovako nešto jel se može? meni ne prolazi
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE foo [
<!ELEMENT foo ANY>
<!ENTITY bar "World">
]>
<foo>
Hello &bar;
</foo>
laranotreallycroft
VelikiMarko
Ako ce ikom pomoc, ja ovak napravila:
Postoji neka vulnerable stranica na kojoj se korisnik logira i dobije cookie.
Ja sam stavila odma na toj str gumb koji vodi na stranicu napadaca.
Napadac stranicu nisam zasebno hostala, samo nova html stranica na istom serveru.
Moj switch za ranjivost radi tako da basically imam na serveru GET i POST verziju za isti URL, pa sam i napravila dve verzije napadac stranice na koju se s gumba redirecta ovisno o switchu.
Stranice su jako jednostavne, na njima je basically samo taj img tag unutar kojeg je URL koji je ovisno o verziji ili formata za GET, znaci ima parametre u URL, ili je samo POST bez parametara. Za ovaj njihov alert sta su napisali sam samo u script tagu na napadacevim stranicama stavila da alerta document cookie.
So_Done
laranotreallycroft
Problem je sto ovo zadnje (display iz Document.cookie) funkcionira samo ako se napadaceva stranica nalazi na istoj domeni kao stranica koja je izdala cookie (sto je IRL nemoguce). Cookieu moze pristupiti samo stranica koja ga je napravila, sto je u tvom slucaju localhost:{port}.
U zadatku se trazi izvlacenje i prikaz informacije iz cookiea pomocu get zahtjeva ubacenog u img src atribut, sto jednostavno nikako nije moguce.
Klasicni CSRF ukljucuje izvrsavanje nekakve akcije pomocu get zahtjeva (ako bi stvoritelji api-a bili toliko glupi da get zahtjevom implementiraju akciju). Unatoc tome sto je u materijalima kao sluzbeni lijek za CSRF navedeno koristenje post zahtjeva, CSRF je itekako moguc s postom, samo eto nositelji predmeta valjda nisu culi za to.
Jedini scenarij gdje je dohvacanje podataka CSRF napadom moguce je ako se kroz CORS eksplicitno propusti stranica napadaca ili propustanjem “*” odnosno svih mogucih adresa. Tada je u Javascriptu moguce izvrsiti dohvat podataka i poslati ih gdje god. Taj napad se onda oslanja na 2 ranjivosti.
Jedini ispravan nacin demonstracije CSRF-a je ili get ili post zahtjevom koji nesto radi, kao promjena lozinke, postanje neke informacije, trigger za izvrsavanje necega i slicno. Get zahtjev je moguce strpati u img src, dok je za post potrebna neka self-submitting forma.
m21
Može li se dobiti IP adresa klijenta iz HTTP zahtjeva
laranotreallycroft
So_Done
Ma da, kuzim sve to kaj si napisao i znam da nema smisla to sta oni zele da napravimo, al idk napisali su da ne treba zasebna stranica napadaca, a ovaj alert iz browsera sam protumacila kao da samo vidimo da cookie zapravo postoji i da ce se njime autentificirati request na tu stranicu
anon00
Je li postoji neki odredeni framework u kojem ovo trebamo napraviti (ili treba biti plain JS/HTML) ili imamo slobodan odabir?
iNavy
anon00 slobodan odabir
Lusy
Je li iko skuzio kako napravit nesigurnu deserijalizaciju?
karla_cd
Na ovom je linku donekle dobro objašnjeno
shoshakis
Evo odgovor na moj ticket s XXE:
Gocc
teshna kako taj pseudojezik iskoristiti za file inclusion ne kužim
Bisolvon
*** Mislim da je tu mislio samo za izvođenje js-a.
LucidDreamer
ja sam mu poslao isto pitanje i valjda nas 10 jos i nikom nemre normalno odgovorit
MiqeloS
Jel imao još netko problem sa spajanjem na bazu? Nije bitno je li http/https (sa mojim certifikatom), stalno mi obo baca, spajam se na PostgreSQL koji se hosta na Heroku
Mike
Iskreno, malo mi je bedasto što moramo ugrađivati ranjivosti u web stranice. Kod dosta ovih slučajeva je veća zajebancija ugraditi ranjivost nego ju izbjeći. Bilo bi mi logičnije da smo trebali napraviti web stranicu i onda da se ispita postoji li ranjivost koja se previdjela (npr. u peer reviewu moramo odraditi 10 različitih vrsta napada na stranicu).
Da ne spominjem da me malo strah što će se dogoditi na cloud provideru jer sam morao namjerno to šupljikavo odraditi 😅
anon00
Treba implementirati nesigurnu i sigurnu verziju zadatka
Sad mene zanima je li pod sigurnu verziju mozemo samo koristiti vec gotov ‘plugin’ koji je zasticen protiv tog napada?
Konkretan primjer: SQL injection
Koristio bih pg za express kojem mogu rucno upisati nesigurni SQL ili mogu koristiti njegov parametrizirani SQL upit koji je zasticen protiv SQL injectiona
Je li to onda okej rjesenje ili se ocekuje da rucno rijesimo sigurnu verziju na nacin da napravimo nekakv parser SQL-a?
MrPeanutButter
anon00 to je ok po meni