Bom tipo tem como vc postar como colocar isso no site ?
vo postar meu antigo sistema de anti-inject, pois fiz um bem melhor e esse não me serve mais!
To postando aqui por que nao achei uma area especifica.
classe:
Código PHP:
<?php
if(substr_count(strtolower(basename($_SERVER['REQUEST_URI'])), basename(__FILE__)) > 0)
die("<strong> Acesso não autorizado. </strong>");
/*
-> Classe desenvolvida por litlle
-> Anti-Inject bloquenado caracteres especiais
-> Última revisão 01/12/2010 - 19:12
*/
//Verifica se a classe já não foi instanciada
if(class_exists('security') == false)
{
//Cria a classe
class security {
// Declaração da Variável
var $caracteres;
// Função que declara os metodos como global
public function security() {
$this->blocked();
//Pega o conteudo do metodo $_POST
foreach ($GLOBALS['_POST'] as $string)
{
//Inicializa a função de checar o metodo
$this->check_method($string);
}
//Pega o conteudo do metodo $_GET
foreach ($GLOBALS['_GET'] as $string)
{
//Inicializa a função de checar o metodo
$this->check_method($string);
}
//Pega o conteudo do metodo $_COOKIE
foreach ($GLOBALS['_COOKIE'] as $string)
{
//Inicializa a função de checar o metodo
$this->check_method($string);
}
}
//funcao que gera o log
private function generate_log($value) {
$var = str_replace("\\", "", $value);
$data = date("d/m/y h:i:s A");
$navegador = $_SERVER['HTTP_USER_AGENT'];
$ip = $_SERVER['REMOTE_ADDR'];
$ip_reverso = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$metodo = $_SERVER['REQUEST_METHOD'];
$local = $_SERVER['REQUEST_URI'];
$log = "IP: ".$ip."\r\n";
$log .= "IP Reverso: ".$ip_reverso."\r\n";
$log .= "Data: ".$data."\r\n";
$log .= "Navegador: ".$navegador."\r\n";
$log .= "Local: ".$local."\r\n";
$log .= "Metodo: ".$metodo."\r\n";
$log .= "Valor: ".$var."\r\n";
$log .= "---------------------------------\r\n\r\n";
$fp = fopen("security.txt", "a");
fwrite($fp, $log);
fclose($fp);
die("<script>alert('Erro, caracteres especiais detectado! Foi gerado um log com seu ip: ".$ip." ');
location='index.php'</script>");
}
//Função que faz a comparação do metodo com os caracteres bloqueados
private function check_method($str) {
//Loop que atribui os caracteres do array de bloqueados
foreach($this->caracteres as $caracteres2)
{
//Verifica se existe algum caractere bloqueado
if(substr_count(strtolower($str), strtolower($caracteres2)) > 0)
{
//Gera o Log
$this->generate_log($str);
}
}
}
//Função que define os caracteres bloqueados
private function blocked() {
//Caracteres bloqueado pelo script
$this->caracteres = array("'","\"","*",";","%","$","--");
}
} // Fim Classe
}// Fim Classe existe
?>
Instanciar:
bom uso!Código PHP:
$security = new security();
Bom tipo tem como vc postar como colocar isso no site ?
colocando assim em todas as paginas do seu site que tenha conexao com sql
<? include("antiinject.php"); ?>
Há 1 usuários navegando neste tópico. (0 registrados e 1 visitantes)
Marcadores