Você não está conectado. Conecte-se ou registre-se

Power Pixel » Jogos » MMO & RPG » Habbo Hotel » Utilitários » Proteção » [FIX] Atualizações contra SQL injection [HELIOCMS]

[FIX] Atualizações contra SQL injection [HELIOCMS]

Ver o tópico anterior Ver o tópico seguinte Ir em baixo  Mensagem [Página 1 de 1]

Edu'

Membro Diamante


avatar
Olá caro amigo, tudo bem? :P

Bom, ultimamente vejo aluns hoteis que usam a HelioCMS, mas ela tem algumas falhas, na qual usuários mal intencionados podem ter acesso a sua Database. Veja um print abaixo para ver o que estou tentando dizer:

[Você precisa estar registrado e conectado para ver este link.]

Para corrigir é bem simples e rápido

Vá até aonde está sua CMS e procure pelo arquivo profile.php e nele procure por: 

Código:
$profile_name = $_GET['username'];

apague e coloque isto no lugar:

Código:
$profile_name = mysql_real_escape_string($_GET['username']);


Agora salve, e abra o arquivo article.php e procure por:

Código:
$article_id = $_GET['id'];

e substitua por:

Código:
$article_id = mysql_real_escape_string($_GET['id']);

Salve as alterações novamente e abra o arquivo articles.php e procure por:

Código:
$category = $_GET['category'];

e substitua por:

Código:
$category = mysql_real_escape_string($_GET['category']);

Em seguida salve.

Recomendo também que olhe todos os arquivos PHP da CMS e veja se usam algum $_GET
caso use você mesmo pode corrigir o erro, veja um exemplo abaixo:

Código:
$variavel = mysql_real_escape_string($_GET['variavel']);
OBS: Basta colocar o mysql_real_escape_string antes do $_GET


Outros fixes para a HelioCMS:
[Você precisa estar registrado e conectado para ver este link.]

Caso você não tenha visto a CMS e queira baixar:
[Você precisa estar registrado e conectado para ver este link.]

Ver perfil do usuário

Rafacasari

Membro Prata


avatar
Parabéns pelo tópico ajudará muitos! Smile

Ver perfil do usuário

Junior

Honorário


avatar
[Você precisa estar registrado e conectado para ver este link.] escreveu:Parabéns pelo tópico ajudará muitos! Smile

Ver perfil do usuário

Luan Martins

Membro Diamante


avatar
o Ideal é usar o filtro de inputs para campos que vão entrar dados, 


[Você precisa estar registrado e conectado para ver este link.] Manual do PHP, usar Get é sempre arriscado. porem tem varias maneiras de prevenir entrada de dados no banco,


[Você precisa estar registrado e conectado para ver este link.]
o indicado é usar POST, usar todas essas constants já do próprio php, e fazer verificações com javascript para prevenir algumas entradas no exemplo () <> ; = + - 


no caso o mysql_real_escape_string ele deixa entrar qualquer valor que seja uma string, mas não tambem é uma string, porem em algum campos você não quer a entrada de acentuações.


exemplo, um comentário, entraria da seguinte forma com POST



Código:
 $nome    = filter_input(INPUT_POST, 'nome'   ,  FILTER_SANITIZE_STRING,  FILTER_FLAG_ENCODE_AMP);




no GET


Código:
 $nome    = filter_input(INPUT_GET, 'nome'   ,  FILTER_SANITIZE_STRING,  FILTER_FLAG_ENCODE_AMP);



porem o que você está passando vai ser mais uma defesa, e vai ajudar muito o pessoal, parabéns!

Ver perfil do usuário http://www.hapixel.com.br

Cl4ush

Administrador


avatar
Obrigado por compartilhar, irá ajudar muitos!



[info]Leia as regras do fórum para não ser punido, [Você precisa estar registrado e conectado para ver este link.][/info]



[Você precisa estar registrado e conectado para ver esta imagem.][Você precisa estar registrado e conectado para ver esta imagem.]

      
Ver perfil do usuário

Rai0s

Membro Bronze


avatar
É só trocar no .htaccess, muito mais simples...
Enfim, o tutorial é útil.

Ver perfil do usuário

Visi0n

Honorário


avatar
[Você precisa estar registrado e conectado para ver este link.] escreveu:É só trocar no .htaccess, muito mais simples...
Enfim, o tutorial é útil.

Ver perfil do usuário

jmths

Membro


avatar
Obrigado pelo tutorial mano, eu não sabia.
Eu já tinha identificado uma falha na index.php por que tinha como entrar por e-mail sem digitar a senha, então tive de  de fixar isso remvoendo a opção de entrar por e-mail.

E eu verifiquei cada arquivo da minha heliocms v5, e encontrei mais páginas: 
returner.php
/habbo-imaging/badge.php (da SWF)
/hkleiogersilva96/badgestoreedit.php 
/hkheliogersilva96/forgottendefine.php
/hkheliogersilva96/newsedit.php
/hkheliogersilva96/roomedit.php
/hkheliogersilva96/useredit.php


Ta ae galera a lista das pastas vuneráveis que eu achei na minha, espero que ajude a vocês quando forem procurar na de vocês!

Ver perfil do usuário

nadi0s

Honorário


avatar
Fechado para evitar necropost.

Ver perfil do usuário http://www.nadi0s.com

Conteúdo patrocinado



Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo  Mensagem [Página 1 de 1]

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum