Voltar para o Labs
Fraqueza (CWE)

CWE-22

Limitação Imprópria de um Nome de Caminho a um Diretório Restrito ('Path Traversal')

Sobre

O produto usa entrada externa para construir um nome de caminho destinado a identificar um arquivo ou diretório localizado sob um diretório pai restrito, mas o produto não neutraliza adequadamente elementos especiais dentro do nome de caminho que podem fazer com que ele resolva para um local fora do diretório restrito.

Muitas operações de arquivo devem ocorrer dentro de um diretório restrito. Usando elementos especiais como ".." e separadores "/", os atacantes podem escapar para fora do local restrito e acessar arquivos ou diretórios que estão em outro lugar do sistema. Um dos elementos especiais mais comuns é a sequência "../", que na maioria dos sistemas operacionais modernos é interpretada como o diretório pai do local atual. Isso é chamado de path traversal relativo. O path traversal também abrange o uso de nomes de caminho absolutos, como "/usr/local/bin", para acessar arquivos inesperados. Isso é chamado de path traversal absoluto.

Consequências comuns

  • Integridade, Confidencialidade, Disponibilidade → Executar Código ou Comandos Não Autorizados
  • Integridade → Modificar Arquivos ou Diretórios
  • Confidencialidade → Ler Arquivos ou Diretórios
  • Disponibilidade → DoS: Falha, Encerramento ou Reinicialização

Mitigações

  • Implementação: Assuma que toda entrada é maliciosa. Use uma estratégia de validação de entrada do tipo "aceitar apenas o que é reconhecidamente bom", isto é, use uma lista de entradas aceitáveis que estejam estritamente em conformidade com as especificações. Rejeite qualquer entrada que não esteja estritamente em conformidade com as especificações, ou transforme-a em algo que esteja. Ao realizar a
  • Arquitetura e Design: Para quaisquer verificações de segurança realizadas no lado do cliente, garanta que essas verificações sejam duplicadas no lado do servidor, a fim de evitar o CWE-602. Os atacantes podem contornar as verificações do lado do cliente modificando os valores após as verificações terem sido realizadas, ou alterando o cliente para remover completamente as verificações do lado do cl
  • Implementação: As entradas devem ser decodificadas e canonizadas para a representação interna atual da aplicação antes de serem validadas (CWE-180). Certifique-se de que a aplicação não decodifique a mesma entrada duas vezes (CWE-174). Tais erros poderiam ser usados para contornar esquemas de validação por allowlist, introduzindo entradas perigosas depois que elas já foram verificadas. Use uma fun
  • Arquitetura e Design: Use uma biblioteca ou framework comprovado que não permita a ocorrência dessa fraqueza ou que forneça construções que facilitem evitá-la [REF-1482].
  • Operação: Use um firewall de aplicação capaz de detectar ataques contra essa fraqueza. Ele pode ser benéfico em casos em que o código não pode ser corrigido (porque é controlado por terceiros), como medida emergencial de prevenção enquanto medidas mais abrangentes de garantia de software são aplicadas, ou para prover defesa em profundidade [REF-1481].
  • Arquitetura e Design, Operação: Execute seu código usando os menores privilégios necessários para realizar as tarefas exigidas [REF-76]. Se possível, crie contas isoladas com privilégios limitados que sejam usadas apenas para uma única tarefa. Dessa forma, um ataque bem-sucedido não dará imediatamente ao atacante acesso ao restante do software ou de seu ambiente. Por exemplo, aplicações de banco d

CVEs com esta fraqueza

Perguntas frequentes

O que é CWE-22?

O produto usa entrada externa para construir um nome de caminho destinado a identificar um arquivo ou diretório localizado sob um diretório pai restrito, mas o produto não neutraliza adequadamente elementos especiais dentro do nome de caminho que podem fazer com que ele resolva para um local fora do diretório restrito. Muitas operações de arquivo devem ocorrer dentro de um diretório restrito.

Qual a probabilidade de CWE-22 ser explorada?

A MITRE classifica a probabilidade de exploração de CWE-22 como high.

Quais plataformas CWE-22 afeta?

CWE-22 já foi observada em: AI/ML.

Quantas CVEs a Rainforest acompanha para CWE-22?

O Rainforest Labs acompanha atualmente 8 CVEs publicadas associadas a CWE-22. Elas estão listadas nesta página.

Potencialize sua estratégia de segurança com a Rainforest

Descubra vulnerabilidades cedo, priorize ameaças críticas e proteja o que realmente importa. A Rainforest simplifica suas operações de segurança, economizando tempo e reduzindo custos, para você focar no que move o seu negócio.