
Uma ferramenta de teste de penetração para encontrar bugs de upload de arquivos (NDSS 2020)
FUSE é um sistema de teste de penetração projetado para identificar vulnerabilidades de Upload de Arquivo Executável Irrestrito (UEFU). Os detalhes da estratégia de teste estão em nosso artigo, "FUSE: Finding File Upload Bugs via Penetration Testing", que foi apresentado no NDSS 2020. Para ver como configurar e executar o FUSE, veja a seguir.
Atualmente, o FUSE funciona no Ubuntu 18.04 e Python 2.7.15.
# apt-get install rabbitmq-server
# apt-get install python-pip
# apt-get install git
$ git clone https://github.com/WSP-LAB/FUSE
$ cd FUSE && pip install -r requirements.txt
O FUSE utiliza um arquivo de configuração fornecido pelo usuário que especifica parâmetros para uma aplicação PHP alvo. O script deve ser preenchido antes de testar uma aplicação Web alvo. Você pode consultar o arquivo README e os arquivos de configuração de exemplo.
Configuração para o Monitor de Arquivos (Opcional)
$ vim filemonitor.py
...
10 MONITOR_PATH='/var/www/html/' <- Web root of the target application
11 MONITOR_PORT=20174 <- Default port of File Monitor
12 EVENT_LIST_LIMITATION=8000 <- Maxium number of elements in EVENT_LIST
...
$ python framework.py [Caminho do arquivo de configuração]
$ python filemonitor.py
Se você encontrar bugs UFU e UEFU e obtiver CVEs ao executar o FUSE, envie um PR para README.md
Este projeto de pesquisa foi conduzido pelo WSP Lab no KAIST.
Para citar nosso artigo:
@INPROCEEDINGS{lee:ndss:2020,
author = {Taekjin Lee and Seongil Wi and Suyoung Lee and Sooel Son},
title = {{FUSE}: Finding File Upload Bugs via Penetration Testing},
booktitle = {Proceedings of the Network and Distributed System Security Symposium},
year = 2020
}
| Aplicação | CVEs |
|---|
| Elgg | CVE-2018-19172 |
| ECCube3 | CVE-2018-18637 |
| CMSMadeSimple | CVE-2018-19419, CVE-2018-18574 |
| CMSimple | CVE-2018-19062 |
| Concrete5 | CVE-2018-19146 |
| GetSimpleCMS | CVE-2018-19420, CVE-2018-19421 |
| Subrion | CVE-2018-19422 |
| OsCommerce2 | CVE-2018-18572, CVE-2018-18964, CVE-2018-18965, CVE-2018-18966 |
| Monstra | CVE-2018-6383, CVE-2018-18694 |
| XE | XEVE-2019-001 |