A vulnerabilidade MGASA-2026-0194 no Roundcube para Mageia pode expor seu servidor. Aprenda a verificar, corrigir e se proteger com comandos práticos e automação.
A vulnerabilidade no Roundcube Webmail pode comprometer completamente seu sistema de e-mail. O alerta de segurança do Mageia (MGASA-2026-0194) é um bom ponto de partida, mas esta análise foi pensada para ser útil daqui a um ano ou mais.
Em vez de focar na data do aviso, vamos entender o problema de uma vez por todas e configurar proteções que vão durar.
De acordo com o aviso, são oito falhas de segurança (CVEs) que afetam versões anteriores à 1.6.16 e 1.7.1. As principais ameaças incluem:
Execução Remota de Código (RCE) e Injeção de Código: Um invasor pode executar comandos maliciosos diretamente no seu servidor, podendo roubar dados e assumir o controle do sistema.
No Roundcube, isso foi possível através de opções como LDAPautovalues.
- Injeção de SQL (SQLi): Permite que um atacante acesse ou corrompa o banco de dados, expondo senhas e e-mails de todos os usuários.
- Falsificação de Solicitação do Lado do Servidor (SSRF): Um hacker pode usar seu servidor para acessar redes internas ou serviços que não deveriam estar expostos.
- Script entre sites (XSS) e Injeção de CSS: Um invasor pode injetar códigos maliciosos na interface web para roubar sessões e dados de usuários.
- Exclusão Arbitrária de Arquivos: Um atacante pode apagar arquivos críticos do sistema, causando instabilidade e negação de serviço.
A boa notícia é que, com alguns comandos e boas práticas, você pode se proteger. Vamos colocar a mão na massa.
Como verificar se você está vulnerável (comandos reais para Mageia)
Execute os passos abaixo no terminal do seu servidor Mageia para saber se você está rodando uma versão afetada.
Passo 1: Verifique a versão instalada
rpm -q roundcubemail
Passo 2: Saída esperada se você estiver vulnerável
Um exemplo de saída seria roundcubemail-1.6.15-1.mga9. Qualquer versão anterior à 1.6.16 (ou 1.7.1) está vulnerável. A versão corrigida para o Mageia 9 é a 1.6.16-1.mga9.
Passo 3: Verifique seu banco de dados (para mais segurança)
Conecte-se ao banco de dados e rode a consulta SQL abaixo para listar a versão salva internamente, útil em algumas configurações:
SELECT `value` FROM `system` WHERE `name` = 'roundcubemail_version';
📗 Recomendação de Leitura
Segurança em servidores Linux: Ataque e Defesa (anúncio) -> https://amzn.to/4e12PgB
Se você prefere estudar em português e quer aprender a "pensar como um hacker" para se antecipar a invasões, essa é a pedida! O livro ensina a usar as ferramentas prediletas dos invasores (como Nmap e Netcat) a seu favor, blindando seus sistemas.
Eu ganho uma comissão quando você faz uma compra.
Como verificar se você está vulnerável (comandos reais para Mageia)
Execute os passos abaixo no terminal do seu servidor Mageia para saber se você está rodando uma versão afetada.
Passo 1: Verifique a versão instalada
rpm -q roundcubemail
Passo 2: Saída esperada se você estiver vulnerável
Um exemplo de saída seria roundcubemail-1.6.15-1.mga9. Qualquer versão anterior à 1.6.16 (ou 1.7.1) está vulnerável. A versão corrigida para o Mageia 9 é a 1.6.16-1.mga9.
Passo 3: Verifique seu banco de dados (para mais segurança)
Conecte-se ao banco de dados e rode a consulta SQL abaixo para listar a versão salva internamente, útil em algumas configurações:
SELECT `value` FROM `system` WHERE `name` = 'roundcubemail_version';
#!/bin/bash # Script de correção automática para o Roundcube no Mageia ROUNDCUBE_PACKAGE="roundcubemail" VERSION_FILE="/var/www/html/roundcubemail/config/version.inc.php" SERVICES=("httpd" "php-fpm") # Exibe a versão atual echo "Versão atual do Roundcube:" rpm -q $ROUNDCUBE_PACKAGE # Atualiza o sistema e o Roundcube echo "Aplicando a correção de segurança via DNF..." dnf update --refresh $ROUNDCUBE_PACKAGE -y # Verifica se a atualização foi bem-sucedida if [ $? -eq 0 ]; then echo "Atualização concluída. Versão instalada:" rpm -q $ROUNDCUBE_PACKAGE else echo "ERRO: Falha na atualização. Verifique sua conexão ou repositórios." exit 1 fi # Reinicia os serviços essenciais for service in "${SERVICES[@]}"; do systemctl is-active --quiet $service if [ $? -eq 0 ]; then echo "Reiniciando $service..." systemctl restart $service else echo "Aviso: Serviço $service não está ativo." fi done echo "Correção aplicada com sucesso!"
Como usar:
1.Salve o conteúdo em um arquivo, por exemplo fix-roundcube.sh.
2. Dê permissão de execução: chmod +x fix-roundcube.sh.
3. Execute como root: sudo ./fix-roundcube.sh.
Mitigação alternativa caso não possa atualizar agora
Se você não puder reiniciar os serviços ou atualizar o sistema neste momento, estas medidas emergenciais reduzem os riscos até a aplicação da correção oficial.
Opção 1: Restringir Acesso com Iptables (Firewall)
Esta regra bloqueia o acesso geral à interface web, permitindo apenas conexões de uma rede específica (como a sua VPN ou IP fixo).
# Libere seu IP (substitua pelo seu IP real) iptables -I INPUT -p tcp --dport 443 -s SEU_IP_AQUI -j ACCEPT # Bloqueie o acesso à porta HTTPS (443) para todos os outros iptables -A INPUT -p tcp --dport 443 -j DROP # Salve as regras (Mageia pode usar iptables-save) iptables-save > /etc/sysconfig/iptables
Atenção: Se você perder o acesso, reinicie o servidor para restaurar as configurações antigas.
Opção 2: Configurar o ModSecurity (WAF)
Com o ModSecurity e o CRS (Core Rule Set) ativos, você pode bloquear tentativas de SQL Injection e XSS sem desabilitar o serviço. Instale os pacotes e habilite as regras principais em seu servidor web (Apache/Nginx).
Opção 3: Configurar o PHP para Máxima Segurança
No arquivo php.ini do seu servidor, configure diretivas para limitar ações maliciosas:
disable_functions = exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source allow_url_fopen = Off allow_url_include = Off

Nenhum comentário:
Postar um comentário