Leob 0 Denunciar post Postado Julho 17, 2009 Eu estou aprendendo sobre php a apenas 2 semanas e esse foi o sistema de login que eu consegui fazer, ele não deu erro , mas gostaria de saber se eu fiz da forma correta , como seria possivel deixa-lo mais seguro. Sei que tem milhares de topicos que precisam de ajuda de verdade, mas como é meu primeiro trabalho não sinto ainda muita confiança para mostrar para o cliente. <html> <head> <title></title> </head> <? $con = mysql_connect("localhost", "root", "") or die ("Não foi possivel conectar ao servidor MySQL"); $db=mysql_select_db("projeto1"); Function Filtrar($str){ $filtra = preg_replace(sql_regcase('/(from|select|insert|delete|where|drop table|show tables|#|\*|--|\\\\)/'),'',$str); $filtra = trim($str); $filtra = strip_tags($str); $filtra = addslashes($str); return $str; } $usuario = Filtrar($_POST["usuario"]); $senha = Filtrar($_POST["senha"]); $permissao="SELECT * FROM usuarios where usuario='$usuario'"; $res=mysql_query($permissao) or die(mysql_error()); $sql="SELECT usuario, senha FROM usuarios WHERE usuario='$usuario' AND senha='$senha'"; $resultado= mysql_query($sql); if(mysql_num_rows($resultado)) { $usuario = mysql_fetch_array($resultado); while($dados = mysql_fetch_array($res)) { if ($dados['permissao']==1){ echo '<meta HTTP-EQUIV="Refresh" CONTENT="0.5; URL=adm.php">'; } if ($dados['permissao']==2){ echo '<meta HTTP-EQUIV="Refresh" CONTENT="0.5; URL=fornecedor.php">'; } if ($dados['permissao']==3){ echo '<meta HTTP-EQUIV="Refresh" CONTENT="0.5; URL=transp.php">'; } } } else{ echo "Nome ou usuario incorreto."; echo "<br>"; echo "Para tentar novamente clique <a href='login.php'>aqui</a>";} ?> <body></body> </html> Compartilhar este post Link para o post Compartilhar em outros sites
Will Fernando 2 Denunciar post Postado Julho 17, 2009 é dificil diser que um site esta 100% seguro pois a cada dia são descobertas novas vulnerabilidades para serem exploradas e talz.. mas para evitar os ataques mais comuns filtrar todas as entradas de dados do seu script e utilizar os recursos do PHP de maneira cuidadosa ja ajudam bastante.. valww =] PS: tem no Laboratorio de Scripts um topico do Fabyo sobre filtro .. de uma olhada nos ultimos posts dele e do himon ^^ . Compartilhar este post Link para o post Compartilhar em outros sites
Alaerte Gabriel 662 Denunciar post Postado Julho 17, 2009 Dê uma olhada aqui: http://forum.imasters.com.br/index.php?/topic/276729-seguranca-em-php/ Compartilhar este post Link para o post Compartilhar em outros sites
Leob 0 Denunciar post Postado Julho 17, 2009 Muito obrigado, eu vou estudar tudo o que foi passado aqui e melhor meu codigo . Minha duvida agora é referente a como fazer um codigo para não permitir o acesso de pessoas não logadas as paginas, mas ainda não consegui um codigo assim que conseguir mesmo que errado posto aqui para, se possivel ,vocês ajudarem. Compartilhar este post Link para o post Compartilhar em outros sites
Lucas Guima 164 Denunciar post Postado Julho 17, 2009 Muito obrigado, eu vou estudar tudo o que foi passado aqui e melhor meu codigo . Minha duvida agora é referente a como fazer um codigo para não permitir o acesso de pessoas não logadas as paginas, mas ainda não consegui um codigo assim que conseguir mesmo que errado posto aqui para, se possivel ,vocês ajudarem. Pode usar sessão. No login você seta uma variável de sessão com um valor que indique que o login foi efetuado, e em cada página você testa se essa variável está permitindo o acesso, só então, exibe a página. Compartilhar este post Link para o post Compartilhar em outros sites