mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-24 03:53:29 +00:00
344 lines
23 KiB
Markdown
344 lines
23 KiB
Markdown
# Escalonamento de Privilégios com Autoruns
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprenda hacking no AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Outras formas de apoiar o HackTricks:
|
|
|
|
* Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
|
* Adquira o [**material oficial PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
|
* **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao grupo [**telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
|
* **Compartilhe suas técnicas de hacking enviando PRs para os repositórios do** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) no github.
|
|
|
|
</details>
|
|
|
|
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
|
|
|
|
Se você está interessado em **carreira de hacking** e em hackear o inquebrável - **estamos contratando!** (_fluência em polonês escrito e falado é necessária_).
|
|
|
|
{% embed url="https://www.stmcyber.com/careers" %}
|
|
|
|
## WMIC
|
|
|
|
**Wmic** pode ser usado para executar programas na **inicialização**. Veja quais binários estão programados para serem executados na inicialização com:
|
|
```bash
|
|
wmic startup get caption,command 2>nul & ^
|
|
Get-CimInstance Win32_StartupCommand | select Name, command, Location, User | fl
|
|
```
|
|
## Tarefas Agendadas
|
|
|
|
**Tarefas** podem ser agendadas para rodar com **certa frequência**. Veja quais binários estão agendados para executar com:
|
|
```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"
|
|
```
|
|
## Pastas
|
|
|
|
Todos os binários localizados nas **pastas de Inicialização serão executados na inicialização**. As pastas de inicialização comuns são as listadas a seguir, mas a pasta de inicialização é indicada no registro. [Leia isto para aprender onde.](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"
|
|
```
|
|
## Registro
|
|
|
|
{% hint style="info" %}
|
|
Nota: A entrada do registro **Wow6432Node** indica que você está executando uma versão 64-bit do Windows. O sistema operacional usa essa chave para exibir uma visão separada de HKEY\_LOCAL\_MACHINE\SOFTWARE para aplicações 32-bit que rodam em versões 64-bit do Windows.
|
|
{% endhint %}
|
|
|
|
### Execuções
|
|
|
|
Registro AutoRun **comumente conhecido**:
|
|
|
|
* `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\Wow6432Node\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`
|
|
|
|
As chaves de registro Run e RunOnce fazem com que programas sejam executados toda vez que um usuário faz login. O valor de dados para uma chave é uma linha de comando com no máximo 260 caracteres.
|
|
|
|
**Execuções de serviço** (podem controlar a inicialização automática de serviços durante a inicialização):
|
|
|
|
* `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`
|
|
|
|
Não é criado por padrão no Windows Vista e versões mais recentes. As entradas de chaves de execução do registro podem referenciar programas diretamente ou listá-los como uma dependência. Por exemplo, é possível carregar uma DLL no logon usando uma chave "Depend" com RunOnceEx: `reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx\0001\Depend /v 1 /d "C:\temp\evil[.]dll"`
|
|
|
|
{% hint style="info" %}
|
|
**Exploração 1**: Se você pode escrever dentro de qualquer um dos registros mencionados dentro de **HKLM**, você pode escalar privilégios quando um usuário diferente fizer login.
|
|
{% endhint %}
|
|
|
|
{% hint style="info" %}
|
|
**Exploração 2**: Se você pode sobrescrever qualquer um dos binários indicados em qualquer um dos registros dentro de **HKLM**, você pode modificar esse binário com um backdoor quando um usuário diferente fizer login e escalar privilégios.
|
|
{% 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'
|
|
```
|
|
### Caminho de Inicialização
|
|
|
|
* `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`
|
|
|
|
Qualquer atalho criado para o local apontado pela subchave Startup irá iniciar o serviço durante o logon/reinicialização. O local de inicialização é especificado tanto na Máquina Local quanto no Usuário Atual.
|
|
|
|
{% hint style="info" %}
|
|
Se você puder sobrescrever qualquer \[User] Shell Folder em **HKLM**, você será capaz de direcioná-lo para uma pasta controlada por você e colocar um backdoor que será executado sempre que um usuário fizer logon no sistema, escalando privilégios.
|
|
{% 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"
|
|
```
|
|
### Chaves Winlogon
|
|
|
|
`HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon`
|
|
|
|
Normalmente, a chave **Userinit** aponta para userinit.exe, mas se essa chave puder ser alterada, então esse exe também será iniciado pelo Winlogon.\
|
|
A chave **Shell** deve apontar para 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" %}
|
|
Se você puder sobrescrever o valor do registro ou o binário, será capaz de elevar privilégios.
|
|
{% endhint %}
|
|
|
|
### Configurações de Política
|
|
|
|
* `HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer`
|
|
* `HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer`
|
|
|
|
Verifique a chave **Run**.
|
|
```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
|
|
|
|
Caminho: **`HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot`**
|
|
|
|
Sob a chave do registro `HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot` está o valor **AlternateShell**, que por padrão é definido como `cmd.exe` (o prompt de comando). Quando você pressiona F8 durante a inicialização e seleciona "Modo Seguro com Prompt de Comando", o sistema usa esse shell alternativo.\
|
|
No entanto, você pode criar uma opção de inicialização para que não seja necessário pressionar F8 e depois selecionar "Modo Seguro com Prompt de Comando".
|
|
|
|
1. Edite os atributos do arquivo boot.ini (c:\boot.ini) para tornar o arquivo não somente leitura, não sistema e não oculto (attrib c:\boot.ini -r -s -h).
|
|
2. Abra o boot.ini.
|
|
3. Adicione uma linha semelhante à seguinte: `multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect /SAFEBOOT:MINIMAL(ALTERNATESHELL)`
|
|
4. Salve o arquivo.
|
|
5. Reaplique as permissões corretas (attrib c:\boot.ini +r +s +h).
|
|
|
|
Informações da [aqui](https://www.itprotoday.com/cloud-computing/how-can-i-add-boot-option-starts-alternate-shell).
|
|
|
|
{% hint style="info" %}
|
|
**Exploit 1:** Se você pode modificar essa chave do registro, você pode direcionar seu backdoor
|
|
{% endhint %}
|
|
|
|
{% hint style="info" %}
|
|
**Exploit 2 (Permissões de escrita no PATH)**: Se você tem permissão de escrita em qualquer pasta do **PATH** do sistema antes de _C:\Windows\system32_ (ou se você pode alterá-lo), você pode criar um arquivo cmd.exe e se alguém iniciar a máquina em Modo Seguro, seu backdoor será executado.
|
|
{% endhint %}
|
|
|
|
{% hint style="info" %}
|
|
**Exploit 3 (Permissões de escrita no PATH e no boot.ini)**: Se você pode escrever no boot.ini, você pode automatizar a inicialização em modo seguro para o próximo reinício.
|
|
{% endhint %}
|
|
```bash
|
|
reg query HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot /v AlternateShell
|
|
Get-ItemProperty -Path 'Registry::HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SafeBoot' -Name 'AlternateShell'
|
|
```
|
|
### Componente Instalado
|
|
|
|
* `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`
|
|
|
|
O Active Setup é executado antes do Desktop aparecer. Comandos iniciados pelo Active Setup são executados de forma síncrona, bloqueando o logon enquanto estão sendo executados. O Active Setup é executado antes de quaisquer entradas de registro Run ou RunOnce serem avaliadas.
|
|
|
|
Dentro dessas chaves, você encontrará mais chaves e cada uma delas abrigará alguns valores-chave interessantes. Os mais interessantes são:
|
|
|
|
* **IsInstalled:**
|
|
* 0: O comando do componente não será executado.
|
|
* 1: O comando do componente será executado uma vez por usuário. Este é o padrão (se o valor IsInstalled não existir).
|
|
* **StubPath**
|
|
* Formato: Qualquer linha de comando válida, por exemplo, “notepad”
|
|
* Este é o comando que é executado se o Active Setup determinar que este componente precisa ser executado durante o logon.
|
|
|
|
{% hint style="info" %}
|
|
Se você pudesse escrever/sobrescrever em qualquer Chave com _**IsInstalled == "1"**_ a chave **StubPath**, você poderia direcioná-la para um backdoor e escalar privilégios. Além disso, se você pudesse sobrescrever qualquer **binário** apontado por qualquer chave **StubPath**, você poderia ser capaz de escalar privilégios.
|
|
{% 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
|
|
```
|
|
### Objetos Auxiliares de Navegador
|
|
|
|
* `HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects`
|
|
* `HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Explorer\Browser Helper Objects`
|
|
|
|
Um **Objeto Auxiliar de Navegador** (**BHO**) é um módulo DLL projetado como um plugin para o navegador de internet Internet Explorer da Microsoft, a fim de fornecer funcionalidades adicionais. Esses módulos são executados para cada nova instância do Internet Explorer e para cada nova instância do Windows Explorer. No entanto, um BHO pode ser impedido de ser executado por cada instância do Explorer configurando a chave **NoExplorer** para 1.
|
|
|
|
Os BHOs ainda são suportados no Windows 10, através do Internet Explorer 11, enquanto BHOs não são suportados no navegador web padrão 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
|
|
```
|
|
### Extensões do Internet Explorer
|
|
|
|
* `HKLM\Software\Microsoft\Internet Explorer\Extensions`
|
|
* `HKLM\Software\Wow6432Node\Microsoft\Internet Explorer\Extensions`
|
|
|
|
Observe que o registro conterá 1 novo registro para cada dll e será representado pelo **CLSID**. Você pode encontrar as informações do CLSID em `HKLM\SOFTWARE\Classes\CLSID\{<CLSID>}`
|
|
|
|
### Drivers de Fonte
|
|
|
|
* `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'
|
|
```
|
|
### Comando Abrir
|
|
|
|
* `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 ""
|
|
```
|
|
### Opções de Execução de Arquivos de Imagem
|
|
```
|
|
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
|
|
HKLM\Software\Microsoft\Wow6432Node\Windows NT\CurrentVersion\Image File Execution Options
|
|
```
|
|
## SysInternals
|
|
|
|
Observe que todos os locais onde você pode encontrar autoruns são **já pesquisados pelo**[ **winpeas.exe**](https://github.com/carlospolop/privilege-escalation-awesome-scripts-suite/tree/master/winPEAS/winPEASexe). No entanto, para uma **lista mais abrangente de arquivos auto-executáveis**, você poderia usar [autoruns](https://docs.microsoft.com/en-us/sysinternals/downloads/autoruns) do systinternals:
|
|
```
|
|
autorunsc.exe -m -nobanner -a * -ct /accepteula
|
|
```
|
|
## Mais
|
|
|
|
Encontre mais Autoruns como registros em [https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2](https://www.microsoftpressstore.com/articles/article.aspx?p=2762082\&seqNum=2)
|
|
|
|
## Referências
|
|
|
|
* [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)
|
|
|
|
<img src="../../.gitbook/assets/image (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) (1).png" alt="" data-size="original">
|
|
|
|
Se você tem interesse em **carreira em hacking** e em hackear o inquebrável - **estamos contratando!** (_é necessário fluência em polonês escrito e falado_).
|
|
|
|
{% embed url="https://www.stmcyber.com/careers" %}
|
|
|
|
<details>
|
|
|
|
<summary><strong>Aprenda hacking em AWS do zero ao herói com</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Outras formas de apoiar o HackTricks:
|
|
|
|
* Se você quer ver sua **empresa anunciada no HackTricks** ou **baixar o HackTricks em PDF**, confira os [**PLANOS DE ASSINATURA**](https://github.com/sponsors/carlospolop)!
|
|
* Adquira o [**material oficial PEASS & HackTricks**](https://peass.creator-spring.com)
|
|
* Descubra [**A Família PEASS**](https://opensea.io/collection/the-peass-family), nossa coleção de [**NFTs**](https://opensea.io/collection/the-peass-family) exclusivos
|
|
* **Junte-se ao grupo** 💬 [**Discord**](https://discord.gg/hRep4RUj7f) ou ao grupo [**telegram**](https://t.me/peass) ou **siga-me** no **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/carlospolopm)**.**
|
|
* **Compartilhe suas técnicas de hacking enviando PRs para os repositórios github** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|