Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-3854-PoC — RCE su GitHub tramite X-Stat Push Option Injection | Kitploit
Strumenti/GitHubGitHub/lysophavin18/cve-2026-3854-poc
Analisi delle VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e Formazione
GitHublysophavin18/cve-2026-3854-poc

CVE-2026-3854-PoC

RCE su GitHub tramite X-Stat Push Option Injection

Vedi Repository
224 mesi 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

CVE-2026-3854 PoC — RCE su GitHub tramite iniezione dell'opzione push X-Stat

Solo per scopi educativi e di ricerca sulla sicurezza autorizzata.
Non utilizzare su alcun sistema senza esplicita autorizzazione scritta.


Panoramica

CVE-2026-3854 è una vulnerabilità di esecuzione di codice remoto (Remote Code Execution) nella pipeline di push di Git di GitHub Enterprise Server (e di GitHub.com).

Quando un client fornisce opzioni push (git push -o), il codice Ruby interno di GitHub costruisce un header X-Stat concatenando ogni valore di opzione con punti e virgola come delimitatori di campo. Poiché i valori venivano inseriti verbatim (senza sanitizzazione), un attaccante poteva incorporare punti e virgola in un'opzione push per iniettare campi chiave-valore arbitrari nell'header e sovrascrivere impostazioni critiche per la sicurezza — ottenendo infine una RCE senza sandbox come utente git.

Causa principale della vulnerabilità

root@kitploit:~
X-Stat: repo_id=12345;user_id=alice;rails_env=production;...;push_option_0=<USER INPUT>

Iniettando normal_value;rails_env=staging come valore dell'opzione push si ottiene:

root@kitploit:~
...;push_option_0=normal_value;rails_env=staging

Il parser considera l'ultima occorrenza di ogni chiave, quindi rails_env ora è staging (senza sandbox), sovrascrivendo il valore legittimo production impostato in precedenza.


Requisiti

  • Python 3.10 o successivo (usa i type hint integrati list[str] / dict[str, str])
  • Nessun pacchetto di terze parti richiesto

Utilizzo

root@kitploit:~
python3 exploi-git.py

Lo script esegue tre dimostrazioni consecutive interamente in memoria — nessuna connessione di rete, nessun comando shell, nessuna scrittura su file:

DemoCosa mostra
1Iniezione di base con punto e virgola che sovrascrive rails_env
2Catena RCE concettuale completa in 3 passaggi
3Comportamento corretto (patch) — i punti e virgola sono codificati in percentuale e l'iniezione è neutralizzata

Patch

GitHub ha corretto la vulnerabilità codificando in percentuale i punti e virgola nei valori delle opzioni push prima di inserirli nell'header X-Stat:

root@kitploit:~
normal_value;rails_env=staging  →  normal_value%3Brails_env=staging

Questo rende il punto e virgola una parte letterale del valore e interrompe l'iniezione.


Riferimenti

  • Articolo del blog di Wiz Research
  • Blog sulla sicurezza di GitHub
  • NVD — CVE-2026-3854

Dichiarazione di non responsabilità

Questo repository è fornito esclusivamente per scopi educativi e per sostenere la ricerca sulla sicurezza autorizzata. Gli autori non si assumono alcuna responsabilità per un uso improprio. Ottenere sempre un'esplicita autorizzazione scritta prima di testare qualsiasi sistema di cui non si è proprietari.

Scarica lo strumento