luislack 0 Denunciar post Postado Agosto 30, 2016 Olá sou iniciante e queria pedir a ajuda tive o site invadido ..tem um formulario de login e senha para noticias e acredito que foi por ele que entraram segue o script, agradeço a ajuda .. <?php ob_start(); require("../banco_conecta.php"); // Se tiver logado, vai para o index if ($_COOKIE["adm_login"] == '') { $usuario = $_POST[usuario]; $senha = $_POST[senha]; $usuario_get = $_GET[usuario_get]; if ($acao_login == 'login') { $resultadoAdm = mysql_query('SELECT * FROM admin WHERE usuario="'.$usuario.'" AND senha="'.$senha.'" AND ativo="s"'); if(!$resultadoAdm){ die("Erro na solicitação de query 1: " . mysql_error() . '<br>'); } if(mysql_num_rows($resultadoAdm) == 0){ echo ("ATENÇÃO: Login/Senha inválido ou você não tem permissão para acessar."); } elseif(mysql_num_rows($resultadoAdm) > 1){ echo ("Erro! Cadastro duplicado. Fale com o administrador do site."); } else { if($row = mysql_fetch_array($resultadoAdm)){ $Adm_Id = $row['Id']; $Adm_Nome = $row['nome']; $Adm_Usuario = $row['usuario']; $Adm_Senha = $row['senha']; $Adm_Acessos = $row['acessos']; $Adm_Data = $row['data']; $Adm_Ativo = $row['ativo']; $Adm_Restrito = $row['restrito']; setcookie ("adm_login", $Adm_Usuario, time()+60*60*24*7); setcookie ("adm_nome", $Adm_Nome, time()+60*60*24*7); setcookie ("adm_restrito", $Adm_Restrito, time()+60*60*24*7); //header ("Location: ".$_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING']); if ($_COOKIE["adm_restrito"] == '2') { if ($pagina_atual == '/adm_lista/banco_conecta.php' OR $pagina_atual == '/adm_lista/noticia/noticia_form.php' OR $pagina_atual == '/adm_lista/noticia/noticia_action.php' OR $pagina_atual == '/adm_lista/noticia/noticia_lista.php' OR $pagina_atual == '/adm_lista/login.php' OR $pagina_atual == '/adm_lista/msg.php') { header ("Location: ".$_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING']); } else { if ($pagina_atual == '/adm_lista/index.php') { header ("Location: noticia/noticia_lista.php"); } else { header ("Location: bloqueio.php?pagina=".$pagina_atual.""); } } } else { header ("Location: ".$_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING']); } } } } ?> <html> <head> <title>LOGIN - ADMINISTRAÇÃO</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> <form name="form1" method="post" action="<?php echo ($_SERVER['PHP_SELF']."?".$_SERVER['QUERY_STRING']); ?>&acao_login=login"> <table border="5" align="center" cellpadding="5" cellspacing="0" bordercolor="#FF0000"> <tr> <td bordercolor="#FFFFFF"><p align="center"><font size="2" face="Tahoma"><strong>Administração FaspNet</strong></font></p> <p align="center"><font size="2" face="Tahoma"><font size="2" face="Tahoma"><font size="1">Usuário: </font><br> <input name="usuario" type="text" id="usuario" value="<?php echo($usuario_get); ?>" size="20" maxlength="20"> </font><font size="1"><br> Senha:</font><br> <input name="senha" type="password" id="senha" size="20" maxlength="20"> </font></p> <p align="center"><font size="2" face="Tahoma"> <input type="submit" name="Submit" value=" Entrar "> </font></p></td> </tr> </table> <?php //echo($pagina_atual); ?> </form> </body> </html> <?php exit; } elseif ($acao_login == '') { if ($_COOKIE["adm_restrito"] == '2') { if ($pagina_atual == '/adm_lista/banco_conecta.php' OR $pagina_atual == '/adm_lista/noticia/noticia_form.php' OR $pagina_atual == '/adm_lista/noticia/noticia_action.php' OR $pagina_atual == '/adm_lista/noticia/noticia_lista.php' OR $pagina_atual == '/adm_lista/login.php' OR $pagina_atual == '/adm_lista/msg.php') { } else { if ($pagina_atual == '/adm_lista/index.php') { header ("Location: noticia/noticia_lista.php"); } else { header ("Location: ../bloqueio.php?pagina=".$pagina_atual.""); } } } } ob_end_flush(); ?> Compartilhar este post Link para o post Compartilhar em outros sites
ESerra 744 Denunciar post Postado Agosto 30, 2016 No google: PDO. Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Agosto 30, 2016 Siga estes meus tutoriais: http://rberaldo.com.br/seguranca-em-sistemas-de-login-protecao-contra-sql-injection/ http://rberaldo.com.br/pdo-mysql/ PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/ Compartilhar este post Link para o post Compartilhar em outros sites
TheMasterOFTraps 0 Denunciar post Postado Março 14, 2019 Sua variavel $resultadoAdm esta vulnerável a sqlinjection : Como esta: mysql_query('SELECT * FROM admin WHERE usuario="'.$usuario.'" AND senha="'.$senha.'" AND ativo="s"'); Como atacaríamos: No campo do usuário colocaríamos a seguinte PoC: ;select @@version;-- Compartilhar este post Link para o post Compartilhar em outros sites
Motta 645 Denunciar post Postado Março 14, 2019 Compartilhar este post Link para o post Compartilhar em outros sites