Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Scripts

Linux user

Publicado por Alexandro Corrêa em 14/03/2009    [ 6785 hits ]

Login: Alex VirtualBoy, 592115 pontos

Homepage: http://www.monzeiros.com   


Descrição

Função que evita ataques do tipo MySQL Injection.

O uso de uma função deste tipo hoje em dia é obrigatório para se obter o mínimo de segurança. Deve ser utilizada em todas as variáveis que contiverem dados informados pelos usuários!

Para incluir no seu script, utilize a seguinte linha:

include_onde('anti_injection.php');

Exemplo de uso:

$nome = anti_injection($_POST['nome']);

Então a variável $nome estará segura para utilizar em consultas SQL.

[ Download: anti_injection.php ]   [ Enviar nova versão ]

[ Esconder código-fonte ]

<?php

# Função Anti MySQL Injection - Proteja suas aplicações!
# Por Alexandro G. Correa - Porto Alegre - RS
# alex.linux (at) gmail.com
# 13/03/2009

function anti_injection($sql){
   $sql = preg_replace(sql_regcase("/(from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/"), "" ,$sql);
   $sql = trim($sql);
   $sql = strip_tags($sql);
   $sql = (get_magic_quotes_gpc()) ? $sql : addslashes($sql);
   return $sql;
}

?>

Scripts recomendados
   Script Linux recomendado Segurança para sua página
   Script Linux recomendado Sistema de Login
   Script Linux recomendado Easy Login !!! OTIMO LOGIN !!!
   Script Linux recomendado Perfect Crypt Class
   Script Linux recomendado Login em PHP 3

Comentários
[1] Comentário enviado por Alex VirtualBoy em 14/03/2009 - 14:00h:

Amigos, apenas uma correção. O correto para incluir o script em seu site é:

include_once('anti_injection.php');

Um abraço!
Alex.

[2] Comentário enviado por eunaoacredito em 14/03/2009 - 14:52h:

Não seria mais simples... ?

http://php.net/en/mysql_real_escape_string

[3] Comentário enviado por Alex VirtualBoy em 14/03/2009 - 17:15h:

Se analisar o código, a mysql_real_escape_string é menos completa. O que posso garantir é que o script que publiquei sempre resolveu os problemas e nunca houve nenhum ataque de MySQL Injection bem-sucedido.

[4] Comentário enviado por pedroarthur.jedi em 16/03/2009 - 12:29h:

Boa... Mas se o texto for em inglês? Ou se o sujeito quiser mandar o outro digitar a tecla 'insert' do teclado?

[5] Comentário enviado por Alex VirtualBoy em 16/03/2009 - 14:47h:

Pedro, esta função pode ser utilizada em qualquer idioma... a linguagem SQL tem um padrão internacional. Sobre digitar "insert", não entendi mesmo...


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.