In che modo consent.exe sa cosa visualizzare?

12

consent.exe è responsabile della visualizzazione della finestra di dialogo UAC. Osservando i parametri della riga di comando con Process Explorer, vedo quanto segue:

consent.exe 1316 748 000000004385BD60

Ho

Finora, ho solo calcolato il primo numero: è l'ID del processo (PID) del processo principale, che nel mio caso è svchost.exe .

In che modo consent.exe rileva da tali informazioni sulla riga di comando qual è il percorso dell'eseguibile da avviare?

    
posta Thomas Weller 12.04.2015 - 21:49
fonte

2 risposte

1

Basato sull'articolo di Russinovich TechNet che hai collegato: Ricorda che le applicazioni chiamano l'Application Information Service (AIS) per elevare. Quindi consenso.exe non ha bisogno di sapere come avviare i programmi. Esiste unicamente per stabilire il consenso dell'utente e restituire il risultato a AIS. AIS quindi esegue l'effettivo avvio (supponendo che consent.exe restituisca il successo).

    
risposta data 13.04.2015 - 12:36
fonte
1

Come puoi vedere, il primo argomento è il PID del processo genitore di consent.exe. E monitorando le API che questo processo genitore (che è un "svchost") chiamato prima di creare il processo di consenso, sono stato in grado di scoprire che il terzo argomento è un puntatore a una struttura all'interno dell'heap di svchost, e il secondo argomento è la lunghezza della struttura. La struttura sembra contenere il percorso del processo da eseguire, la sua directory di lavoro e i suoi argomenti. Inoltre ci sono alcuni byte che non riesco a capire. Ma l'informazione è certamente sufficiente per estirpare il percorso completo dell'exe.

Questa risposta è testata solo su Windows 10 x64 1809

    
risposta data 22.12.2018 - 17:45
fonte

Leggi altre domande sui tag