Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
BrokenPipe — Vulnerabilidade de Escalação de Privilégios Locais no Steam Client Service | Kitploit
Ferramentas/GitHubGitHub/killaboi/brokenpipe
Escalada de PrivilégiosAnálise de VulnerabilidadesExploraçãoPós-ExploraçãoTestes de PenetraçãoRed Teaming
GitHubkillaboi/brokenpipe

BrokenPipe

Vulnerabilidade de Escalação de Privilégios Locais no Steam Client Service

Ver Repositório
2355291há 1 mêsRevisado pelo Kitploit

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

BrokenPipe - Vulnerabilidade de LPE no Serviço do Cliente Steam

Esta é a versão de script único. O PoC original compilado em C++ está na branch legacy. Agradecimentos a John Hammond pela sugestão, inscreva-se no canal dele!

BrokenPipe lançando um prompt de comando NT AUTHORITY\SYSTEM

Vídeo do PoC: YouTube
Análise do John Hammond: YouTube


Greetz para @MSNIGHTMARE2000 pela inspiração - por favor, deem um emprego a ele e mandem um e-mail!
Shoutout para Tookie, Hazetick, belogen e bet3rd por serem os melhores parceiros.
Ainda estou esperando nossa sessão de jogos lusilly •`_´•

O que é o BrokenPipe?

O BrokenPipe demonstra uma escalada de privilégios local de uma conta Windows padrão para NT AUTHORITY\SYSTEM através do Serviço do Cliente Steam. A prova lança um prompt de comando SYSTEM sem solicitar credenciais de administrador ou exibir um prompt do UAC.

O que a captura de tela acima prova

  • O BrokenPipe foi lançado por um usuário Windows padrão.
  • O Steam estava aberto em sua tela de login não autenticada.
  • O prompt de comando resultante foi executado como NT AUTHORITY\SYSTEM.
  • whoami /user retornou o SID do Sistema Local, S-1-5-18.
  • Nenhum jogo foi iniciado.

Resumo técnico

O Serviço do Cliente Steam (steamservice.exe), que sempre é executado como SYSTEM, aceita uma raiz de instalação controlada pelo chamador que não está coberta pela assinatura de um VDF de script de instalação genuíno assinado pela Valve. O BrokenPipe usa essa lacuna de cobertura de assinatura para fazer o serviço privilegiado executar o launcher incluído a partir de um caminho realocado como SYSTEM. Ele não forja, modifica ou contorna a assinatura do 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

A prova foi validada contra a versão atual do Steam 10.96.30.42 nas versões mais recentes do Windows 10 e Windows 11 x64.

Requisitos

  • Windows 10 ou Windows 11 x64
  • Steam instalado, com o Steam Client Service em execução
  • Windows PowerShell 5.1 (incluído no Windows)

Sem etapa de build. O BrokenPipe é um único script PowerShell autocontido. O VDF legítimo assinado pela Valve está embutido como base64 e o cliente IPC do Steam Client Service é um tipo C# inline, portanto não há binários externos para compilar ou distribuir.

Uso

  1. Faça login como um usuário padrão do Windows.
  2. Inicie o Steam e deixe-o ocioso. Não é necessário fazer login em uma conta Steam.
  3. Não abra nenhum jogo.
  4. A partir do diretório do projeto, execute o script sem elevação:
powershell.exe -NoProfile -ExecutionPolicy Bypass -File .\BrokenPipe-PowerShell.ps1

Por padrão, o script copia C:\Windows\System32\cmd.exe e faz com que o Steam Client Service o inicie como SYSTEM. O fato de o launcher.exe realocado ser executado como NT AUTHORITY\SYSTEM é a prova (confirme no Gerenciador de Tarefas ou no Process Explorer). Se o Steam ainda não estiver em execução, o script o inicia silenciosamente primeiro.

Aponte-o para o seu próprio payload com parâmetros:

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

Layout do código-fonte

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

Tudo está em BrokenPipe-PowerShell.ps1: ele estabelece a IPC de memória compartilhada com o Steam Client Service, coloca o VDF embutido assinado pela Valve na lista de permissões em relação a uma raiz de instalação controlada pelo chamador e, em seguida, executa o launcher realocado como SYSTEM.

FAQ

O que é isto?
Uma Escalação de Privilégios Local de Usuário Padrão -> SYSTEM.

Como funciona?
Está tudo em BrokenPipe-PowerShell.ps1, um único arquivo, leia de cima a baixo.

Não é inútil?
Para você, talvez, para outros, provavelmente não.

O que há de tão ruim nisso?
Você está obtendo privilégios SYSTEM, que é um nível acima de Administrador (aquele em que você clica com o botão direito e seleciona) e um nível abaixo de TRUSTEDINSTALLER sem na verdade ser um administrador em primeiro lugar. Se você não entende isso, pesquise no Google (ou pergunte ao seu LLM amigável de estimação, como Grok, ChatGPT ou Siri, rsrs).

Por quê?
Porque a VALVE já sabe disso desde março, eles não corrigiram e simplesmente porque eu não me importo com o Steam ou qualquer jogo da VALVE, especialmente quando o CS2 está repleto de trapaceiros e exploradores. Eles deveriam corrigir isso e investigar esse relatório de 5 meses atrás.

Alguma pergunta idiota sobre Instalação Padrão de Administrador ou algo do tipo que alguém fez e que me causou uma leve perda de neurônios...
Até o seu antivírus precisa de direitos de administrador quando você o está instalando; instalar o Steam, é claro, exige direitos de administrador na primeira instalação. Depois disso, ele simplesmente executa o serviço como SYSTEM até mesmo para um usuário padrão. Não me pergunte, pergunte à VALVE.

Legado

O lançamento original era um launcher em C++ compilado (BrokenPipe.exe) que desempacotava um laboratório interativo embutido, incluindo um broker que organizava um console SYSTEM totalmente interativo. Essa versão vive no branch legacy. Este branch é a mesma vulnerabilidade destilada em um único script PowerShell, sem etapa de build e sem binários embutidos.

Aviso Legal

Este projeto é fornecido para pesquisa de segurança autorizada e validação defensiva. Teste apenas em sistemas que você possui ou para os quais tem permissão explícita de avaliação.

Baixar ferramenta