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
UsoDllLoader — Windows - Armamento di scritture di file privilegiate con il servizio Update Session Orchestrator | Kitploit
Strumenti/GitHubGitHub/itm4n/usodllloader
Escalation di PrivilegiGenerazione di PayloadExploitPenetration TestingArchived
GitHubitm4n/usodllloader

UsoDllLoader

Windows - Armamento di scritture di file privilegiate con il servizio Update Session Orchestrator

Vedi Repository
4061006 anni 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

UsoDllLoader

⚠️ Aggiornamento 2020-06-06: questo trucco non funziona più sulle ultime build di Windows 10 Insider Preview. Ciò significa che, sebbene funzioni ancora sulla versione mainstream di Windows 10, dovresti aspettarti che venga corretto nei prossimi mesi.

Descrizione

Questo PoC mostra una tecnica che può essere utilizzata per armare vulnerabilità di scrittura privilegiata di file su Windows. Fornisce un'alternativa all'"exploit" di caricamento DLL di DiagHub scoperto da James Forshaw (alias @tiraniddo), che è stato corretto da Microsoft a partire dalla build 1903.

TL;DR

A partire da Windows 10, Microsoft ha introdotto il servizio Update Session Orchestrator. Come utente normale, puoi interagire con questo servizio usando COM e avviare una "scansione degli aggiornamenti" (cioè verificare se sono disponibili aggiornamenti) o avviare il download degli aggiornamenti in sospeso, per esempio. Esiste anche uno strumento integrato non documentato chiamato usoclient.exe, che serve a questo scopo.

Dal punto di vista di un attaccante, questo servizio è interessante perché viene eseguito come NT AUTHORITY\System e tenta di caricare una DLL inesistente (windowscoredeviceinfo.dll) ogni volta che viene creata una sessione di aggiornamento.

Ciò significa che, se trovassimo una vulnerabilità di scrittura privilegiata di file in Windows o in qualche software di terze parti, potremmo copiare la nostra versione di windowscoredeviceinfo.dll in C:\Windows\Sytem32\ e poi farla caricare dal servizio USO per ottenere l'esecuzione di codice arbitrario come NT AUTHORITY\System.

Per maggiori informazioni:
Parte 1 - https://itm4n.github.io/usodllloader-part1/
Parte 2 - https://itm4n.github.io/usodllloader-part2/

Costruisci il PoC

Contenuto

Questa soluzione è composta da due progetti: WindowsCoreDeviceInfo e UsoDllLoader.

  • WindowsCoreDeviceInfo

Fornisce una DLL PoC che avvierà una bind shell sulla porta 1337 (solo localhost), ogni volta che viene chiamata la funzione QueryDeviceInformation(). Questo è il nome della funzione utilizzata dai worker USO.

  • UsoDllLoader (opzionale)

È una versione ridotta di usoclient.exe. Può essere eseguito come utente normale per interagire con il servizio USO e fargli caricare windowscoredeviceinfo.dll. Poi, tenterà di connettersi alla bind shell. In caso di errori, leggi la sezione "Problemi noti".

Compila la soluzione

La soluzione è già preconfigurata, quindi la compilazione dovrebbe essere facile. Sto usando Visual Studio 2019. Potrebbe non funzionare con versioni precedenti.

  1. Seleziona la configurazione Release e l'architettura x64.
  2. Compila la soluzione.
  3. Output: la DLL .\x64\Release\WindowsCoreDeviceInfo.dll e il loader .\x64\Release\UsoDllLoader.exe.

Test

Utilizzo 1 - UsoDllLoader

A scopo di test, puoi:

  1. Come amministratore, copia WindowsCoreDeviceInfo.dll in C:\Windows\System32\.
  2. Usa il loader come utente normale.
  3. Sperabilmente goditi una shell come NT AUTHORITY\SYSTEM.

Utilizzo 2 - UsoClient

Se UsoDllLoader.exe fallisce, puoi eseguire la procedura sopra manualmente.

  1. Come amministratore, copia WindowsCoreDeviceInfo.dll in C:\Windows\System32\.
  2. Usa il comando usoclient StartInteractiveScan come utente normale. Nota che non riceverai alcun feedback dal comando.
  3. Scarica netcat per Windows e usa il comando nc.exe 127.0.0.1 1337 per connetterti alla bind shell.

Problemi noti

  • Aggiornamenti in sospeso

Questo metodo probabilmente fallirà se uno o più aggiornamenti sono in attesa di essere installati, o se gli aggiornamenti sono in corso di installazione.

  • Errori RPC

A seconda della versione di Windows, UsoDllLoader.exe potrebbe fallire con vari codici di errore. Non ho approfondito troppo questi problemi. Il motivo è che è solo un PoC, che ho sviluppato per comodità. Ciò che conta di più è la DLL, non il loader. Vedi "Utilizzo 2" per maggiori dettagli.

Scarica lo strumento