Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2021-46398 — Uma Prova de Conceito para a exploração da falha CVE-2021-46398 | Kitploit
Ferramentas/GitHubGitHub/laliea/cve-2021-46398
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebPhishingAprendizado e EducaçãoLabs e PráticaArchived
GitHublaliea/cve-2021-46398

CVE-2021-46398

Uma Prova de Conceito para a exploração da falha CVE-2021-46398

Ver Repositório
50há 3 anosAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

CVE-2021-46398 - Lalie ARNOUD, Gaspard ANDRIEU

Neste repositório, você encontrará uma prova de conceito da exploração da falha CVE-2021-46398 através de um docker compose, bem como uma análise dos impactos dessa falha em sistemas de informação.

root@kitploit:~
# Exploit Title: FileBrowser 2.17.2 - Cross Site Request Forgery (CSRF) to Remote Code Execution (RCE)
# Date: 05/02/2022
# Exploit Author: FEBIN MON SAJI
# Vendor Homepage: https://filebrowser.org/
# Software Link: https://github.com/filebrowser/filebrowser
# Version:
    FileBrowser <= 2.17.2
# Tested on: Ubuntu 20.04
# CVE : CVE-2021-46398

O que é FileBrowser?

De acordo com o site do FileBrowser, o FileBrowser é um software popular do tipo "crie sua própria nuvem" que você pode instalar em um servidor, direcioná-lo a um caminho e, em seguida, acessar seus arquivos através de uma bela interface web desenvolvida na linguagem Go, com muitos recursos. É um pouco como o Google Drive, exceto que todos podem possuir e hospedar sua própria instância.

Descrição da falha

Os administradores do FileBrowser podem criar vários usuários, até mesmo outro usuário com privilégios de administrador, e dar acesso a qualquer diretório desejado. A criação de usuários é tratada por um endpoint . O endpoint aceita entrada no formato para criar usuários, mas não verifica o cabeçalho , cujo valor deveria ser , mas aceita ; e é aí que surge a vulnerabilidade. Além disso, a não é validada e também não há tokens anti- implementados. Portanto, um atacante pode explorar facilmente essa vulnerabilidade para criar um usuário backdoor com privilégios de administrador e acesso ao diretório home ou a qualquer diretório que o atacante queira acessar, bastando enviar um URL de página web maliciosa para o administrador legítimo e acessar todo o sistema de arquivos do servidor (mais explicação desse processo na seção de demonstração).

/api/users
JSON
Content-Type
HTTP
application/json
text/plain
Origin
CSRF

Além disso, um administrador pode executar comandos no sistema, então essa vulnerabilidade leva a um RCE.

Aqui está um diagrama de sequência que resume o processo de ataque (Alice sendo o hacker e Bob sendo o administrador e anfitrião da instância do FileBrowser):

root@kitploit:~
sequenceDiagram
Alice (hacker) ->> Alice (hacker): *Cria maliciosamente a página HTML maliciosa*
Alice (hacker) ->> Bob (admin): Aqui está uma página legal! Você precisa ver isso, cara!
Bob (admin) ->> Alice (hacker): Valeu, cara, vamos abrir isso!
Bob (admin) ->> Bob (admin): *Abre a página pensando que é algo legal*
Bob (admin) -->> FileBrowser: *Envia uma requisição para criar um usuário sem saber*
FileBrowser -->> FileBrowser: *Cria um novo usuário com privilégios de administrador conforme solicitado*
Alice (hacker) ->> FileBrowser: Hehehe, Bob é tão burro! *Conecta-se ao FileBrowser com o usuário backdoor*
FileBrowser ->> Alice (hacker): *Aceita a conexão de Alice com o novo usuário criado*
Alice (hacker) ->> FileBrowser: *Solicita acesso ao shell do FileBrowser com o botão apropriado e então faz chamadas de sistema no computador de Bob*

Demonstração da falha de segurança

O objetivo desta demonstração é montar uma mini-arquitetura composta por duas/três máquinas:

  • seu computador pessoal como computador do administrador do FileBrowser de um lado, e como atacante do outro.
  • um container Docker vulnerável simulando um servidor remoto FileBrowser.

É uma arquitetura realmente simplificada cujo objetivo é destacar o aspecto técnico da falha.

Iniciando a imagem da máquina vulnerável

Para este experimento, você precisará apenas do docker.

Nesta configuração, a máquina alvo é baseada em uma imagem do FileBrowser v2.17.2 (que é vulnerável a esta falha), na qual a única conta do FileBrowser é a conta de administrador que tem admin/admin como login/senha.

Iniciando a máquina alvo:

root@kitploit:~
mkdir srv && docker compose up

Exploit

Criar a página web maliciosa

Do lado do atacante, a página web maliciosa nos permitirá executar a chamada à API do FileBrowser e criar nosso usuário backdoor a partir do computador do administrador.

Um exemplo de tal página é fornecido neste repositório com o nome index.html. É uma simples página HTML com um formulário oculto que realiza uma requisição POST para o endpoint /api/users do FileBrowser com o payload no nome da entrada. Esse payload cria um usuário com privilégios de administrador cujo login é "oui" e senha é "oui", e é acionado quando o botão é clicado.

Obviamente, poderíamos ter criado uma página mais bonita e atraente do que esta e esconder o envio da requisição HTTP em outro elemento do site, isso é apenas para que você possa ver o aspecto técnico da exploração da falha. Lembre-se de que o objetivo desta página web maliciosa é ser aberta pelo administrador do FileBrowser sem que ele suspeite de nada!

Executar o exploit da página web enviando o formulário HTML

Do lado do administrador, estamos tranquilamente fazendo coisas de administrador no FileBrowser. Vá para 127.0.0.1:8080 e faça login com as credenciais de admin admin/admin.

Em seguida, recebemos a página web maliciosa por qualquer meio, como em um e-mail de phishing, e realizamos a ação que aciona o exploit. Abra a página index.html e clique no botão; ele lança o payload.

Acessar o usuário backdoor do FileBrowser

Agora, de volta ao lado do atacante, agora temos um usuário backdoor com privilégios de administrador no servidor FileBrowser.

Abra seu navegador favorito em modo de navegação privada para garantir que você não está usando nenhum meio de autenticação do administrador. Vá para localhost:8080 e faça login com as credenciais do usuário backdoor oui/oui.

Parabéns! Agora você tem acesso ao sistema de arquivos do servidor FileBrowser e, portanto, a todos os arquivos dos usuários do servidor!

E porque o FileBrowser é uma ótima plataforma com muitos recursos, você pode iniciar uma instância de terminal pressionando o botão "toggle shell"... tente digitar whoami, e faça o que quiser como root :)

Para permitir que o usuário backdoor use comandos de shell, eles devem ser explicitamente declarados no payload. Veja o index.html para adicionar os seus!

Correção

A falha foi corrigida a partir da versão v2.18.0. As informações sobre isso estão disponíveis no GitHub deles. A correção não foi cara de implantar, pois exigiu apenas 6 linhas de código alteradas em um único arquivo de programa. Como a vulnerabilidade veio da falha na análise (veja descrição da falha), foi suficiente garantir que qualquer requisição fosse analisada no formato application/json antes de ser processada para qualquer outra coisa.

Glossário

  • CSRF: Cross-Site Request Forgery (Falsificação de Requisição entre Sites)
  • CVE: Common Vulnerabilities and Exposures (Vulnerabilidades e Exposições Comuns)
  • POST: Método HTTP
  • RCE: Remote Code Execution (Execução Remota de Código)

Referências

  • CVE-2021-46398
  • ExploitDB
  • Exemplo de exploit
  • Patch de segurança do GitHub do FileBrowser
  • Thread do problema no GitHub do FileBrowser

Este trabalho foi realizado como parte do curso de Segurança de Sistemas de Informação ministrado no último ano da especialização em Engenharia de Sistemas de Informação na Grenoble INP - Ensimag, UGA.

Baixar ferramenta