Koristiti varijable sesije A ne iz kolačiće
Jedna greška koju mnogi programeri čine je korištenje kolačiće, male tekstualne datoteke za pohranu podataka o našim zadacima na internetu, pristupima itd.
Jesu kolačiće može se lako čitati iz bilo kojeg preglednika, primjer u Firefox sa firebugom ili u Krom desnim gumbom zatim idemo na izbornik Pregledajte element.
Na slici možemo vidjeti primjer kako je programer stvorio kolačić za prijavu korisnika i javno izlaže pristupne podatke.
Sljedeća slika je još jedan gori primjer Google je indeksirao pristupe s korisnicima i lozinkama.
Ispravna stvar koju trebate učiniti je koristiti sesije u kojima su podaci kodirani.
Ovako bi izgledala kodirana varijabla sesije, mnogo sigurnija jer ju je teško čitati:
phpsessid= sb85p15841p6l1dfg7oo8hlsc85;
Zatim na svakom zaslonu provjeravamo sesiju na svakoj stranici koju otvorimo, pretpostavljamo da će to biti ograničeno područje.[veličina = 4] [/ veličina]
Sesije nisu potpuno rješenje kao što je to druga metoda hakiranja Otmica sesije ili Lažiranje sesije. To se događa ako napadač čita vrijednost sesije dok je prijavljen, a zatim joj pokuša pristupiti s drugog računala.
Da bismo to izbjegli, možemo stvoriti sesije koje spremaju podatke o opremi na kojoj je korisnik prijavljen.
S prethodnim kodom uspostavljamo sesiju koja sprema IP i preglednik s mjesta na kojem se pristupilo webu, zatim provjeravamo hoće li se dok je sesija aktivna netko pokušati prijaviti s drugog IP -a ili drugi preglednik neće moći pristupiti mreža
[veličina = 4] [/ veličina]
Nešto ovako radi Facebook, ako pristupate s drugog uređaja ili s drugog IP -a u drugom gradu, budući da se sprema s kojeg mjesta često pristupate.
Slučajevi testiranja ubrizgavanja XSS -a i SQL -a
Jedan od načina za pronalaženje ranjivih web stranica je stavljanje u tražilicu info_page.php = ili catalogo.php =
POVEĆAJTE
To će nam dati popis ranjivih web stranica, bilo koje web mjesto koje završava s .php? Varijabla = može biti ranjivo.Da bismo provjerili je li ranjiv, upisujemo url bez vrijednosti u varijablu primjera:
mydomain.com/info_page.php?id=
Ako je web ranjiv, odgovorit će s mysql pogreškom koja će reći sljedeće:Imate grešku u SQL sintaksi; provjerite priručnik koji odgovara vašoj verziji MySQL poslužitelja za pravu sintaksu koju ćete koristiti blizu "" u retku 1
Ako pronađemo domenu s ovom ranjivošću, možemo je testirati, ako pronađemo tablicu korisnika ili administratora i koliko stupaca ima:
www.mojadomena / info_page.php? id = -1 + unija + sve + odaberi + 1,2,3, group_concat (korisničko ime, 0x3a,
korisnik_lozinka), 5 + od + administratora
U ovom slučaju vratit će lozinku i administratorskog korisnika, kako biste izbjegli ubrizgavanje SQL -a, morate koristiti sesiju, a ne parametre po URL -u, u slučaju njihove upotrebe očistite parametre nekom funkcijom ili klasom koja provjerava da nema sql naredbi, ili javascript u parametru koji se šalje obrascem ili url -om.Je li vam se svidio i pomogao ovaj vodič?Autor možete nagraditi pritiskom na ovaj gumb kako biste mu dali pozitivan bod