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
ovpn-kernel-backport — Correzione upstream del kernel OpenVPN per CVE-2026-74727, testata sul kernel Ubuntu 7.0.0-38.38. Include istruzioni di compilazione e risultati dei test funzionali. | Kitploit
Strumenti/GitHubGitHub/kosifuchs/ovpn-kernel-backport
Analisi delle VulnerabilitàAnalisi del CodiceSicurezza di RetePaper e Ricerca
GitHubkosifuchs/ovpn-kernel-backport

ovpn-kernel-backport

Correzione upstream del kernel OpenVPN per CVE-2026-74727, testata sul kernel Ubuntu 7.0.0-38.38. Include istruzioni di compilazione e risultati dei test funzionali.

Vedi Repository
11 mese 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 →
Condividi

Revisione del backport del modulo kernel OpenVPN

Documentazione di una build locale, test funzionali, revisione mirata del codice sorgente e test di regressione deterministici sull'invariante di rehash dell'IP VPN e dell'endpoint di trasporto relativi alla correzione upstream associata a CVE-2026-74727, rispetto al pacchetto sorgente del kernel Ubuntu linux 7.0.0-38.38 su x86_64. I test sull'endpoint di trasporto sono stati inoltre ricompilati ed eseguiti su un kernel Generic KASAN compilato localmente.

Attribuzione e ambito

Questa è una revisione di un backport di una correzione upstream esistente, non una vulnerabilità scoperta di recente né una correzione di sicurezza originale. L'autore upstream registrato è Antonio Quartulli. Il commit registrato è 33ec10567fe14456063daf549fdf1a4f53448e4c.

Patch upstream: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/patch/?id=33ec10567fe14456063daf549fdf1a4f53448e4c

La modifica in drivers/net/ovpn/peer.c impedisce il rehash di un peer già rimosso dalla tabella hash degli ID dei peer. Conservare le intestazioni originali della patch, la paternità e la licenza al momento della distribuzione. Questa documentazione non relicenzia la patch del kernel.

La patch upstream originale è inclusa byte per byte. Il suo SHA-256 corrisponde all'artefatto utilizzato nella sessione di test registrata. L'autore, il messaggio di commit e le modifiche al codice sono stati verificati rispetto al commit upstream pubblico su GitHub. Nessun binario è incluso.

Checksum registrati

Il checksum della patch è stato verificato in modo indipendente rispetto al file incluso. Il checksum del modulo è stato registrato durante la sessione di test dell'operatore; il binario non è distribuito qui.

ArtefattoSHA-256
CVE-2026-74727-upstream.patchbaf0962c60b182776a86e040d2ec5b35eea2737c2e2eb6f17f87eb7d2fe47b24
ovpn.ko testato0853fdce14ce1c4d64857871dc873bf98a1b8fe8243bf042ad6daffc906e6d27

Applicazione e compilazione

Utilizzare una copia estratta separata dell'esatto pacchetto sorgente Ubuntu linux 7.0.0-38.38. Installare prima gli header del kernel corrispondenti e la toolchain di compilazione. Il compilatore registrato era Ubuntu GCC 15.2.0-16ubuntu1, corrispondente al compilatore del kernel in esecuzione.

Dalla radice del sorgente, con la patch nella directory superiore:

patch --dry-run --batch --forward --fuzz=0 -p1 < ../CVE-2026-74727-upstream.patch
patch --batch --forward --fuzz=0 -p1 < ../CVE-2026-74727-upstream.patch
make -C /lib/modules/7.0.0-38-generic/build \
  M="$PWD/drivers/net/ovpn" CONFIG_OVPN=m \
  CC=x86_64-linux-gnu-gcc -j1 modules

L'applicazione della patch registrata ha utilizzato zero fuzz con offset di riga di -6 e -5. La build ha restituito codice di uscita 0. La generazione di BTF è stata saltata perché vmlinux non era disponibile. Il vermagic del modulo corrispondeva a 7.0.0-38-generic SMP preempt mod_unload modversions.

La corrispondenza del vermagic e una build riuscita non dimostrano che un modulo sia sicuro né che la vulnerabilità sia stata completamente validata.

Test funzionali registrati

I test sono stati eseguiti manualmente su una VM Ubuntu Hyper-V con kernel 7.0.0-38-generic e Secure Boot disabilitato. I risultati si basano sull'output del terminale fornito dall'operatore:

  • Il modulo di test è stato caricato e il suo build-ID corrispondeva al build-ID del modulo caricato.
  • La connessione OpenVPN DCO esistente si è riconnessa correttamente.
  • Un namespace di rete separato ha supportato la creazione e l'eliminazione di un'interfaccia MP.
  • È stato possibile creare, interrogare, configurare ed eliminare un peer di test.
  • Una CLI di test modificata ha cambiato l'indirizzo IPv4 VPN di un peer di test da 192.0.2.2 a 192.0.2.3; lo stato del peer restituito ha confermato la modifica. Ciò è rimasto confinato a un namespace di test temporaneo e non ha modificato l'indirizzo VPN operativo.
  • Il log del kernel esaminato non conteneva messaggi corrispondenti a BUG, Oops, KASAN, general protection fault o soft lockup. Erano presenti messaggi di taint per moduli out-of-tree non firmati.
  • I namespace di test sono stati rimossi e il modulo della distribuzione è stato ricaricato dopo i test. La VPN operativa si è riconnessa.

Test di regressione deterministico per il rehash dell'IP VPN

Il 2026-10-06, due moduli di test autonomi hanno eseguito la funzione effettiva ovpn_peer_hash_vpn_ip() estratta dal backup non patchato e dal sorgente patchato. Oggetti sintetici privati sono rimasti allocati per tutta la durata. Dopo aver simulato la rimozione completata dalle tabelle hash, il test ha richiamato nuovamente la funzione sotto ovpn->lock.

ProprietàPrima della patchDopo la patch
Il peer attivo è inserito nelle tabelle IPv4 e IPv6PASSPASS
Il peer rimosso rimane fuori dalle tabelle IPv4 e IPv6FAILPASS
Bucket IPv4 / IPv6 occupati dopo il rehash del peer rimosso1 / 10 / 0

Si tratta di una verifica a runtime dell'invariante specifico post-rimozione, non di una riproduzione di una race di cancellazione concorrente o di un use-after-free. Il fallimento dell'invariante nella baseline è atteso e dimostra che il test distingue le due versioni della funzione. Entrambi i moduli sono stati successivamente scaricati. La VPN operativa è rimasta attiva con il suo indirizzo invariato. L'intervallo di log esaminato conteneva i risultati dei test e nessun messaggio corrispondente a BUG, Oops, general protection fault o soft lockup.

Vedere TESTING.md per l'output registrato, le istruzioni di riproduzione e i limiti. Il generatore si trova in tests/prepare-ovpn-rehash-regtest.py.

Test di regressione deterministico per endpoint di trasporto / float

Il 2026-10-06, moduli di test autonomi hanno inoltre eseguito la funzione effettiva ovpn_peer_endpoints_update() estratta dai sorgenti non patchati e patchati, con gli helper di binding di produzione. Sia per IPv4 che per IPv6, header di pacchetto sintetici privati hanno causato il float di un peer attivo, quindi hanno causato un altro aggiornamento dell'endpoint dopo che le sue voci hash erano state rimosse mentre la sua memoria rimaneva allocata.

Proprietà, sia per IPv4 che per IPv6Prima della patchDopo la patch
Il peer attivo esegue il float e rimane nella tabella di trasportoPASSPASS
L'aggiornamento dell'endpoint viene raggiunto dopo la rimozione modellataPASSPASS
Il peer rimosso rimane fuori dalla tabella di trasportoFAILPASS
Bucket di trasporto occupati dopo l'aggiornamento del peer rimosso10

Nessun pacchetto è stato trasmesso e nessuna interfaccia, peer VPN o indirizzo reale è stato modificato. Entrambi i moduli di test sono stati scaricati successivamente; la VPN operativa è rimasta attiva con il suo indirizzo invariato. L'intervallo di log esaminato conteneva i quattro risultati dei test e nessuna riga corrispondente a BUG, Oops, general protection fault o soft lockup.

Vedere FLOAT-TESTING.md e tests/prepare-ovpn-float-regtest.py per l'ambito, le istruzioni di riproduzione e i risultati registrati.

Ulteriore esecuzione KASAN e revisione del codice sorgente

Scarica lo strumento