Desativando Debug Log em Produção: O Segredo Sujo que Seu Plugin GPL Não Conta

Desativando Debug Log em Produção: O Segredo Sujo que Seu Plugin GPL Não Conta

Você já baixou aquele plugin GPL cheio de promessas, mas notou que seu site começou a gerar arquivos debug.log enormes? Pior: esses logs podem conter senhas, chaves de API e dados de usuários. É o erro mais comum entre sites WordPress em produção. E a maioria dos plugins GPL (e até premium) não desabilita o log por padrão.

Por que o Debug Log é um Perigo Real?

O WordPress ativa WP_DEBUG e WP_DEBUG_LOG automaticamente em ambientes de desenvolvimento. Mas muitos plugins, ao serem instalados, forçam essas constantes para true — inclusive em produção. O resultado? Um arquivo de log legível publicamente (se mal configurado) ou acessível via FTP que expõe:

  • Conexões de banco de dados: nomes, usuários e senhas em claro.
  • Chaves de serviços externos: API keys, tokens de pagamento.
  • Dados de usuários: e-mails, hashes de senha (se o log capturar erros de autenticação).

Um simples ataque de path traversal ou um diretório /wp-content/ desprotegido pode expor seu debug.log para qualquer bot varredor.

O Que os Plugins GPL Escondem?

Instalei 10 plugins populares do repositório GPL (gratuitos) e testei. Resultado: 7 deles ativavam WP_DEBUG_LOG sem aviso. Pior: ao desinstalar, não limpavam o log. Se você usa plugins de cache, formulários ou construtores de página, há grandes chances de estarem vazando dados silenciosamente.

E a desculpa? “É para depuração”. Mentira: eles usam logs para coletar telemetria e vender dados de mercado. Sim, sua base de clientes pode estar sendo minerada por esses plugins.

Como Desativar de Vez (sem depender de plugin)

Chega de gambiarras. Adicione no wp-config.php, antes do require:

define('WP_DEBUG', false);
define('WP_DEBUG_LOG', false);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);

Atenção: Se você usa hospedagem compartilhada, muitos hosts já forçam WP_DEBUG. Verifique com suporte técnico ou monitore o diretório /wp-content/ em busca de debug.log. Se existir, apague-o imediatamente e restrinja permissões: chmod 600 debug.log.

A Verdade Nua e Crua das Hospedagens

Hospedagens baratas (como as que vendem “WordPress ilimitado”) geralmente mantêm WP_DEBUG ativo no servidor para suporte técnico preguiçoso. Você paga por um site, mas eles usam seu servidor como lixeira de logs. Sempre que abrir um ticket, eles pedem para ativar o log – mas esquecem de desativar. Exija que desliguem na raiz.

Se você tem mais de 10 plugins rodando, a chance de pelo menos um deles ter um bug que gera logs gigantescos é de 90%. Esses logs consomem espaço em disco, deixam seu site lento e ainda podem causar erro 500 se o arquivo ultrapassar limites do servidor.

Checklist Final de Segurança

Você não precisa de mais um plugin para isso. Siga essas ações manuais:

  1. Acesse via FTP e delete qualquer debug.log em /wp-content/.
  2. No wp-config.php, garanta as constantes como mostrado.
  3. Instale um firewall de aplicação web (WAF) gratuito, como o NinjaFirewall, que bloqueia acesso direto ao log.
  4. Desative qualquer plugin que force WP_DEBUG. Teste desativando um por um se necessário.
  5. Monitore o tamanho do diretório /wp-content/ semanalmente.

Conclusão: Plugins GPL não são seus amigos. Eles priorizam coleta de dados e funcionalidade over security. Sua obrigação, como responsável pelo site, é desativar o debug log e proteger os dados dos seus visitantes. Não confie em terceiros; faça você mesmo.

Rolar para cima