Escrito por Edvan Sampaio Qua, 29 de Fevereiro de 2012 03:58
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.
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!
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.
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:
$templates_compiledir = "/home/usuario/templates_c/";
$attachments_dir = "/home/usuario /attachments/";
$downloads_dir = "/home/usuario /downloads/";
Se alterar o nome lembre-se de alterar também o caminho físico da pasta!
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 configuration.php (localizado na raiz do /seuwhmcs/), informe um novo caminho/nome da pasta administrativa e livre-se da exposição!
Exemplo:
$customadminpath = "novo_nome_da_pasta";
Altere sua pasta /seuwhmcs/admin/ para o nome definido no $customadminpath
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/:
order deny,allow
allow from 189.104.253.166
allow from 189.104.253.167
deny from all
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.
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:
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 link bastante interessante para testar sua senha, confira: http://www.testedesenha.com.br/
O WHMCS oferece 2 formas de backup:
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.
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
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
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.
Tamanho da senha (banco de dados).
Se você customizou a pasta admin do WHMCS;
Verificação das Pastas do sistema (attachments, downloads e templates_c)
Versão do seu WHMCS;
Debug do Sistema (erros);
Captcha dos Formulários;
SSL para sessão Admin;
Permissão de registro avulso;
Hook para eliminar tickets falsos (exploit – {php}eval(base64_decode(….);
Permissão do arquivo configuration.php;
Em relação os arquivos citados no post faça o download do arquivo CheckList Segurança + Hook Anti-Exploit (101).
Após o download envie o banned.php para pasta/includes/hooks/ e o checklist.php para raiz do WHMCS.
Veja uma demonstração do checklist em funcionamento:
| Próximo > |
|---|
Quer ter uma Web Rádio de qualidade? Faça um teste agora mesmo:
2Cr 9:26 - "E dominava sobre todos os reis, desde o rio até à terra dos filisteus, e até ao termo do Egito. "