Er min sikkerhed optimal for opret bruger og login?

Tags:    php

Hejsa, jeg tænkte på om der er nogen der vil se på mit opret bruger, og login, og se om min sikkerhed er optimal?

Opretbruger.php
Fold kodeboks ind/udPHP kode 


opretbruger_ok.php
Fold kodeboks ind/udPHP kode 


Login.php
Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 21.09.2009 15:46 af Bruger #14124
Du bør lige tjekke om magic quotes er enabled, og i så fald unescape dine brugerdata, inden du escaper dem med mysql_escape_string. Men faktisk bør du bruge mysql_real_escape_string, som tager højde for det karakter sæt, som mysql serveren bruger.

Derudover bør du ikke bruge htmlspecialchars på data, som skal i databasen. Brug den hellere på dataene inden du skriver dem tilbage til brugeren.

Og så skal du også escape IP adressen, som du henter gennem $_SERVER['REMOTE_ADDR'], da du ellers åbner for SQL injections.

Dit tjek af e-mail adressens gyldighed er efter min mening lige lidt for simpel.



magic quotes, kan jeg få den på dansk?

Hvad mener du med unescape?
Hvad kan der ske ved at jeg ikke tjekker ip´en, den kan vel ikke ændres til noget farligt?



magic quotes, kan jeg få den på dansk?

Hvad mener du med unescape?
Hvad kan der ske ved at jeg ikke tjekker ip´en, den kan vel ikke ændres til noget farligt?


Magic quotes:
Post variable, get variable og cookies bliver automatisk escapet af PHP hvis magic quotes er enabled. Altså for at gøre mysql_escape_string/mysql_real_escape_string overflødig. Men det bliver ikke gjort helt korrekt i alle tilfælde, der er mysql bedre til det selv. Så hvis magic quotes er enabled, så skal du først unescape dine variable:
Fold kodeboks ind/udKode 

Læs mere her: http://dk2.php.net/manual/en/security.magicquotes.php

Mht. IP adressen, så KAN man faktisk ændre den. PHP sætter $_SERVER['REMOTE_ADDRESS'] til IP adressen, som bruges til kommunikation med klienten ELLER til værdien af x-forwarded-for HTTP headeren. X-forwarded-for bruges af proxy servere til at indikere IP adressen af klienten, som proxyen arbejder for. Men PHP tjekker ikke, at værdien giver mening, så man kan smide hvad som helst i denne header. Derfor skal også denne værdi anses for at være farlig.



Indlæg senest redigeret d. 21.09.2009 21:17 af Bruger #2695
t