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
BrokenPipe — Vulnerabilità di escalation dei privilegi locali nel servizio client Steam | Kitploit
Strumenti/GitHubGitHub/killaboi/brokenpipe
Escalation di PrivilegiAnalisi delle VulnerabilitàExploitPost-ExploitPenetration TestingRed Teaming
GitHubkillaboi/brokenpipe

BrokenPipe

Vulnerabilità di escalation dei privilegi locali nel servizio client Steam

Vedi Repository
23552911 mese faRevisionato da Kitploit

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

BrokenPipe - Vulnerabilità LPE nel servizio client di Steam

Questa è la versione a script singolo. Il PoC originale compilato in C++ si trova sul branch legacy. Grazie a John Hammond per il suggerimento, iscriviti al suo canale!

BrokenPipe che avvia un prompt dei comandi NT AUTHORITY\SYSTEM

Video del PoC: YouTube
Analisi di John Hammond: YouTube


Un saluto a @MSNIGHTMARE2000 per l'ispirazione - per favore, dategli un lavoro e scrivetegli una mail!
Un ringraziamento a Tookie, Hazetick, belogen e bet3rd per essere i migliori amici di sempre.
Sto ancora aspettando la nostra sessione di gioco lusilly •`_´•

Cos'è BrokenPipe?

BrokenPipe dimostra un'escalation di privilegi locale da un account Windows standard a NT AUTHORITY\SYSTEM tramite il servizio client di Steam. La proof avvia un prompt dei comandi SYSTEM senza richiedere credenziali di amministratore né mostrare un prompt UAC.

Cosa dimostra lo screenshot qui sopra

  • BrokenPipe è stato avviato da un utente Windows standard.
  • Steam era aperto sulla sua schermata di login non autenticata.
  • Il prompt dei comandi risultante è stato eseguito come NT AUTHORITY\SYSTEM.
  • whoami /user ha restituito il SID del Local System, S-1-5-18.
  • Nessun gioco è stato avviato.

Riepilogo tecnico

Il servizio client di Steam (steamservice.exe), che viene sempre eseguito come SYSTEM, accetta una radice di installazione controllata dal chiamante che non è coperta dalla firma di un VDF di script di installazione autentico firmato da Valve. BrokenPipe sfrutta questa lacuna nella copertura della firma per far eseguire al servizio privilegiato il launcher incluso da un percorso rilocato come SYSTEM. Non falsifica, modifica né aggira la firma del VDF.

Pipeline:

Establish IPC connection to Steam Client Service   (no admin needed)
                         |
                         v
IClientInstallUtils::AddInstallScriptToWhiteList
                         |
                         |  genuine Valve-signed VDF
                         |  caller-controlled installation root       <-- flaw is here
                         |  relocated launcher becomes whitelisted
                         v
IClientInstallUtils::RunInstallScript
                         |
                         |  service processes the run VDF
                         |  whitelisted launcher is selected
                         v
Steam Client Service launches the executable as SYSTEM
                         |
                         v
the relocated launcher.exe now runs as NT AUTHORITY\SYSTEM

La proof è stata validata rispetto alla versione corrente di Steam 10.96.30.42 sulle versioni più recenti di Windows 10 e Windows 11 x64.

Requisiti

  • Windows 10 o Windows 11 x64
  • Steam installato, con il servizio Steam Client Service in esecuzione
  • Windows PowerShell 5.1 (fornito con Windows)

Nessuna fase di build. BrokenPipe è un singolo script PowerShell autonomo. Il VDF autentico firmato da Valve è incorporato come base64 e il client IPC dello Steam Client Service è un tipo C# inline, quindi non ci sono binari esterni da compilare o distribuire.

Utilizzo

  1. Accedi come utente Windows standard.
  2. Avvia Steam e lascialo inattivo. Non è richiesto l'accesso a un account Steam.
  3. Non aprire un gioco.
  4. Dalla directory del progetto, esegui lo script senza elevazione:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\BrokenPipe-PowerShell.ps1

Per impostazione predefinita lo script copia C:\Windows\System32\cmd.exe e fa in modo che Steam Client Service lo avvii come SYSTEM. Il fatto che il launcher.exe ricollocato venga eseguito come NT AUTHORITY\SYSTEM è la prova (confermalo in Task Manager o Process Explorer). Se Steam non è già in esecuzione, lo script lo avvia prima in modo silenzioso.

Puntalo sul tuo payload con i parametri:

.\BrokenPipe-PowerShell.ps1 -PayloadPath "C:\path\to\payload.exe" -PayloadArguments "your args"

Struttura del codice sorgente

BrokenPipe\
  assets\
    brokenpipe-system-shell.png
  BrokenPipe-PowerShell.ps1
  LICENSE
  README.md

È tutto in BrokenPipe-PowerShell.ps1: stabilisce l'IPC a memoria condivisa verso lo Steam Client Service, inserisce nella whitelist il VDF firmato da Valve incorporato rispetto a una root di installazione controllata dal chiamante, quindi esegue il launcher rilocato come SYSTEM.

FAQ

Cos'è questo?
Un'Escalation di Privilegi Locale da Utente Standard -> SYSTEM.

Come funziona?
È tutto in BrokenPipe-PowerShell.ps1, un solo file, leggilo dall'inizio alla fine.

Non è inutile?
Per te, forse, per altri, probabilmente no.

Cosa c'è di così grave?
Stai ottenendo privilegi SYSTEM, che è un livello superiore ad Administrator (quello che clicchi con il tasto destro e selezioni) e un livello inferiore a TRUSTEDINSTALLER senza essere effettivamente un amministratore in primo luogo. Se non lo capisci, cercalo su Google (o chiedi al tuo LLM di quartiere preferito come Grok, ChatGPT o Siri lol).

Perché?
Perché VALVE lo sa già da marzo, non l'hanno corretto e semplicemente perché non mi interessa di Steam o di qualsiasi gioco VALVE, soprattutto quando CS2 è pieno di cheater ed exploiter. Dovrebbero correggerlo e dare un'occhiata a quella segnalazione vecchia di 5 mesi.

Qualche stupida domanda sull'installazione da Admin Standard o qualunque cosa che qualcuno mi ha fatto perdere qualche neurone...
Persino il tuo antivirus necessita dei diritti di amministratore quando lo installi, installare Steam ovviamente richiede i diritti di amministratore alla prima installazione. Dopo di che esegue semplicemente il servizio come SYSTEM anche per un utente standard. Non chiederlo a me, chiedilo a VALVE.

Legacy

La versione originale era un launcher C++ compilato (BrokenPipe.exe) che estraeva un laboratorio interattivo incorporato, inclusi un broker che gestiva una console SYSTEM completamente interattiva. Quella versione vive sul branch legacy. Questo branch è la stessa vulnerabilità distillata in un singolo script PowerShell senza fase di build e senza binari incorporati.

Disclaimer

Questo progetto è fornito per ricerca di sicurezza autorizzata e validazione difensiva. Testa solo su sistemi di tua proprietà o per i quali hai esplicita autorizzazione alla valutazione.

Scarica lo strumento