Ir ao conteúdo

Segurança com Login


Urubu_Nicolas

Posts recomendados

Postado

Olá comunidade Clube do Hardware. Estou querendo aprimorar a segurança de um Painel de Administração, atualmente o único método que impede a entrada de usuários malintencionados é um Login com nome de Usuário e Senha. Gostaria de saber o que eu poderia incluir para ter mais dinâmica na segurança, uma vez que para um hacker isto é mais fácil que tirar doce de criança. Vale lembrar que outra opção que uso para segurança é apenas para limpar caráteres inválidos no envio do login, apenas usando strip_tags(trim($_POST['user']));.

Alguém tem alguma Dica, o ideal mesmo seria usar O Token, aquele sistema é ideal e seguro, porém não pretendo gastar dinheiro, apenas se for de baixo custo.:cool:

  • Moderador
Postado

outra coisa que você pode usar é a funçao addslashes() isso aumenta bastante a segurança contra sql injection.

Postado

dig, não conhecia esta função, mas que pude ver ela elimina execuções que possam ser feitas com MySQL, certo?

Existe alguma outra maneira de aumentar a segurança sem usar o PDO?

Não sei nada de invasões hacker e SQL Injections, mas se fosse usar apenas as funções strip_tags, trim e addslashes, deixaria aprova de hackers de baixo nível, ou seja, seria necessário um Hacker com mais conhecimento para invadir o sistemas? Até por que acho que nada é 100% seguro na internet, pois sempre haverá Anonymous para invadir o que quiser!

  • Moderador
Postado

bom 100% nao é... mas dificulta bastante.

a funçao addslashes() , elimina a possibilidade de uma pessoa tentar injetar um comando sql no formulario.. por exemplo

Username: '; drop table users--

Password:

isso faria com que a tabela 'users' fosse apagada, negando o acesso para todos os usuários. A seqüência de caracteres '--' é o comentário de uma linha de SQL, a o ';' denota o fim de uma query e o começo de outra. O '--' no fim do campo username é requerido para que a query em questão seja executada sem erros.

outro caso seria :

Username: ' or 1=1--

faria com que injetasse no final da sua query este trecho dando a libertade de entrar no sistema.

bom.. pode ser que meu post seja apagado.. mas minha intençao é alertar você sobre o perigo. por isso é uma boa usar o addslashes() ele adiciona uma barra invertida .

exemplo:

$login = $_POST["login"];

$senha = $_POST["senha"];

$login_seguro = addslashes($login);

$senha_segura = addslashes($senha);

$query = "select login, senha from usuario where login='$login_seguro' and senha='$senha_segura'";

o PDO é bom.. mas eu so uso quando faço em orientada a objetos..

  • Moderador
Postado

você diz os tokens?

aquilo realmente é caro...

agora você pode usar o metodo que tava usando.. e o addslashes que ja fica bem seguro

Postado

Não não me refiro aqueles sequência alfanumérica que aparece por exemplos em alguns cadastros, aqueles números que ninguém consegue ver, tem um nome específico eu acho, mas não me lembro.

  • Membro VIP
Postado

O nome dessa sequencia é CAPTCHA.

Sim, adianta.. mas também não é "100%" seguro.. na verdade, eu não me preocuparia em tentar chegar ao 100% pois lhe garanto que você nunca vai chegar.

Mas tomar medidas como addslashes/mysql_real_escape_string, critpografia das senhas (NUNCA, absolutamente NUNCA o proprietário de um software deve "poder saber" as senhas de seus usuários) já tornam a segurança quase perfeita :)

A utilização da biblioteca PDO facilita todo o trabalho nesse caso!

Postado

Obrigado Mog.Lucas e dif, estava preocupado com a segurança do meu Sistema, mas então é usar estas funções e técnicas que você mostraram que vou deixar meu Site mais seguro, e claro nunca 100% seguro!:D

Postado

Tópico Resolvido. Galera obrigado a todos criei a seguinte função para limpar form. Pelo que testei é bem completa, segue o código:


<?php
/* FUNÇÃO: SQL-Anti-Injection */
function sqlinj($string) {
$string = strip_tags($string);
$string = htmlspecialchars($string);
$string = addslashes($string);
$string = str_ireplace("SELECT","",$string);
$string = str_ireplace("FROM","",$string);
$string = str_ireplace("WHERE","",$string);
$string = str_ireplace("INSERT","",$string);
$string = str_ireplace("UPDATE","",$string);
$string = str_ireplace("DELETE","",$string);
$string = str_ireplace("DROP","",$string);
$string = str_ireplace("DATABASE","",$string);
$string = str_ireplace("USE","",$string);
return $string;
}
?>

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!