Uma investigação conduzida pela equipe de segurança da DigitalOcean, com análise técnica de causa-raiz e acompanhamento junto ao fornecedor em parceria com a Patchstack, revelou duas vulnerabilidades críticas no plugin miniOrange SAML 2.0 Single Sign On, amplamente utilizado em sites WordPress para autenticação corporativa. As falhas, classificadas com nota 9.8 na escala CVSS, permitiam que um invasor sem qualquer credencial forjasse uma autenticação SAML e acessasse o painel administrativo do site como qualquer usuário existente — inclusive administradores.
As duas brechas já foram corrigidas pelo fabricante. O problema é que um número expressivo de sites, incluindo clientes corporativos, não tinha como saber que estava exposto: nenhum aviso de atualização apareceu no painel do WordPress e nenhuma base pública de vulnerabilidades listava o risco corretamente.
As vulnerabilidades: confusão de algoritmo e falha na verificação OpenSSL

A primeira falha, identificada como CVE-2026-61979, decorre de um erro de “confusão de algoritmo de assinatura”. O plugin permite que a própria resposta SAML recebida escolha qual algoritmo de assinatura será usado para validá-la. Um atacante pode definir o método como HMAC-SHA1 e, com isso, fazer o sistema aceitar a chave pública RSA — que é, por natureza, pública — como se fosse o segredo usado no HMAC.
Na prática, isso significa que qualquer pessoa pode buscar a chave pública no endpoint de metadados do provedor de identidade, usá-la como segredo HMAC, assinar sua própria autenticação falsa e fazer o plugin validá-la como legítima. Segundo a análise técnica realizada sobre a versão 16.1.9 do plugin, os trechos de código responsáveis incluem funções que recastam a chave RSA, habilitam o HMAC-SHA1 como opção válida e repassam o material da chave diretamente para a função de verificação, sem as devidas restrições. A miniOrange corrigiu essa falha na versão 17.0.5 da edição Standard.
A segunda vulnerabilidade, CVE-2026-15981, está relacionada à forma como o plugin interpreta o retorno da função openssl_verify(). Essa função pode devolver três resultados: 1 para assinatura válida, 0 para inválida e -1 quando o próprio OpenSSL encontra um erro interno. Como o plugin tratava esse retorno de forma simplificada, e em PHP o valor -1 é considerado “verdadeiro”, uma assinatura malformada capaz de provocar um erro interno no OpenSSL acabava sendo aceita como válida. Essa falha foi corrigida na versão 17.0.6 da edição Standard.
Uma terceira falha, de menor gravidade, foi divulgada logo depois das duas primeiras. Diferentemente das anteriores, ela exige que um administrador realize alguma interação na interface para ser explorada, o que reduz seu risco prático, mas o fornecedor recomenda corrigi-la no mesmo processo de atualização.
Um único registro no WordPress, sete versões distintas do plugin

O ponto central do problema, segundo a apuração, está na forma como o plugin é distribuído. A miniOrange publica o SAML 2.0 Single Sign On sob um único identificador no repositório do WordPress, mas esse registro engloba, na verdade, sete edições comerciais distintas, cada uma com seu próprio ciclo de numeração de versões — nenhuma delas coincide com outra.
Ao consultar o fabricante, a equipe de segurança obteve o detalhamento completo das edições, faixas de versão vulneráveis e versões corrigidas:
- Free (site único): vulnerável até a versão 5.4.4; corrigida na 5.4.5
- Premium (site único): vulnerável até a 13.0.3; corrigida na 13.0.4
- Standard (site único): vulnerável até a 17.0.5; corrigida na 17.0.6
- Premium/Enterprise/All-Inclusive (multisite): vulnerável até a 20.2.7; corrigida na 20.2.8
- Enterprise/All-Inclusive (site único): vulnerável até a 26.0.2; corrigida na 26.0.3
- VIP (site único): vulnerável até a 32.0.7; corrigida na 32.0.8
- VIP (multisite): vulnerável até a 35.0.6; corrigida na 35.0.7
Administradores de sites WordPress devem identificar qual edição do plugin utilizam e comparar a versão instalada com essas faixas para saber se estão expostos.
Alguns pontos merecem atenção especial. Cada edição abrange diversas versões principais — a Free, por exemplo, vai da 3.x à 5.x, enquanto a Standard vai da 15.x à 17.x — o que significa que apenas o número da versão não é suficiente para identificar a edição correta. Além disso, a análise da DigitalOcean confirmou as duas falhas na versão 16.1.9, um lançamento intermediário da linha Standard, cuja correção está apenas na versão 17.0.6: não existe patch específico para a série 16.x, sendo necessário migrar diretamente para a versão corrigida.
Por que as bases de vulnerabilidades não detectaram o problema

O motivo pelo qual nenhuma base pública de vulnerabilidades sinalizou corretamente a exposição está ligado à própria lógica desses catálogos: um registro de vulnerabilidade do WordPress normalmente associa um identificador de plugin a uma faixa de versões afetadas e a uma versão corrigida. Como os avisos públicos de segurança cobriram apenas a edição gratuita do plugin, as seis edições pagas foram corrigidas silenciosamente, sem changelog público e sem qualquer boletim de segurança associado. Como resultado, sites que utilizavam essas versões pagas foram erroneamente classificados como não vulneráveis pelas ferramentas de verificação automática.
A equipe da DigitalOcean também identificou tentativas reais de exploração dessas falhas. Os controles de defesa em profundidade da empresa detectaram e bloquearam a atividade maliciosa em sua infraestrutura, e os indicadores de comprometimento identificados foram compartilhados para ajudar a fortalecer a detecção em todo o ecossistema WordPress.
Administradores que utilizam qualquer edição do plugin miniOrange SAML 2.0 Single Sign On são orientados a verificar a versão instalada em seus sites, compará-la com a tabela de correções por edição e aplicar a atualização apropriada o quanto antes, já que a exploração dessas brechas não exige nenhuma autenticação prévia por parte do atacante.