Mão na Massa LDAP - 1 Profissional por Máquina
Configure um serviço de Diretórios baseado no servidor OpenLDAP!
Dia 6 de Dezembro - São Paulo
Saiba mais
English for Reading and Listening
Receba por email, diariamente, mensagens contendo materiais para
leitura e audição, incluindo arquivos no formato MP3 gravados por
falantes nativos.
Saiba mais
e faça
sua inscrição
Assine a Lista Dicas-L
Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.
Veja a relação completa dos artigos de
Referências Adicionais
Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.
Avalie esta dica
- Currently 2.94/5
- 1
- 2
- 3
- 4
- 5
Avaliação:
2.9 /5
(120 votos)
Opinião dos Leitores
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'>
Mão na Massa LDAP - 1 Profissional por Máquina
Configure um serviço de Diretórios baseado no servidor OpenLDAP!
Dia 6 de Dezembro - São Paulo
Saiba mais
Biblioteca
Redes - Guia Prático
Por Carlos. E. Morimoto
Hardware - o Guia Definitivo
Por Carlos. E. Morimoto
Kurumin 7 - Guia Prático
Por Carlos. E. Morimoto
Linux: Ferramentas Técnicas, 2ed
Por Carlos. E. Morimoto
VPN: Virtual Private Network
Por Lino Sarlo da Silva
MySQL - Guia do Programador
Por André Milani
Sistemas de Banco de Dados
Por Ramez E. Elmasri e Shamkant Navathe
Hardware PC: Guia de Aprendizagem Rápida
Por Carlos E. Morimoto
Extreme Programming
Por Vinicius Manhaes Teles
Google Hacking
Por JOHNNY LONG
Elite da Tropa
Por Luis Eduardo Soares, Andre Batista e Rodrigo Pimentel
Harry Potter e as Relíquias da Morte
Por J.K. Rowling
Manual Completo do Linux: Guia do Administrador
Por Evi Nemeth, Trent R. Hein, Garth Snyder
PHP para Quem Conhece PHP
Por Juliano Niederauer
O Conhecimento em Rede
Por Carlos Nepomuceno e Marcos Cavalcanti
Enterprise Javabeans 3.0
Por Bill Burke, Richard Monson
Redes de Computadores
Por Andrew S. Tanembaum
Marley e Eu: a Vida e o Amor ao Lado do Pior Cão do Mundo
Por John Grogan
Deus, um delírio
Por Richard Dawkins
Java: Como Programar
Por Harvey M. Deitel e Paul J. Deitel
Descobrindo o Linux: Entenda o Sistema Operacional GNU/Linux
Por Joao Eriberto Mota Filho
Use a Cabeça!: JSP & Servlets
Por Brian Bashan, Kathy Sierra, Bert Bates
1808
Por Laurentino Gomes
UML: Guia do Usuário
Por Grady Booch, James Rumbaugh e Ivar Jacobson