Ir para conteúdo
Fórum Script Brasil
  • 0

segurança para login


misterviralata

Pergunta

ola Amigos!

Tenho pesquisado sobre segurança, encontrei vários artigos sobre o assunto, mas a maioria é confusa e se contradizem (pelo menos pra mim). Alguns dizem que é muito perigoso usar SESSION outros dizem que é preciso criptografar os dados enviados pelo Formulário, outros dizem que não se pode passar parâmetros via GET e assim vai...

Gostaria de saber se alguém pode me indicar um tutorial que ensina se de maneira clara como se proteger de ataques e como tratar os campos do formulário com segurança total (se é que existe)

Obrigado!

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Tudo que vem de um formulário, independente do método de envio, deve ser tratado antes de se jogar em uma query.

O básico do básico é usar a função mysql_real_escape_string(), outra coisa que é interessante é fazer um black list de palavras, como SELECT, DELETE, INSERT, e etc, palavras que geralmente se usam em instruções SQL, juntando essas duas coisas, já fica 99% tranquilo.

Quanto as sessões, o problema é se ocorrer o roubo delas, mas isso depende das configurações do servidor também, como em geral quem administra servidores tem o mínimo de noção e bom senso, é difícil ocorrer isso.

Sempre que possível deve-se usar algum tipo de criptografia, mas isso ter dois contras:

1 - O preço de um certificado de segurança não é lá muito barato;

2 - Isso acarreta em maior processamento.

Em resumo pra aplicações do dia-a-dia, criptografia ainda é algo que ainda demanda muito em troca de pouco.

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu ESerra!

Sobre o tratamento dos campos to usando esta função

function anti_injection($sql) {
$sql = preg_replace(sql_regcase("/(http|www|ftp|.dat|.txt|.gif|wget|from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/"),"",$sql);
$sql = trim($sql);//limpa espaços vazio
$sql = strip_tags($sql);//tira tags html e php
$sql = eregi_replace ("(\"|\')", "", $sql);
$sql = mysql_real_escape_string($sql)
return $sql;
}

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

Tem mais alguma dica que eu possa acrescentar?

Obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0

É essa função ai está de bom tamanho sim... uma outra coisa que é pouco usado, mas é bem eficiente, geralmente os problemas acontecem em páginas "abertas" (ou seja em seções do site que qualquer um pode ter acesso), então nessas seções o recomendado é que o usuário que se conecta ao banco de dados tenha apenas permissão de lleitura (select), assim mesmo que alguém, por exemplo, tente dropar o teu BD, não vai conseguir, em último caso, pela simples falta de permissão do usuário que acesso o BD...

Link para o comentário
Compartilhar em outros sites

  • 0

Seria + facil fazer assim e ficaria + rápido:

Aqui por exemplo meus sites em php faço assim.

Boto este script

<?php include("seguranca.php");?>

E meu arquivo de segurança requer meu arquivo Sql_injection.php e Sql_check.php

Faz a mesma função deste aí deixando até + seguro!

E dai para add isso nas outras páginas do formulário é so por este código:

<?php include("seguranca.php");?>

;b

espero que eu tenha ajudado!

Editado por D4rkMu
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...