O que irei aprender?
- Vocês aprenderão como corrigir o desvio de admin.
- Vocês aprenderão como usar o filtro PHP no vosso SQL.
- Vocês aprenderão como os hackers trabalham para contornar a vossa página de login de admin.
- Vocês aprenderão a sintaxe maliciosa em SQL.
Requisitos
- Você deve saber o uso da linguagem PHP.
- Você deve saber SQL.
Dificuldade
- Intermediário
Conteúdo tutorial
Bem Olá pessoal, agora eu quero ensinar-vos como corrigir SQLI no vosso site. Aqui eu apenas enfatizei o bug de administração de bypass. mas primeiro você deve saber o que é SQLI? SQLI (SQL injection) é uma técnica de hacking onde um atacante pode inserir comandos SQL via url ou formulário no site para executar comandos de banco de dados. ok agora eu quero mostrar como funcionam os hackers para contornar sua página de login admin.
se você viu acima você deve ser cuidadoso para fazer um site, agora eu vou lhe dizer alguma sintaxe que é considerada perigosa e deve ser removida do seu site, filtrando-a.
'=' 'or'or 1=1or 1=1--or 1=1#or 1=1/*admin' --admin' #admin'/*admin' or '1'='1admin' or '1'='1'--admin' or '1'='1'#admin' or '1'='1'/*admin'or 1=1 or ''='admin' or 1=1admin' or 1=1--admin' or 1=1#admin' or 1=1/*admin') or ('1'='1admin') or ('1'='1'--admin') or ('1'='1'#admin') or ('1'='1'/*admin') or '1'='1admin') or '1'='1'--admin') or '1'='1'#admin') or '1'='1'/*
Como corrigir este bug?
em nenhum lugar que eu tenha um código fonte vulnerável a este bug
<?phpinclude'connection.php';if (isset($_POST)){ $name=$_POST; $password=$_POST; $query="SELECT * FROM admin where admin_name='$name' AND admin_password='$password'"; $rq=mysqli_query($conn,$query); if (mysqli_num_rows($rq) > 0) { $id=0; @session_start(); $_SESSION=$name; $_SESSION=$id; echo "<script>alert('Logged in');window.location.href='index.php';</script>"; } else { echo "<script>alert('Email or Password is inavlid');window.location.href='login.php';</script>" } }?>
você pode ver nesse código fonte sem filtro PHP, o filtro PHP que deve ser usado é a função addlashes (). A função addlashes () é uma função de string para dar uma barra ou barra se houver certos caracteres na string. Os caracteres são: Single Quote (‘); Double Quote (“); contrabarra (). Você pode ver novamente acima onde a sintaxe que é considerada perigosa usando Single Quote (‘); Double Quote (“); contrabarra (), então esta função é muito importante para o seu site, certo? Nós podemos colocar barras adicionais a essa fonte em parte
$name=$_POST; $password=$_POST;
e você pode adicionar barras adicionais() função como esta
$name=addslashes($_POST); $password=addslashes($_POST);
se você já colocar barras adicionais() função Assim eu prometo que seu site agora não tem aquele bug novamente 🙂
veja a figura abaixo Eu corrigi o bug BYPASS ADMIN no meu site
okay até aqui eu ensino-lhe Como Patchar SQLI no seu Website: Administração de Bypass. Cheerio!