Compartilhe:

O Artigo Convidado de hoje traz: Edvan Sampaio, o maior especialista do Brasil em WHMCS. Criador e mantenedor do portal WHMCS.Blog.br.

Desde 2006/2007 venho utilizando e prestando serviços para WHMCS, percebo que em muitas instalações alguns procedimentos simples são esquecidos. Esse post irá fornecer algumas dicas de como aumentar/melhorar a segurança no seu WHMCS e evitar possíveis transtornos futuros.

1- Desconfie das ofertas de WHMCS Grátis

Não utilize licenças piratas/nulled, afinal essas licenças não são seguras! Algumas são disponibilizadas com códigos maliciosos com o simples intuito de roubar as suas informações (e dos seus clientes também, é claro).
Apenas provedores de respeito oferecem/fornecem licenças autênticas, como a HostDime em vários de seus planos de revenda!

2- Mantenha o seu WHMCS sempre atualizado!

A quantidade de empresas que utilizam versões antigas/obsoletas não dá para contar nem com a ajuda dos dedos dos pés! Essas versões podem conter bug´s, falhas que podem comprometer seu negócio. A última versão estável é a 5.0.3, recomendo o upgrade.
Recomendo também que fiquem atentos aos comunicados oficiais da WHMCS.com e, caso tenha dificuldades com o idioma inglês, visite o www.WHMCS.blog.br que possui artigos atualizados em português sobre o seu gerenciador financeiro preferido.

3- Siga à risca as recomendações do fabricante

As pastas “default” – attachments, downloads e templates_c – são vitais para funcionamento do sistema e precisam de permissão (chmod 777) esse tipo de permissão pode causar alguns problemas por isso é recomendado que o nome das pastas sejam alterados e movidos para um diretório não visível ( acessível para o cliente ), fora do public_html ou www. O procedimento de alteração é simples e rápido. Abra o arquivo configuration.php ( localizado na raiz do /seuwhmcs/ ) e informe o novo caminho/nome da pasta.
Exemplo:
[code]
$templates_compiledir = "/home/usuario/templates_c/";
$attachments_dir = "/home/usuario /attachments/";
$downloads_dir = "/home/usuario /downloads/";
[/code]
Se alterar o nome lembre-se de alterar também o caminho físico da pasta!

4- Feche as portas!

Pessoas mal-intencionadas que reconhecem se sua empresa utiliza o WHMCS certamente vão tentar obter acesso administrativo via URL padrão http://seuwhmcs.com/admin/. Com isso o melhor é se proteger! Após abrir o arquivo php ( localizado na raiz do /seuwhmcs/ ), informe um novo caminho/nome da pasta administrativa e livre-se da exposição!
[code]
$customadminpath = "novo_nome_da_pasta";
[/code]
Altere sua pasta /seuwhmcs/admin/ para o nome definido no $customadminpath

5- Restrinja o acesso do admin WHMCS via IP

Caso sua empresa possua conexão de internet com IP fixo, você poderá criar um arquivo .htaccess  com conteúdo abaixo e enviar para pasta /seuwhmcs/seu_admin/:
[code]
order deny,allow
allow from 189.104.253.166
allow from 189.104.253.167
deny from all
[/code]
No exemplo acima será permitido que os ip´s 189.104.253.166 e 189.104.253.167 tenham acesso irrestrito ao admin WHMCS, os demais IP´s terão o acesso negado.

6- Atente-se às suas senhas e log’s do sistema

Seja senha do banco de dados MySQL, email ou acesso ao admin tente criar/trocar suas senha periodicamente.
Faça uma análise criteriosa dos log´s do sistema ( http://seuwhmcs.com/seu_admin/systemactivitylog.php ) ele irá registrar toda atividade do sistema. Já o log do administrator http://seuwhmcs.com/seu_admin/systemadminlog.php mantém a data/hora do acesso, tempo de logout, usuário e IP da sessão.
Dicas de como ter uma senha segura:

  • Ter no mínimo 8 caracteres;
  • Não conter seu nome de usuário, seu nome real ou o nome da sua empresa.
  • Não contenha palavra completa = bola, computador, notebook e etc…
  • Conter letras maiúsculas, minúsculas, números e símbolos do teclado (caracteres do teclado não definidos como letras ou números) e espaços.

Que a senha possua pelo menos 8 caracteres, que não contenha seu nome real, usuário ou nome da sua empresa. Se você achar que deve anotar a senha, não identifique como uma senha e guarde-a em um lugar seguro.
Felizmente depois que adquiri um notebook com leitor biométrico meus problemas com senha acabaram.
Nota do Editor: Temos um artigo aqui no Blog bastante interessante que fala sobre a criação e manutenção de senhas seguras, confira: https://blog.hostdime.com.br/materias/tecnologia/a-sua-senha-e-realmente-segura/

7- Backup é fundamental

O WHMCS oferece 2 formas de backup:

  1. Manual: Através do acesso ADMIN, vá em Utilities ( utilitários ), Menu System ( Sistema), Opção Database Status ( Status da base de dados ) ou http://seuwhmcs.com/seu_admin/systemdatabase.php Clique em Download Databe Backup e salve o arquivo.
  2. Automática: Vá no menu Setup (Configurações) opção Other ( Outros ) escolha Database Backups ( Backup base de dados ) ou acesse http://seuwhmcs.com/seu_admin/systemdatabase.php

Dependendo do tamanho da sua base de dados ( acima de 20mb ) o recomendado é utilizar o phpMyAdmin ou scripts do WHM.
Além da base de dados não esqueça de tirar um backup dos arquivos do WHMCS, principalmente do configuration.php

8- Eliminação de ticket exploit

No dia 12/1/2012 a WHMCS.com divulgou uma correção de segurança http://forum.whmcs.com/showthread.php?t=43462 que abrangeu a versão 4.0.x à 5.0.x muitos fizeram essa correção e mesmo assim estão recebendo tickets com conteúdo {php}eval(base64_decode(….) seja no assunto ou corpo do ticket.
Para evitar essa chateação faça download do arquivo banned.php e envie para pasta /includes/hooks/  com isso você não receberá mais tickets e o IP de quem enviou será banido até 2020, além disso você será notificado via System Activity Log e o IP ficará armazenado em Banned IPs

9- Ufa!

Por fim elaborei um script chamado checklist.php que irá verificar 10 itens que considero essenciais para reforçar a segurança do seu WHMCS.

  1. Tamanho da senha ( banco de dados ).
  2. Se você customizou a pasta admin do WHMCS;
  3. Verificação das Pastas do sistema (attachments, downloads e templates_c )
  4. Versão do seu WHMCS;
  5. Debug do Sistema ( erros );
  6. Captcha dos Formulários;
  7. SSL para sessão Admin;
  8. Permissão de registro avulso;
  9. Hook para eliminar tickets falsos (exploit – {php}eval(base64_decode(….);
  10. Permissão do arquivo configuration.php;

Download dos arquivos ( banned.php e checklist.php)  http://migre.me/7XHnw

Veja uma demonstração em vídeo:
[yframe url=’https://www.youtube.com/watch?v=E2Zdo_4eOec’]
Gostaria de agradecer a HostDime pelo convite, estou à disposição!
Edvan Sampaio
www.whmcs.blog.br