Kako vrednosti HKCU mogu biti modifikovane od strane korisnika, COM Hijacking se može koristiti kao trajni mehanizam. Korišćenjem procmon-a lako je pronaći tražene COM registre koji ne postoje, a koje napadač može kreirati da bi ostao prisutan. Filteri:
Operacije RegOpenKey.
Gde je RezultatIME NIJE PRONAĐENO.
I Putanja se završava sa InprocServer32.
Kada ste odlučili koju nepostojeću COM komponentu želite da preuzmete, izvršite sledeće komande. Budite oprezni ako odlučite da preuzmete COM komponentu koja se učitava svakih nekoliko sekundi, jer to može biti preterano.
Windows zadaci koriste prilagođene okidače za pozivanje COM objekata i zbog toga što se izvršavaju putem Task Scheduler-a, lakše je predvideti kada će biti pokrenuti.
# Prikazivanje COM CLSID-ova$Tasks =Get-ScheduledTaskforeach ($Task in $Tasks){if ($Task.Actions.ClassId -ne$null){if ($Task.Triggers.Enabled -eq$true){$usersSid ="S-1-5-32-545"$usersGroup =Get-LocalGroup|Where-Object { $_.SID-eq $usersSid }if ($Task.Principal.GroupId -eq $usersGroup){Write-Host"Naziv zadatka: " $Task.TaskNameWrite-Host"Putanja zadatka: " $Task.TaskPathWrite-Host"CLSID: " $Task.Actions.ClassIdWrite-Host}}}}# Primer izlaza:<strong># Naziv zadatka: Primer</strong># Putanja zadatka: \Microsoft\Windows\Primer\# CLSID: {1936ED8A-BD93-3213-E325-F38D112938E1}# [više sličnih...]</code></pre>Proveravajući izlaz, možete odabrati onaj koji će se izvršiti **svaki put kada se korisnik prijavi** na primer.Sada pretražujemo CLSID **{1936ED8A-BD93-3213-E325-F38D112938EF}** u **HKEY\_**_**CLASSES\_**_**ROOT\CLSID** i u HKLM i HKCU, obično ćete primetiti da vrednost ne postoji u HKCU.
```bash# Exists in HKCR\CLSID\Get-ChildItem-Path "Registry::HKCR\CLSID\{1936ED8A-BD93-3213-E325-F38D112938EF}"Name Property------------InprocServer32 (default) : C:\Windows\system32\some.dllThreadingModel : Both# Exists in HKLMGet-Item-Path "HKLM:Software\Classes\CLSID\{01575CFE-9A55-4003-A5E1-F38D1EBDCBE1}"| ft -AutoSizeName Property------------{01575CFE-9A55-4003-A5E1-F38D1EBDCBE1} (default) : MsCtfMonitor task handler# Doesn't exist in HKCUPS C:\>Get-Item-Path "HKCU:Software\Classes\CLSID\{01575CFE-9A55-4003-A5E1-F38D1EBDCBE1}"Get-Item : Cannot find path 'HKCU:\Software\Classes\CLSID\{01575CFE-9A55-4003-A5E1-F38D1EBDCBE1}' because it does not exist.
Zatim možete samo kreirati unos HKCU i svaki put kada se korisnik prijavi, vaša zadnja vrata će biti aktivirana.