[+] Author : cRu3l.b0y
[+] Source : itshqip.com
---------------------------------------------------------------
Sigurimi i informacionit te uebfaqes sot eshte nje nder ceshtjet me
te rendesishme. Nese databaza juaj permban gjera te vlefshme, atehere
ato mund ti humbasesh apo te te vidhen .
Jo te gjithe webmasteret kane degjuar per SQL Injection. E di ju do te
thuani ?Kush don te hackoj faqen time?? apo ?Askush nuk do te hackoj
faqen time?.
Ju do te ishit injorant te vertet nese do mendonit keshtu, pasi
Nuk ju ka ndodhur ende, keshtu qe eshte me mire te parandaloni
keto sulme, ju do te shihni se nuk eshte e veshtire aspak.
Si punon SQL Injection?
SQL Injection eshte e mundur ne baze te user input ( POST, GET )
Me SQL Injection nje Hacker mund te fut/fshij/editoj te dhena, keshtu
mund te bej cdo gje me databazen tuaj, pra kontrrollon ate.
Ju duhet te mbyllni te dhenat Input, perpara se te perdoren ne nje
SQL Query. PHP ka dy funksione ne MySQL per mbylljen te user input
Pra: ?addslashes? (e vjeter) dhe ?mysql_real_escape_string? (e rekomanduar)
Ky funksion vlen per verzionet +4.30 te PHP, dmth verzionet me te reja
Se 4.30, keshtu qe se pari duhet te kontrrolloni nese ekziston ky funksion
?Mysql_real_escape_string? shton perpara nje backslash ( ) tek keto
karaktere: x00, , , , ', " dhe x1a.
Ky eshte nje funksion qe perdora une per te mbyllur input data perpara
se te perdoret ne te SQL Query.
function sql_quote( $value )
{
if( get_magic_quotes_gpc() )
{
$value = stripslashes( $value );
}
//Shikon nese funksioni ekziston
if( function_exists( "mysql_real_escape_string" ) )
{
$value = mysql_real_escape_string( $value );
}
//per verzionet ? 4.3.0 perdor addslashes
else
{
$value = addslashes( $value );
}
return $value;