Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
afterimage — Regressioni indipendenti offline ai confini del protocollo per le correzioni pubblicate di urllib3, con release bloccate e attribuzione upstream. | Kitploit
Strumenti/GitHubGitHub/ssh-pur66/afterimage
Analisi StaticaAnalisi delle VulnerabilitàExploitSicurezza WebPaper e RicercaApprendimento e Formazione
GitHubssh-pur66/afterimage

afterimage

Regressioni indipendenti offline ai confini del protocollo per le correzioni pubblicate di urllib3, con release bloccate e attribuzione upstream.

Vedi Repository
21 giorno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Sito web
Condividi

Afterimage: studi sui confini dei protocolli

Precedentemente pubblicato come CVE Replay. Il nome del repository e la presentazione sono cambiati; le release bloccate, l'attribuzione del reporter originale, i percorsi dei fixture e i risultati registrati mantengono la loro identità originale.

Studi offline indipendenti confrontano le correzioni pubblicate utilizzando release esatte e fixture delimitate. Ogni studio mantiene espliciti il comportamento misurato, il confine di trasporto e l'attribuzione.

  • Redirect headers — CVE-2026-44431, urllib3 2.6.3 / 2.7.0. Lo studio originale segue di seguito.
  • Chunk Lines — CVE-2026-97689, urllib3 2.7.0 / 2.8.0 bloccate, con 32 casi offline delimitati. Verifica l'accettazione e il rifiuto delle framing-line; non stabilisce esaurimento di memoria o impatto sull'applicazione.

Il confine degli header di redirect

CVE-2026-44431 · urllib3 2.6.3 → 2.7.0 · riprodotto il 27 settembre 2026

Una richiesta trasporta tre header sensibili verso una singola origine. Un redirect cambia la destinazione. La richiesta successiva li trasporta ancora?

Questa regressione indipendente esegue l'implementazione reale del redirect da due release esatte di urllib3. La versione 2.6.3 mantiene tutti e tre gli header attraverso l'API di basso livello interessata. La versione 2.7.0 li rimuove. Un header benigno sopravvive, e le richieste ordinarie continuano a funzionare.

Risultato misurato

Fixtureurllib3 2.6.3urllib3 2.7.0
Redirect cross-origin di basso livello3 header sensibili mantenuti0 mantenuti
Stesso caso con nomi in minuscolo3 mantenuti0 mantenuti
Controllo API di alto livello0 mantenuti0 mantenuti
Risposta 200 diretta3 mantenuti come previsto3 mantenuti come previsto
Redirect esplicitamente disabilitatoUna chiamata; 302 restituitoUna chiamata; 302 restituito
Set di rimozione personalizzato aggiunge marcatore benignoTutti e 4 gli header mantenutiTutti e 4 rimossi

12/12 aspettative di scenario superate. Ogni scenario verifica anche lo stato della risposta, il numero di chiamate di trasporto, il set di header iniziale, il risultato dell'header benigno e che gli header del chiamante non siano stati mutati. L'esito vulnerabile è un risultato di base atteso, non un controllo di sicurezza superato.

I risultati leggibili da macchina includono gli argomenti catturati, gli hash esatti dei wheel, il runtime, gli hash del codice sorgente dei test, l'attribuzione e il momento della riproduzione.

Il problema pubblicato

L'advisory upstream, pubblicato il 7 maggio 2026, identifica un problema di esposizione di informazioni nel percorso di redirect di basso livello con proxy di urllib3. Elenca le versioni >=1.23, <2.7.0 come interessate. La chiamata a ProxyManager.connection_from_url(...).urlopen(..., assert_same_host=False) poteva trasportare header sensibili configurati in una richiesta reindirizzata verso un'altra origine. L'API del manager di alto livello li rimuoveva già.

La correzione upstream applica Retry.remove_headers_on_redirect prima della richiesta ricorsiva di basso livello. Il nostro caso con header in minuscolo segue l'attenzione della regressione upstream al casing dei nomi degli header. Il caso di rimozione personalizzata verifica che la regola rispetti il set configurato, oltre ai soli tre nomi predefiniti.

L'advisory accredita christos-cantina-security come reporter, illia-v come coordinatore e sethmlarson come revisore della remediation. Il contributo di Sergio Rodriguez qui è l'harness offline indipendente e l'analisi before/after. Questa è una riproduzione della loro CVE pubblicata.

Riprodurre il fixture

Usa Python 3.10 o successivo. Non è necessario pip install o un ambiente virtuale: ogni versione viene importata direttamente dal suo wheel pure-Python in un sottoprocesso isolato nuovo.

Dalla radice del repository del portfolio:

python -B ./labs/cve-replay/run_replay.py --fetch
python -B ./labs/cve-replay/run_replay.py

Il primo comando scarica i due wheel esatti nella directory .cache/wheels/ ignorata dal lab e verifica i loro hash SHA-256 rispetto al manifest. Il secondo comando usa quella cache senza scaricare. Per un checkout del sorgente autonomo, esegui python -B run_replay.py --fetch, poi lo stesso comando senza --fetch. --cache accetta una directory di cache locale diversa.

Dove inizia il mock

HTTPConnectionPool._make_request viene sostituito con un trasporto a due risposte: un 302 con una location fissa, poi un 200. Il fixture cattura gli argomenti che raggiungono quel confine. Il parsing di urllib3, la policy di retry, il filtraggio degli header e la gestione ricorsiva dei redirect vengono eseguiti invariati dal wheel selezionato.

Tutte le destinazioni sono nomi .invalid riservati e fissi; tutti i valori degli header iniziano con DUMMY. La costruzione dei socket e le funzioni DNS sollevano immediatamente un'eccezione. La sonda di capacità IPv6 all'import della libreria viene negata e registrata separatamente; gli scenari di replay non tentano alcuna operazione di rete. Non c'è alcun server in ascolto o target live.

Questo valida la gestione degli argomenti del redirect. Non misura il traffico proxy end-to-end. La versione 2.7.0 è la prima correzione per questa particolare CVE; questo confronto storico non è una raccomandazione a sceglierla rispetto a release più recenti supportate.

Fonti e attribuzione

  • Advisory del maintainer / CVE-2026-44431
  • Correzione upstream e test di regressione
  • Sorgente della release interessata
  • Sorgente della release corretta
  • Note di rilascio di urllib3 2.7.0
  • URL dei pacchetti bloccati, metadati PyPI e hash

Gli script dei fixture e l'analisi sono lavoro originale del portfolio. urllib3 è un progetto upstream distribuito sotto la sua licenza MIT; il suo codice e i wheel delle release non sono ridistribuiti nell'archivio sorgente del portfolio. Vengono scaricati separatamente da PyPI e importati invariati per l'esperimento.

Scarica lo strumento