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-2026-2020-SSRF-via-URL-Parser-Differential — Demonstra exploração de SSRF via diferença de parsing de URL entre urllib.parse e requests, incluindo serviço vulnerável e script de exploit de PoC. | Kitploit
Ferramentas/GitHubGitHub/george0papasotiriou/cve-2026-2020-ssrf-via-url-parser-differential
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebTestes de PenetraçãoAprendizado e Educação
GitHubgeorge0papasotiriou/cve-2026-2020-ssrf-via-url-parser-differential

CVE-2026-2020-SSRF-via-URL-Parser-Differential

Demonstra exploração de SSRF via diferença de parsing de URL entre urllib.parse e requests, incluindo serviço vulnerável e script de exploit de PoC.

Ver Repositório
2há 1 mêsAinda 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-2026-2020 – SSRF via Diferença de Parser de URL

Código do Programa (Python)

root@kitploit:~
# vulnerable_service.py - Validates URL with urllib.parse, fetches with requests
from flask import Flask, request
import requests
import urllib.parse

app = Flask(__name__)

def is_allowed_url(url):
    parsed = urllib.parse.urlparse(url)
    # Only allow http://localhost and http://127.0.0.1
    return parsed.hostname in ('localhost', '127.0.0.1')

@app.route('/fetch')
def fetch():
    url = request.args.get('url')
    if not is_allowed_url(url):
        return "Blocked", 403
    # Fetch with requests (different parser)
    r = requests.get(url, timeout=5)
    return r.text

if __name__ == '__main__':
    app.run(port=5000)

CVE-2026-2020 – SSRF via Diferença de Parser de URL

Severity: High

Visão Geral

Um serviço usa o urllib.parse.urlparse do Python para validar URLs, mas depois as busca com a biblioteca requests. Divergências na forma como os dois parsers lidam com caracteres especiais (como @) permitem que um atacante contorne a lista de permissões e acesse recursos internos.

Detalhes da Vulnerabilidade

  • Tipo: Falsificação de Solicitação do Lado do Servidor (SSRF) – Diferença de Parser
  • Impacto: Acesso a serviços internos, exfiltração de metadados da nuvem.
  • Causa raiz: urlparse trata [email protected] como tendo o hostname localhost (a parte antes de @ é o nome de usuário), enquanto requests interpreta o host como evil.com.

Demonstração do Exploit

  1. Inicie o serviço vulnerável:
    root@kitploit:~
    pip install flask requests
    python vulnerable_service.py
    
  2. Execute o exploit:
    root@kitploit:~
    python exploit_ssrf_parser_diff.py
    
Baixar ferramenta