Vou dar um exemplo em PHP.
1 – Uma boa forma de evitar ataques de sql injection é retirando os principais caracteres usados em ataques maliciosos.
function nosql($string){
$string =str_replace(“‘”,”",$string);//aqui retira aspas simples <’>
$string =str_replace(“\\”,”",$string);//aqui retira barra invertida<\\>
$string =str_replace(“UNION”,”",$string);//aqui retiro o comando UNION <UNION>
return $string
}
2 – Outra forma tambem bastante usada é o comando: mysql_real_escape_string
mais informações no link: http://php.net/manual/pt_BR/function.mysql-real-escape-string.php
3 – Você pode tambem criar funcoes anti-sqlinjection para numeros/codigos.
Um exemplo bom é quando você passa um codigo via GET['codid'] ou POST['codid'].
Ao receber esta variavel via get/post você pode validar si realmente é numero ou string.
Codigo:
if (is_numeric($_GET['codid'])==false) {$cod =get_magic_quotes_gpc() ? stripslashes($_GET['codid']) : $_GET['codid'];$cod = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($cod) : mysql_escape_string($cod);$cod =(int)$cod; }else{ print 'error'; header("location:error.php"); exit; }
0 comentários:
Postar um comentário