Um pouco de Conceito sobre a técnica de SQL Injection:
A Injeção de SQL, mais conhecida através do termo americano SQL Injection, é um tipo de ameaça de segurança que se aproveita de falhas em sistemas que interagem com bases de dados via SQL. A injeção de SQL ocorre quando o atacante consegue inserir uma série de instruções SQL dentro de uma consulta (query) através da manipulação das entrada de dados de uma aplicação.Agora vamos ao mais importante, o código:
Fonte: http://pt.wikipedia.org/wiki/Injeção_de_SQL
function noSqlInjection($string){
$string = trim($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>
$banlist = array(" insert", " select", " update", " delete", " distinct", " having", " truncate", "replace"," handler", " like", " as ", "or ", "procedure ", " limit", "order by", "group by", " asc", " desc","'","union all", "=", "'", "(", ")", "<", ">", " update", "-shutdown", "--", "'", "#", "$", "%", "¨", "&", "'or'1'='1'", "--", " insert", " drop", "xp_", "*", " and");
// ---------------------------------------------
if(eregi("[a-zA-Z0-9]+", $string)){
$string = trim(str_replace($banlist,'', strtolower($string)));
}
return $string;
}//END function noSqlInjection($string)
ideia genial, simples e funcional
ResponderExcluirvaleu..... obrigado.... grande abraço.
Excluir