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
Upload_Bypass — Uma ferramenta simples para contornar restrições de upload de arquivos. | Kitploit
Ferramentas/GitHubGitHub/sajibuu/upload_bypass
Scanners de VulnerabilidadesGeração de PayloadsExploraçãoSegurança WebTestes de Penetração
GitHubsajibuu/upload_bypass

Upload_Bypass

Uma ferramenta simples para contornar restrições de upload de arquivos.

Ver Repositório
90813212há 2 anosRevisado pelo Kitploit

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

Upload_Bypass v3

GPL-3.0 License 287245591-b1f3cdd6-3d00-4bbb-94c1-38a9204add71

Sobre

Upload Bypass é uma ferramenta simples projetada para auxiliar testadores de penetração e caçadores de bugs na testagem de mecanismos de upload de arquivos. Ela utiliza várias técnicas de bug bounty para simplificar o processo de identificação e exploração de vulnerabilidades, garantindo avaliações completas de aplicações web.

Desenvolvido por Sagiv

2024-02-18_20h04_06

🚀 Atualizações

  • O código foi quase reescrito do zero, utilizando melhor análise de arquivos e eliminando a maioria dos bugs.
  • Código modular! Agora você pode contribuir com o código e adicionar seus próprios módulos.
  • Introdução de 3 modos diferentes: detecção, exploração e verificação anti-malware. Escolha sua arma!
  • Novo recurso de estado: agora você pode pausar o código e retomar de onde parou!
  • Nova IU para facilitar a visualização.
  • Arquivo Docker para implantação fácil.
  • Vários arquivos de teste fornecidos para testes internos.
  • Modo de depuração. Se encontrar um bug, você pode salvar o rastreamento de pilha e compartilhá-lo comigo para análise posterior.
  • Atenção

    Esta ferramenta é restrita no exame OSCP!

    Recursos

    Modo de Detecção:

    Adequado para testes de penetração reais. Este modo enviará arquivos inofensivos e não tentará explorar o alvo.

    Novo - Se uma pasta de destino para os arquivos enviados for fornecida, o programa determinará se o arquivo de amostra enviado é renderizado. Por exemplo, se você escolher PHP, o programa tentará determinar se um comando echo é executado e renderizado com sucesso; se sim, sugerirá entrar em um shell interativo.

    Modo de Exploração:

    Adequado quando você deseja explorar o alvo e enviar um Web-shell interativo (Se um diretório de upload de destino for fornecido). Ele enviará o arquivo com um UUID aleatório, dificultando a adivinhação por fuzzers.

    Modo Anti-Malware:

    Adequado para teste de presença de anti-malware. Envie um arquivo Eicar (arquivo de teste anti-malware) para o sistema e, se o usuário especificar a localização do arquivo enviado, o programa verificará se o arquivo foi enviado com sucesso e existe no sistema, a fim de determinar se um anti-malware está presente no sistema.

    Personalização

    Confira o arquivo config.py no diretório lib; você pode adicionar novas extensões, tipos MIME, magic bytes, configurar o uso do protocolo HTTP/HTTPS, etc.

    Para adicionar um novo módulo, basta adicionar uma função com a funcionalidade desejada ao modules.py e depois adicionar a função pelo nome à lista "active_modules" no config.py.

    Para adicionar uma nova extensão de arquivo, adicione um arquivo sample.{ext} em assets/sample_files, depois adicione a extensão e seu tipo MIME/magic bytes ao config.py.

    Download:

    root@kitploit:~
    git clone https://github.com/sAjibuu/Upload_Bypass.git
    

    Instalação:

    root@kitploit:~
    pip install -r requirements.txt
    

    Instalação a partir do Docker Hub

    root@kitploit:~
    sudo docker pull sajibuu/upload_bypass 
    

    Instalação a partir de um arquivo docker local

    root@kitploit:~
    sudo docker build -t sajibuu/upload_bypass .
    

    Exemplos de uso do Docker

    Exemplo sem proxy:

    root@kitploit:~
    sudo docker run -v $(pwd)/request:/Upload_Bypass/{seu_arquivo_de_requisição} -it sajibuu/upload_bypass -r request -s 'arquivo enviado com sucesso' -E php -e
    

    Exemplo com proxy:

    Certifique-se de ouvir na porta 8080 em todas as interfaces!

    root@kitploit:~
    sudo docker run -v $(pwd)/request:/Upload_Bypass/{seu_arquivo_de_requisição} -it sajibuu/upload_bypass -r request -s 'arquivo enviado com sucesso' -E php -e -p http://{ip_da_interface_docker}:8080
    

    Limitações:

    A ferramenta não funcionará corretamente nas seguintes situações:

    1. Implementação de CAPTCHA está em vigor.
    2. Exigência de um token CSRF para cada requisição.
    3. Uma pasta de destino é fornecida para os arquivos enviados, mas os arquivos enviados são salvos com um GUID (Identificador Único Global) em vez de seus nomes reais; o programa não conseguirá entrar em shell interativo.

    Aviso Legal

    Lembre-se de que o uso do Upload Bypass e quaisquer ações realizadas com ele são de sua inteira responsabilidade. A ferramenta é fornecida apenas para fins educacionais e de teste. O desenvolvedor do Upload Bypass não se responsabiliza por qualquer uso indevido, danos ou atividades ilegais causadas por seu uso.

    Uso:

    Atenção

    O programa funciona apenas com arquivos de requisição gerados por ferramentas de proxy, como Burp Suite e ZAP OWASP.

    Antes de salvar o arquivo de requisição do proxy que você está usando, por exemplo, Burp Suite, substitua os valores dos seguintes parâmetros pelos seus respectivos marcadores:

    Conteúdo do arquivo: *data*

    Exemplo: Substitua os dados binários da imagem pela string *data*

    Nome do arquivo: *filename*

    Exemplo: Substitua o nome do arquivo, incluindo sua extensão, pela string *filename*

    Cabeçalho Content-Type: *mimetype*.

    Exemplo: Substitua o content-type (tipo MIME) do arquivo pela string *mimetype*

    Exemplo 1:

    Como deve ficar em uma requisição JSON:

    image

    Exemplo 2:

    Como deve ficar em uma requisição de dados multipart:

    2024-02-27_11h20_23

    Opções do Usuário:

    root@kitploit:~
    
    Usage: Upload Bypass [OPTIONS]
    
    Options:
      -h, --help     Print help (see more with '--help')
      -U, --usage   Print the how to save the request file instructions.
      -v, --version  Print version
    
    Required Arguments: 
      -r, --request_file <REQUEST_FILE>    Provide a request file to be proccessed
      -E, --extension    <EXTENSION>       Forbidden extension to check (ex: php)
      -A, --allowed      <EXTENSION>       Allowed extension (ex: jpeg) - Optional - if not set the program will auto-detect the extension
    
      Choose only one from the options below:
      -s, --success      <MESSAGE>         Provide a success message when a file is uploaded (ex: File was uploaded successfully)
      -f, --failure      <MESSAGE>         Provide a failure message when a file is uploaded (ex: File is not allowed!)
      -S, --status_code  <STATUS_CODE>     Provide a status code for a success upload (ex: 200)
    
    Mode Settings: 
      -d, --detect          Upload harmless sample files (Suitable for a real penetration test)
      -e, --exploit         Upload Web-Shells files when testing
      -a, --anti_malware    Upload Anti-Malware Test file (Eicar) when testing
          I.  If set with -E flag the program will test with the Eicar string along with the choosen extension
          II. If set without the -E flag the program will test with Eicar string and a com extension
    
    Modules Settings:     
      -l, --list            List all modules  
      -i, --include_only <MODULES>   Include only modules to test from (ex: extension_shuffle, double_extension)
      -x, --exclude      <MODULES>   Exclude modules (ex: svg_xxe, svg_xss)
    
    Request Settings: 
      --base64              Encode the file data with Base64 algorithm
      --allow_redirects     Follow redirects
      -P, --put             Use the HTTP PUT method for the requests (Default is POST)
      -Pa, --patch          Use the HTTP Patch method for the requests (Default is POST)
      -R, --response        Print the response to the screen
      -c, --continue        Continue testing all files, even if a few uploads encountered success
      -t, --time_out <NUM>  Set the request timeout (Default is 8)
      -rl, --rate_limit <NUMBER>  Set a rate-limit with a delay in milliseconds between each request
    
    Proxy Settings: 
      -p, --proxy <PROXY>   Proxy to use for requests (ex: http(s)://host:port, socks5(h)://host:port)
      -k, --insecure        Do not verify SSL certificates
      --burp_http           Set --proxy to 127.0.0.1:8080 and set --insecure to true (For HTTP requests)
      --burp_https          Set --proxy to 127.0.0.1:8080 and set --insecure to false (For HTTPs requests)
    
    Optional Settings: 
      -D, --upload_dir <UPLOAD_DIR>  Provide a remote path where the Web-Shell should be uploaded (ex: /uploads)
      -o, --output  <OUTPUT_PATH>    Output file to write the results into - Default current directory (ex: ~/Desktop/results.txt)
      --debug  <NUM>                 Debug mode - Print the stack trace error to the screen and save it to a file (ex: --debug 1)
          I.  Level 1 - Saves only the stack trace error (default).
          II. Level 2 - Saves the stack trace error and user's arguments along with the request file.
      
    Resume settings:
      --resume  <STATE_FILE>  State file from which to resume a partially complete scan
    
    Update settings:
      -u, --update  Update the program to the latest version
    

    Exemplos

    Modo de Detecção

    root@kitploit:~
     python upload_bypass.py -r test -s 'Arquivo enviado com sucesso' -E php -D /uploads --burp --detect
    

    Modo de Exploração

    root@kitploit:~
     python upload_bypass.py -r test -s 'Arquivo enviado com sucesso' -E php -D /uploads --burp --exploit
    

    Modo Anti-Malware

    root@kitploit:~
     python upload_bypass.py -r test -s 'Arquivo enviado com sucesso' -E php -D /uploads --burp --anti_malware   
    

    Problemas

    Se você encontrar um problema, por favor, use o modo de depuração com um valor de flag 2 e compartilhe comigo (o arquivo de depuração é salvo com os argumentos fornecidos pelo usuário, o arquivo de requisição fornecido e o erro de rastreamento de pilha). Se o arquivo contiver informações sensíveis, você pode usar o valor de flag 1, que salva apenas o erro de rastreamento de pilha no arquivo.

    Contribuição

    Se você quiser contribuir com meu código, especifique exatamente o que adicionou ao código e por que, e certifique-se de realizar vários testes antes de enviar a solicitação de merge.

    Créditos

    • Hacktricks - Agradecimento especial por fornecer técnicas e insights valiosos usados nesta ferramenta.
    • Artemixer - Obrigado por me inspirar com sua versão mais leve da minha ferramenta para reescrever todo o código e torná-lo modular!
    Baixar ferramenta