top of page

Falha grave no OAuth2-Proxy (CVE-2025-54576) permite que invasores burlem a autenticação

  • Foto do escritor: Orlando Santos Cyber Security Brazil
    Orlando Santos Cyber Security Brazil
  • 3 de ago.
  • 3 min de leitura

ree

Uma vulnerabilidade de segurança crítica foi descoberta no OAuth2-Proxy, uma ferramenta de código aberto amplamente utilizada para proteger aplicações web através da autenticação OAuth2 ou OIDC. Identificada como CVE-2025-54576, a falha recebeu uma pontuação CVSS de 9.1 (Crítica), sinalizando um risco elevado para milhares de sistemas globalmente. A brecha permite que um hacker, sem qualquer autenticação, acesse rotas e dados que deveriam estar protegidos.


O Que é o OAuth2-Proxy?


O OAuth2-Proxy funciona como um proxy reverso ou middleware, atuando como um porteiro digital para aplicações web. Ele intercepta as solicitações dos usuários e as redireciona para um provedor de identidade (como Google, GitHub ou Okta) para verificar quem o usuário é. Devido à sua flexibilidade e natureza de código aberto, tornou-se uma peça fundamental na arquitetura de segurança de muitas empresas, especialmente em ambientes modernos como Kubernetes, com balanceadores de carga e em infraestruturas nativas da nuvem.


A Raiz da Vulnerabilidade


O problema reside na configuração skip_auth_routes. Esta funcionalidade permite que desenvolvedores listem rotas específicas que devem ignorar a verificação de autenticação, usando expressões regulares (regex). Contudo, foi descoberto que a ferramenta aplicava esses padrões de regex contra o URI completo da requisição — incluindo os parâmetros de consulta (query parameters) — e não apenas contra o caminho (path) da URL, como seria o esperado.


Essa falha de lógica permite que hackers manipulem a URL. Ao adicionar uma string de consulta especialmente criada a um endpoint protegido, eles conseguem enganar o proxy, fazendo-o acreditar que a rota deveria ser pública e, assim, liberando o acesso indevidamente.


Exemplo Prático do Ataque

Imagine que um desenvolvedor configure a seguinte regra para permitir acesso público a uma rota específica:


skip_auth_routes = ["^/foo/.*/bar$"]

A intenção é liberar o acesso a URLs como /foo/qualquercoisa/bar.


No entanto, devido à falha, um invasor pode obter acesso a um endpoint sensível, como /foo/critical_endpoint, que deveria ser protegido. Para isso, ele simplesmente constrói a seguinte URL:


/foo/critical_endpoint?param=/bar

Embora o caminho /foo/critical_endpoint esteja protegido, a presença do parâmetro

?param=/bar no final da URL engana o sistema, fazendo com que ele corresponda à regra de exceção e pule a etapa de autenticação.


Quem Está em Risco?


Este bug afeta principalmente os administradores e desenvolvedores que utilizam padrões de regex amplos ou com curingas (wildcards como .*) em sua configuração skip_auth_routes.


O risco é ainda maior se a aplicação de backend não validar ou bloquear parâmetros de consulta inesperados, tornando o sistema totalmente vulnerável ao bypass de autenticação.


Correção Disponível e Ação Imediata


O problema foi corrigido na versão v7.11.0 do OAuth2-Proxy. A recomendação é que todos os usuários atualizem seus sistemas o mais rápido possível.


Para aqueles que não podem atualizar imediatamente, as seguintes medidas de mitigação devem ser tomadas para reduzir o risco:

  • Audite suas configurações: Revise todas as regras em skip_auth_routes em busca de expressões regulares excessivamente amplas.

  • Use padrões estritos: Evite curingas sempre que possível. Prefira caminhos exatos.

  • Ancore suas expressões: Certifique-se de que os padrões comecem com ^ e terminem com $, para garantir que a correspondência seja feita do início ao fim da string.

  • Seja específico: Em vez de usar um padrão amplo como "^/public/.*", use caminhos específicos e explícitos como:

    • "^/public/assets$"

    • "^/public/health$"

    • "^/api/status$"


A mensagem para a comunidade de desenvolvedores e administradores de sistemas é clara: se você utiliza a funcionalidade skip_auth_routes, não espere. A atualização para a versão v7.11.0 é a medida mais segura e urgente a ser tomada.


Via - SOCRadar

 
 
 

Comentários


bottom of page