Pogledajte određenu poruku
Staro 08. 11. 2006.   #24
Ivan
Psychedelictrance freak
Wrote a book
 
Avatar Ivan
 
Datum učlanjenja: 04.06.2006
Lokacija: Srbija, Beograd
Poruke: 1.008
Hvala: 325
933 "Hvala" u 34 poruka
Ivan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoro
Pošaljite poruku preko Skype™ za Ivan
Default

Hm, vidim da je ovde iznete dosta pametnih stvari ali ajde da probam da sumiram ...

Prvo i najvaznije pravilo koje svi treba da zapamtimo je: Filtrirati ulaz i escajpapovati izlaz.

Sto znaci da ulazni podaci mogu biti samo oni koje nasa aplikacija moze i sme da koristi. U konkretnom slucaju, najpamentnije resenje sa gledista sigurnosti je koriscenje switch-a. Tj za svaki zahtev postoji deo koda koji barate njime. Sve ostale metode se mogu lakse ili teze exploitovati, dodavanjem specijalnih karaktera ili losom konfiguracijom servera. Dalje npr, ako su nam potrebni samo brojevi u nasam scriptu koje dobijamo preko GET-a onda ogranicite te varijable na brojeve. Ne ostavljajte mesta za nehendlovane situacije.
Sto se tice izlaza, uvek treba prikazivati samo ono sto smemo da prikazemo a to znaci da sav kod koji moze da se izvrsi u browseru usera a ne treba biti izvrsen treba sanitizovati.

Za pocetak je dovoljno poslusati ovaj savet gore jer cete se tim nacinom kodovanja osloboditi vecine XSS, CSLF, SQL injectiona, Directory Traversal, include propusta ...
Neko je vec rekao da treba forsirati POST sto je delimicno tacno jer ce tako skinuti scriptkiddie sa vrata ali to ipak nije pravo resenje.

Citat:
$page = isset($_GET['page']) ? $_GET['page'] : 'homepage';
Ovakav nacin pisanja koda (Ternary Operator) nije pozeljan zbog preglednosti koda.

Neko je pomenuo mod_security, a takodje i neka podesvanja u samom php-u ... Sve ovo resava neke sigurnosne probleme ali poenta je napisati siguran kod bez pomocnih sredstava jer u svakom trenutku moze doci do promene konfiguracije servera.

Citat:
Za vise informacija, mozda da potrazis "Php Architect Guide to Security", mislim da se tako zove knjiga.
Za pocetak:
http://phpsecurity.org/
http://phpsec.org/projects/guide/sr/

E kad ovo predjete onda krece pravo zezanje Ajax, CSRF, i sl ...
Ivan je offline   Odgovorite uz citat