Avançar para o conteúdo principal
BlogueSegurançaOs lábios soltos também podem afundar os sítios Web

Lábios soltos também podem afundar sites

Ilustração de uma janela de browser em ângulo que mostra o cursor do rato junto ao símbolo do cadeado de segurança do endereço de um sítio Web. O texto diz: "Lábios soltos também podem afundar sítios Web", com as palavras "afundar" e "sítios Web" destacadas a negrito.

Quando pensamos em manter os sítios Web seguros, imaginamos frequentemente firewalls complexas, defesas de várias camadas e encriptação robusta. Mas, por vezes, o elo fraco na sua cadeia de segurança não é assim tão óbvio. Pode ser tão simples como uma configuração mal colocada ou um número de versão exposto. Definições de configuração soltas também podem afundar sítios Web. Este blogue abordará a forma como os números de versão expostos na sua pilha tecnológica podem conduzir a vulnerabilidades graves e o que pode fazer para reforçar a segurança.

Um exemplo do mundo real: Versão exposta do PHP

Durante uma avaliação de segurança de rotina, descobrimos uma versão desactualizada do PHP a ser publicitada abertamente pela configuração do servidor de um site. É um excelente exemplo do que não se deve fazer. Usando ferramentas como o Wappalyzer, uma rápida olhada revelou a versão do PHP: 8.2.19. À primeira vista, pode parecer um pequeno descuido, mas as repercussões podem ser graves.

Esta versão específica do PHP tem várias vulnerabilidades críticas associadas. Uma das mais preocupantes é a CVE-2024-4577, que pode permitir que um atacante execute código arbitrário remotamente. Por outras palavras, ao revelar simplesmente que utiliza esta versão do PHP, o site poderia muito bem ter colocado um sinal de "Bem-vindo Hackers" na sua porta da frente.

Para mais pormenores sobre as vulnerabilidades associadas a esta versão, consulte a análise da Tenable.

Por que os números de versão expostos são importantes?

Cada pilha de tecnologia - quer seja um CMS, um servidor ou uma linguagem de script - tem um ciclo de vida. Novas versões são lançadas regularmente para corrigir vulnerabilidades e melhorar o desempenho. Mas quando um sítio Web expõe as versões exactas que está a executar, os malfeitores podem facilmente cruzar as vulnerabilidades conhecidas de cada versão e adaptar os seus ataques em conformidade. Isto é conhecido como um ataque à cadeia de fornecimento cibernético - os atacantes visam versões de software específicas dentro da pilha tecnológica de uma organização para comprometer a sua segurança global.

Uma solução prática: transformar lábios soltos em lábios apertados

Então, como pode garantir que o seu sítio Web não está a divulgar esta informação crucial? Para começar, reveja as configurações do seu servidor e certifique-se de que os detalhes sensíveis não estão a ser transmitidos para o mundo. Vamos analisar uma solução rápida para um dos infractores mais comuns: PHP.

  1. Encontre o seu php.ini ficheiro de configuração. Este ficheiro controla muitas das definições do PHP e pode ser encontrado frequentemente em /usr/local/lib/php.ini.
  2. Localizar a linha que diz:
    expose_php = On  
  3. Alterar a definição para:
    expose_php = Off  
  4. Reinicie o serviço HTTP para aplicar as alterações.

Com este pequeno ajuste, está efetivamente a impedir que o seu servidor transmita a sua versão do PHP. Embora seja uma correção simples, pode reduzir significativamente a sua superfície de ataque.

Para além da ofuscação de versões: Segurança abrangente da pilha LAMP

Ofuscar os seus números de versão é um ótimo primeiro passo, mas a verdadeira segurança requer uma abordagem holística. Se estiver a executar uma pilha LAMP (Linux, Apache, MySQL e PHP), é necessário proteger cada componente para evitar que os atacantes encontrem outros pontos de entrada. Isto significa reforçar as configurações, gerir as permissões e implementar ferramentas como firewalls e sistemas de deteção de intrusão.

Por exemplo, garantir que a sua instalação do MySQL está bloqueada pode evitar ataques à base de dados que podem comprometer dados sensíveis. Da mesma forma, configurar permissões de ficheiros adequadas e desativar módulos não utilizados em Apache pode limitar o alcance de um atacante, mesmo que este encontre uma forma de entrar.

Outra medida que pode tomar é a implementação de uma firewall como a nossa Web Application Firewall para controlar o tráfego para o seu servidor, juntamente com o Fail2Ban para bloquear automaticamente endereços IP que mostrem sinais de força bruta no seu início de sessão SSH.

Auditorias regulares e boas práticas

Proteger a sua pilha LAMP não é uma tarefa única. Auditorias regulares usando ferramentas como Lynis ou MySQL Security Tools podem ajudar a identificar pontos fracos em sua configuração e manter sua pilha resistente contra ameaças emergentes. Isso significa executar varreduras do sistema, analisar logs e testar sua configuração para possíveis lacunas de forma contínua.

Proteger o seu sítio Web é mais do que ocultar os números de versão. Embora as versões expostas sejam uma vulnerabilidade comum, elas são apenas uma peça do puzzle. Para proteger totalmente a sua pilha LAMP, é necessário adotar uma abordagem abrangente que aborde a gestão da configuração, o controlo de acesso e a monitorização contínua.

Para se aprofundar na segurança de cada parte da sua pilha LAMP - desde o bloqueio do SSH até o reforço das permissões do MySQL e a implementação de regras de segurança avançadas para Apache- confira o guia completo sobre Como proteger sua pilha LAMP. Ele fornece instruções passo a passo e técnicas avançadas para proteger seu servidor desde o início, garantindo uma base robusta e segura para suas aplicações Web.

Comentários

Deixe uma resposta

O seu endereço de correio electrónico não será publicado. Os campos obrigatórios estão marcados com *