Você não quer que um visitante indesejado atravesse o sistema de arquivos do seu servidor, mas os invasores encontraram uma maneira de fazer isso. O que você pode fazer?

Quando os usuários visitam seu site, eles confiam que seus dados estão seguros e que eles e outros usuários não podem acessar arquivos ou pastas que não estão autorizados a ver. No entanto, se o seu site for vulnerável à travessia de diretórios, os invasores podem explorar essa fraqueza para mover de um diretório para outro e visualizar arquivos confidenciais que devem ser restritos.

Esses ataques se aproveitam de uma vulnerabilidade no sistema de arquivos do seu site e podem expor informações críticas, levando a sérios riscos de segurança. Neste artigo, exploraremos o que são os ataques de passagem de diretório, por que são tão perigosos e como você pode proteger seu site contra eles.

O que é travessia de diretório?

A travessia de diretório também é conhecida como travessia de caminho ou subida de diretório. É uma vulnerabilidade em sites em que o invasor pode acessar ou ler arquivos fora do diretório raiz do servidor da Web que executa o aplicativo, manipulando a entrada do aplicativo da Web.

instagram viewer

Quando um ataque de passagem de diretório é executado, os invasores são capazes de ler e, às vezes, até fazer alterações em arquivos e diretórios restritos no servidor de aplicativos da web. Eles podem acessar arquivos confidenciais no servidor, como arquivos de configuração de banco de dados, arquivos de código-fonte, arquivos de senha e arquivos de log.

Directory Traversal e a Tríade CIA

Uma travessia de diretório compromete todos os três aspectos de o que é conhecido como a tríade da CIA. A tríade CIA, que é um modelo amplamente reconhecido para segurança da informação, significa Confidencialidade, Integridade e Disponibilidade.

Confidencialidade

Os ataques de passagem de diretório violam a confidencialidade porque arquivos restritos e confidenciais contendo informações sobre o sistema e outros usuários tornam-se acessíveis ao invasor. Todas as informações que não pertençam a um usuário devem ser mantidas em sigilo e não devem ser acessíveis a pessoas não autorizadas. Por exemplo, um invasor que obtém acesso ao banco de dados de usuários e suas informações de identificação pessoal (PIIs) viola a confidencialidade do sistema e dos dados do usuário.

Integridade

É importante observar que uma travessia de diretório pode não apenas parar com os invasores cibernéticos sendo capazes de ler e acessar arquivos em seu servidor da web. Se as permissões do sistema de arquivos em seu servidor não estiverem configuradas corretamente, o hacker poderá modificar ou deletar arquivos ou diretórios importantes do servidor, comprometendo a integridade dos dados naquele servidor. Por exemplo, o invasor pode modificar um arquivo de configuração para conceder a si mesmo acesso administrativo ao servidor ou excluir arquivos do sistema.

Disponibilidade

Há muitas maneiras de um invasor usar o ataque de travessia de diretório para comprometer a disponibilidade do seu servidor. Um exemplo é a exclusão de arquivos críticos no servidor que interrompem a operação do servidor ou fazem com que o aplicativo da web pare de responder. Outro exemplo é o invasor aumentando os privilégios e sobrecarregando o servidor com solicitações, fazendo com que ele trave.

Como funciona um ataque Directory Traversal?

Um ataque de passagem de diretório pode ocorrer de várias maneiras. Quando os invasores suspeitam que um site é vulnerável a ataques de passagem de diretório, eles começam a criar solicitações maliciosas para enviar a esse aplicativo da web.

Alguns sites exibem arquivos por meio do parâmetro URL. Veja, por exemplo, a URL deste site: https://www.website.com/download_file.php? nome do arquivo=arquivo.pdf. Isso significa que o aplicativo da Web está chamando o arquivo "file.pdf" do servidor usando um caminho de URL relativo. Nesse caso, o aplicativo está lendo do caminho: www/var/documents/file.pdf.

Um exemplo simples de um ataque de travessia de diretório é o ataque de travessia de diretório dotdotslash. Nos sistemas UNIX e Windows, o ../ os símbolos são usados ​​para voltar um diretório. O invasor pode substituir o nome do documento por ../../../../../etc/passwd. A URL fica assim: https://www.website.com/download_file.php? filename=../../../../../etc/passwd

Crédito da imagem: Marco Verch Fotógrafo profissional/Flickr

Um invasor pode usar essa carga útil no aplicativo da Web para percorrer vários diretórios para trás para tentar recuperar o arquivo "/etc/passwd" do sistema de arquivos do servidor.

Em sistemas baseados em Unix, o arquivo "/etc/passwd" é um arquivo de texto simples que contém informações sobre contas de usuários locais no sistema, como nomes de usuários, IDs de usuários, diretórios pessoais e shell preferências. O acesso a esse arquivo pode ser útil para invasores porque pode fornecer informações sobre possíveis contas de usuário e vulnerabilidades no sistema.

Outras formas de ataques de passagem de diretório incluem codificação de URL, codificação dupla e ataques de byte nulo.

Por que os ataques Directory Traversal são tão perigosos?

Os ataques de travessia de diretório são considerados muito perigosos porque quase nunca são ataques independentes. Uma vulnerabilidade de travessia de diretório quando explorada pode levar a várias outras vulnerabilidades. Algumas dessas vulnerabilidades incluem:

Divulgação de informação

A divulgação de informações ocorre quando um invasor obtém acesso a informações confidenciais que não estão autorizados a ver. Os ataques de passagem de diretório podem levar a vulnerabilidades de divulgação de informações porque permitem que invasores acessem arquivos e diretórios fora do escopo pretendido de um aplicativo da web. Ao usar cargas úteis de passagem de diretório e solicitações maliciosas, os invasores podem subir na hierarquia de diretórios para acessar arquivos e diretórios potencialmente confidenciais em um servidor. Essa vulnerabilidade pode ser explorada para extrair informações confidenciais, como senhas ou dados do usuário.

Inclusão de arquivo local

A travessia de diretório também pode levar a ataques de inclusão de arquivo local (LFI). LFI é uma vulnerabilidade em aplicativos da Web que permite que um invasor inclua e execute arquivos armazenados no mesmo servidor que o aplicativo da Web em um LFI ataque, um invasor pode usar os parâmetros de entrada de um aplicativo da Web para especificar um caminho de arquivo local, que é incluído pelo aplicativo da Web sem a devida validação. Isso permite que um invasor execute código arbitrário, exiba informações confidenciais ou manipule o comportamento do aplicativo.

Como você pode evitar um ataque Directory Traversal?

Para iniciantes, valide a entrada do usuário antes de processá-la para garantir que ela contenha apenas os caracteres esperados e não contenha caracteres especiais ou separadores de caminho. Outra recomendação é usar filtros e valores permitidos na lista de permissões para comparar a entrada do usuário e bloquear valores suspeitos. Mas todos esses métodos podem ser contornados por um hacker experiente.

A melhor abordagem para evitar ataques de passagem de diretório é evitar permitir que os usuários forneçam entrada para o sistema de arquivos completamente.

Adote uma abordagem proativa para sua segurança

Existem muitas vulnerabilidades no ecossistema cibernético. Para proteger seus ativos contra vulnerabilidades, você deve realizar avaliações de segurança regulares e testes de penetração para identificar potenciais pontos fracos e resolvê-los antes que possam ser explorados por atacantes.

Além disso, mantenha-se atualizado com os patches e atualizações de segurança mais recentes para seus softwares e sistemas, pois muitas vulnerabilidades podem ser corrigidas com essas atualizações. Ao adotar uma abordagem proativa para a segurança cibernética, você pode ajudar a garantir que os ativos de sua organização sejam protegidos contra vulnerabilidades e permaneçam protegidos contra ameaças cibernéticas.