Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.
Opinião dos Leitores
Marco
29 Dez 2009, 02:38
Oiii, eu gostaria de saber se vc me poderia dar uma ajuda. deixo o meu e-mail daruller@hotmail.com
Leonardo Costa
17 Jun 2008, 19:11
Caro Luciano, mande o e-mail para o meu e-mail que mando o código corrigido com todos os itens de segurança alocados.
Leonardo Costa
17 Jun 2008, 19:05
Thiago, agradeço pela sua atenção com as suas críticas, mas não devemos julgar quem não conhecemos. Você é um novato neste mundo, tem que primeiro aprender a ser humilde antes de falar o que é certo ou errado.
Thiago
13 Jun 2008, 16:30
Este código é um bom exemplo daquilo que um bom programador deve EVITAR.
Todos os "INPUT"s providos pelo usuário devem passar por rotinas de sanitização que fazem -- no mínimo -- uma remoção de caracteres especiais que possam causar efeitos não desejados sob a perspectiva de segurança (mysql_escape_string é o mínimo).
Acredito que o autor tivesse a melhor intenção possível, porém, ainda precisa estudar e entender as armadilhas da programação "imprudente" antes de publicar exemplos em listas de grande volume -- como a DICAS-L.
Luciano
13 Jun 2008, 16:18
Olá, gostaria de dar uma olhada no seu código modificado de Login, estou começando a estudar php e não entendo muito ainda, se vc puder me encaminhar eu agradeço.
Abraços..
Leonardo Costa
13 Jun 2008, 11:11
ATENÇÃO: Pessoal, executei correções neste código na parte de segurança na autenticação, quem quiser este código com as correções pode encaminhar um e-mail para skullinux@gmail.com fazendo a solicitação.
Qualquer dúvida estou a disposição!
Leonardo Costa
12 Jun 2008, 19:24
Pessoal, obrigado pelas critícas, acho muito importante a opnião das pessoas.
Eu também recomendo fazerem melhorias no código antes de utilizarem.
Décio A.Alves
12 Jun 2008, 18:03
ATENÇÃO: Não use este código em ambiente de produção, sem ao menos melhorá-lo. Conforme o usuário abaixo informa, existe problema de tratamento de variável. Nem se trata da variável senha, pois é usada a função md5, o que converte a entrada em código contínuo, mas sim da variável 'registro', que entra no banco de dados sem tratamento, conforme o usuário digita, o que sujeita o código a vulnerabilidade de ataque de injeção SQL.
Anselmo
12 Jun 2008, 11:34
Leonardo Costa, obrigado pela iniciativa de dividir seus conhecimentos com os outros, mas, me desculpe, devo alertar a você e aos outros leitores que o codigo apresentado me parece fraco sob vários aspectos. O principal é que, como você testa primeiro o "login" do usuário com:
"SELECT numregistro FROM publicoalvo where numregistro = '" . $registro . "' ";
Depois a senha com:
SELECT senha FROM publicoalvo where senha = '" . $senha . "' "
E em nenhum momento testa o par código/senha juntos, isso permite que uma pessoa se loge como outra pessoa utilizando a própria senha, o que é uma falha grave de segurança.
Abraços,
Anselmo
Alexandre
12 Jun 2008, 11:26
Olá Leonardo Costa!
Gostei da dica e fui tentar, porém recebi as seguintes mensagens de erro:
Não foi possível se conectar no banco
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/meudiretorio/login.php on line 17
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/meudiretorio/login.php on line 18
Dados incorretos!< meta HTTP-EQUIV = 'Refresh' CONTENT = '1; URL = acesso.php'>