Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
siem — Consultas e técnicas de SIEM selecionadas para descoberta ofensiva de escalonamento de privilégios no Windows, ACLs mal configuradas, serviços, tarefas agendadas e drivers vulneráveis. | Kitploit
Ferramentas/GitHubGitHub/ekitji/siem
Ferramentas DefensivasEscalada de PrivilégiosAnálise de VulnerabilidadesColeta de InformaçõesTestes de PenetraçãoConfiguração IncorretaAprendizado e EducaçãoRed TeamingRecursos CuradosAnálise de Logs
GitHubekitji/siem
4737há 0 diasRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →

siem

Consultas e técnicas de SIEM selecionadas para descoberta ofensiva de escalonamento de privilégios no Windows, ACLs mal configuradas, serviços, tarefas agendadas e drivers vulneráveis.

Ver Repositório
Compartilhar

Offensive SIEM

Técnicas práticas para utilizar o SIEM como uma ferramenta de descoberta ofensiva, ajudando os defensores a pensar como atacantes para fortalecer a segurança a partir de dentro.

Consultas

Veja acima - arquivo queries.md.

Continuará a ser atualizado quando necessário. A ideia é ter cobertura camada sobre camada usando diferentes event.codes/event.providers.

  • Consultas lançadas para PATHS ambientais, Drivers de Kernel e scripts de Logon/Arranque etc durante fevereiro de 2026!
  • Consultas lançadas para bibliotecas OpenSSL e Tarefas Agendadas / Serviços com caminhos de binários em falta durante março de 2026!

Gestão de Vulnerabilidades

Consultas para Gestão de Vulnerabilidades no ficheiro: vulnerabilitymanagement.md

Dá-lhe uma ideia de como pode enumerar

  • Versão e estado de build do SO Windows
  • Regras de Redução da Superfície de Ataque (ASR) e encontrar más configurações
  • Exclusões do Windows Defender e encontrar más configurações
  • Regras do Windows Applocker e encontrar más configurações

Contacte-nos se/quando encontrar algo

Esperamos que tenham gostado da apresentação. Contacte-nos se (eu diria quando) encontrar vulnerabilidades usando este método. Uma simples mensagem como "uma das vossas consultas apanhou coisas boas".. é mais que suficiente :) faça-o comprometendo-se no ficheiro ping.md ou contacte-nos de formas alternativas! Ficaríamos felizes por partilhar o seu sucesso!

Informação geral

O repositório irá ajudá-lo a ter uma mentalidade ofensiva. O repositório serve para partilhar o material e as consultas de que falámos na nossa apresentação:

Offensive SIEM - When The Blue Team Switches Perspective

SEC-T setembro 2025 ⭐ https://www.youtube.com/watch?v=5nfL_4ek4dY

x33fcon palestra atualizada junho 2026 cobrindo algumas áreas novas ⭐ https://youtu.be/dD_7AdEoj0k?is=CMp22Q9evBcqZe7L

Incluímos as partes mais interessantes relacionadas com ACL e temos dicas & truques.

Confira os excelentes webinars sobre escalada de privilégios local no Windows e más configurações de endpoints Windows que o irão ajudar ainda mais. Há mais áreas a explorar.. Este é apenas o ponto de partida. Se construir boas consultas noutras áreas - por favor partilhe-as connosco para que mais pessoas na comunidade as possam usar.

As consultas com a marca ⭐ são extra altamente relevantes. Os tópicos abaixo com ⭐ são conteúdo realmente bom.

Webinars

Oddvar Moes Windows Client Privilege Escalation ⭐

obrigatório assistir, especialmente as ACL para binários, serviços e tarefas agendadas.

  • https://www.youtube.com/watch?v=EG2Mbw2DVnU

Spencers Windows Endpoint Misconfigs ⭐

Tópico 2 (Software instalado/configurado de forma insegura) E Tópico 5 (Serviços E Tarefas Inseguras)

  • https://go.spenceralessi.com/windowsmisconfigsreplay
password: P3yGQ+1y
  • https://www.youtube.com/watch?v=JWopwNVP_to

Outros relacionados com Escalada de Privilégios no Windows.

  • https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/Methodology%20and%20Resources/Windows%20-%20Privilege%20Escalation.md
  • https://sushant747.gitbooks.io/total-oscp-guide/content/privilege_escalation_windows.html
  • https://www.absolomb.com/2018-01-26-Windows-Privilege-Escalation-Guide/

DLL Hijacking

  • https://itm4n.github.io/windows-dll-hijacking-clarified/

Entradas PATH e diretórios com permissão de escrita pelo utilizador no PATH do sistema --> DLL Hijacking

  • https://www.expressvpn.com/blog/cybersecurity-lessons-a-path-vulnerability-in-windows/
  • https://www.praetorian.com/blog/red-team-local-privilege-escalation-writable-system-path-privilege-escalation-part-1/

SCCM / Software Center ⭐

  • https://blog.nviso.eu/2022/05/31/cve-farming-through-software-center-a-group-effort-to-flush-out-zero-day-privilege-escalations/
Leitura interessante sobre quantos softwares mal configurados foram encontrados e provavelmente encontrará a mesma proporção usando Offensive SIEM!

Eliminação Arbitrária de Ficheiros --> Escalada de privilégios local

  • https://cicada-8.medium.com/were-going-the-wrong-way-how-to-abuse-symlinks-and-get-lpe-in-windows-0c598b99125b
  • https://cloud.google.com/blog/topics/threat-intelligence/arbitrary-file-deletion-vulnerabilities/
  • https://github.com/ZeroMemoryEx/CVE-2025-68921
  • https://xmcyber.com/blog/jumpshot-xm-cyber-uncovers-critical-local-privilege-escalation-cve-2025-34352-in-jumpcloud-agent/
  • https://www.youtube.com/watch?v=EG2Mbw2DVnU a partir do minuto: 34.45 (Intel Trusted Connect Service client)
  • https://www.zerodayinitiative.com/blog/2022/3/16/abusing-arbitrary-file-deletes-to-escalate-privilege-and-other-great-tricks
  • https://www.mdsec.co.uk/2026/02/total-recall-retracing-your-steps-back-to-nt-authoritysystem/
Outras operações de ficheiros
  • https://troopers.de/downloads/troopers19/TROOPERS19_AD_Abusing_privileged_file_operations.pdf

Scripts de logon

  • https://offsec.blog/hidden-menace-how-to-identify-misconfigured-and-dangerous-logon-scripts/
  • https://cyberthreatperspective.buzzsprout.com/1731753/episodes/13343207-episode-54-misconfigured-and-dangerous-logon-scripts
  • https://offsec.blog/wp-content/uploads/2024/06/How-to-Harden-Active-Directory-to-Prevent-Cyber-Attacks.pdf

Drivers de kernel e escalada de privilégios

  • https://www.youtube.com/watch?v=U36hAneQeZM

openssl.cnf do OpenSSL e escalada de privilégios

  • https://labs.infoguard.ch/advisories/cve-2025-13176_eset-inspect_edr_local-privilege-escalation/
  • https://blog.mirch.io/2019/06/10/cve-2019-12572-pia-windows-privilege-escalation-malicious-openssl-engine/
  • https://blog.pentryx.ch/local-privilege-escalation-in-lenovo-udc-19dc86d72142?gi=0fe882ea2355
  • https://www.triskelelabs.com/blog/cve-2025-2272-forcepoint-endpoint-dlp-privilege-escalation
  • https://hackerone.com/reports/622170

Vulnerabilidade do instalador/desinstalador NSIS

  • https://blog.amberwolf.com/blog/2026/april/next-next-system/

Vulnerabilidade de Redirecionamento DotLocal

  • https://web.archive.org/web/20230721193548/https://research.nccgroup.com/2023/07/03/technical-advisory-nullsoft-scriptable-installer-system-nsis-insecure-temporary-directory-usage/
  • https://blog.amberwolf.com/blog/2026/april/next-next-system/
  • https://youtu.be/Ik1xpsQEVwI?si=P7G1kmnSKdFldCAG
  • https://heegong.github.io/posts/Advaned-Installer-Local-Privilege-Escalation-Vulnerability/
  • https://www.synaptics.com/sites/default/files/nr-154525-tc-synaptics_displaylink_windows_driver_security_brief_-_oct2023.pdf
  • https://github.com/wixtoolset/issues/security/advisories/GHSA-7wh2-wxc7-9ph5

Exemplo de áreas interessantes a explorar que não cobrimos na apresentação mas para as quais temos consultas para algumas delas.

  • passwords fracas em command_line - que não seguem as melhores práticas / políticas
  • passwords fracas ou informação sensível em scripts de administração powershell scriptblock event code: 4104. Procure por strings: "SecureString","PSCredential","Password", "passwd"......
  • passwords fracas no registo - que não seguem as melhores práticas / políticas
  • criações/eliminações de ficheiros típicos que contêm informação sensível como passwords.txt, passwords.xslx, unattend.xml etc.
  • AlwaysInstallElevated no Registo, Autologons (verificar se as passwords estão definidas)
  • Privilégios Windows - Ver 4672 (logon com privilégios especiais) E 4704/4705 (atribuição/remoção de direitos)
  • Event code 5136 e 5137, objetos AD.. procurar nos campos: description, info e adminComment, se têm passwords em texto simples.
  • Usar eventos de criação de processos e procurar sc.exe a definir o descritor de segurança de serviços usando sdset ou evento de registo do sysmon event code 13 e verificar o valor da ACL (em formato binário de SDDL) e convertê-lo para ACL legível procurando permissões ACL fracas definidas no próprio serviço.
  • Não assuma que Program Files e diretórios similares protegidos por admin têm sempre ACLs (Access Control Lists) corretas. Acontece que as aplicações definem permissões padrão incorretas e são demasiado permissivas. CWE-732, CWE-284, CWE-276
  • Token SeImpersonatePrivilege em contas "Network Service ou Local Service" a executar processos em caminhos com permissão de escrita pelo utilizador --> ataque tipo Potato para obter SYSTEM
  • etc..

Outros tipos de vulnerabilidades

  • Procurar nos logs do servidor web por parâmetros (language=en.html) que mostrem inclusão de ficheiros para testar LFI/RFI
  • Procurar nos logs da aplicação por erros relacionados com SQL que mostrem erros em caracteres inválidos..
  • Atributos AD (exemplo event.code:"5136" e Attribute:"msDS-KeyCredentialLink") que são comummente abusados. Encontrar más configurações e fortalecer o AD.
  • Linux etc.. etc..

Fluxo de Trabalho Offensive SIEM de Filip Wozniaks Usando ES|QL, OSQuery, EDR etc usando esta mentalidade para validar condições vulneráveis. ⭐

  • https://filippwn.github.io/blog/2026/06/hunt-your-vulnerabilities-in-siem-at-scale/

Outros links ⭐

  • https://www.securit360.com/blog/securing-windows-common-misconfigurations-that-give-attackers-the-advantage/
  • https://offsec.blog/hidden-danger-how-to-identify-and-mitigate-insecure-windows-services/
  • https://www.youtube.com/watch?v=EG78PbCMWpY
  • https://cloud.google.com/blog/topics/threat-intelligence/privileges-third-party-windows-installers/

Software instalado na unidade C-root. ⭐

Faça uma consulta de criação de processos usando event.code 1 do SYSMON OU event.code 4688 (ou os event.codes para serviços, tarefas agendadas, carregamento de DLL de subpastas da raiz C) Procure por aplicações que estão instaladas na unidade raiz C:\

exemplo:
root@kitploit:~
      C:\myapplication\myapplication.exe
      C:\myapp\subfolder\myapp.exe
      C:\SoftwareCompany\software.exe
      C:\myapplication\myapplication.dll
      C:\myapp\subfolder\myapp.dll
      C:\SoftwareCompany\software.dll
           

O problema com aplicações que estão instaladas na pasta raiz C é que tem permissões ACL incorretas por padrão, o que permite que Utilizadores Autenticados modifiquem (M) a pasta e possivelmente os seus ficheiros. Se a instalação do Software não corrigir a ACL no processo de instalação, provavelmente resultará numa escalada de privilégios (confirme-o) se um serviço ou outro processo com privilégios elevados estiver a ser iniciado (ex. myapplication.exe OU myapp.exe) a partir de um dos caminhos de instalação na subpasta da raiz C.

Perdeu a chance de um CVE da Microsoft - alguém o encontrou antes: https://neodyme.io/en/advisories/cve-2025-47962/

Serviços - use mentalidade ofensiva ⭐

Dá-lhe uma ideia de quais event codes usar e o que verá no próprio event code.

  • https://detect.fyi/threat-hunting-suspicious-windows-service-names-2f0dceea204c
Registry Hive
  • HKLM\SYSTEM\CurrentControlSet\Services<Service>\Security

Os descritores de segurança de serviços não são armazenados como SDDL simples no registo. O registo só mostra uma subchave Security em formato binário quando:

  • Um descritor foi explicitamente escrito usando sc.exe
  • Ou o instalador do serviço criou um

Caso contrário: O descritor é calculado a partir de padrões incorporados codificados no Windows.

Dentro dessa chave, encontrará um valor chamado Security mostrando o formato Binário do SDDL para o serviço, onde pode procurar encontrar ACL mal configurada para o próprio serviço. Registe-os com um Sysmon bem configurado.

Tarefa agendada - use mentalidade ofensiva ⭐

Procure por tarefas a correr como SYSTEM, utilizador Administrator ou contas "Domain admin" ou outras contas com privilégios elevados.

Dá-lhe uma ideia de quais event codes usar e o que verá no próprio event code.

  • https://www.thedfirspot.com/post/evil-on-schedule-investigating-malicious-windows-tasks
Campos/chaves interessantes:

UserId onde S-1-5-18 é para o utilizador SYSTEM.

GroupId onde S-1-5-32-544 é para o grupo Administradores local.

RunLevel onde HighestAvailable irá executar a tarefa com o privilégio mais alto possível para o utilizador especificado. LeastPrivilege irá executar a tarefa com privilégio mais baixo (integridade Média) mas se o utilizador for Administrador, um bypass de UAC deverá ajudá-lo a escalar privilégios.

Verifique winlog.event_data.TaskContent no event.code 4698 para mais contexto, que contém quase a maior parte da definição XML da tarefa agendada, e dá-lhe o contexto de

  • Com que conta é executada
  • Nível de privilégio
  • Método de logon
  • Trigger
  • Comando executado
  • Triggers Potenciais

O que a Microsoft deveria fazer é adicionar o elemento <SecurityDescriptor> ao event code 4698. Ao exportar uma tarefa agendada manualmente obtém o valor SecurityDescriptor no XML exportado mas nem sempre no próprio event code.

"O SecurityDescriptor está incluído no evento, mas só é analisado e visível nos eventos 4700 e 4701 (Tarefa Ativada/Desativada), e raramente está presente no 4698 (Tarefa Criada)."

Registry Hive
  • HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Schedule\TaskCache\Tree<TaskPath><TaskName>

Dentro dessa chave, encontrará um valor chamado SD mostrando o formato Binário do SDDL para a Tarefa Agendada, onde pode procurar encontrar ACL mal configurada para a própria tarefa. Registe-os com um Sysmon bem configurado.

Drivers de kernel e escalada de privilégios

Procure por processos a criar ficheiros .sys em caminhos com permissão de escrita pelo utilizador usando o event code 11 do sysmon ou procure por drivers carregados de caminhos com permissão de escrita pelo utilizador usando o event.code 6 do Sysmon (Driver carregado)

Aqui está uma excelente palestra que descreve ficheiros .sys e escalada de privilégios usando técnicas Bring Your Own Vulnerable Driver (BYOVD).

  • https://www.youtube.com/watch?v=U36hAneQeZM

O resumo da palestra mostra o snowagent.exe a largar ficheiros sys para C:\Windows\Temp\cpuz143\cpuz143_x64.sys e escalada de privilégios local usando o driver vulnerável para CVE-2021-21551.

OpenSSL e o seu openssl.cnf para escalada de privilégios ⭐

O que é openssl.cnf?

A DLL do OpenSSL (legacy) Quando compilada, se o parâmetro --openssldir não for especificado, o padrão é /usr/local/ssl que no Windows é traduzido para c:/usr/local/ssl, que é um caminho comum onde o cnf será procurado. Define padrões para certificados/chaves e também pode carregar/configurar engines ou providers criptográficos. No Windows, pode referenciar uma DLL de engine/provider para que o OpenSSL possa usar módulos criptográficos extra. É isto que podemos abusar e apontá-lo para uma dll "maliciosa". Quando uma aplicação inicializa o OpenSSL — tem de chamar explicitamente OPENSSL_config(NULL) ou CONF_modules_load_file(...) para processar o ficheiro de configuração. Se não o fizer, a sua DLL de engine (maliciosa) do openssl.cnf não será carregada.

Outros caminhos comuns onde as aplicações podem procurar openssl.cnf são c:\etc\ssl\ ou outros caminhos personalizados com permissão de escrita pelo utilizador.

O Risco e como encontrá-los

openssl.cnf pode instruir o OpenSSL a carregar uma DLL personalizada como engine criptográfica:``` openssl_conf = openssl_init

[openssl_init] engines = engine_section

[engine_section] dynamic = dynamic_section

[dynamic_section] SO_PATH = C:\path\to\evil.dll LOAD = EMPTY init = 0

root@kitploit:~
**Um modelo mental prático é:**

o processo carrega libeay32.dll

→ o processo chama OPENSSL_config(NULL)

→ o OpenSSL lê openssl.cnf

→ a secção engine provoca a tentativa de carregamento de uma dll especificada

→ o carregador do Windows aceita a dll e as suas dependências

***Se qualquer passo estiver em falta, a sua DLL não será carregada.***

Uma regra mínima que pode usar durante a depuração:

Se o processo apenas carrega libeay32.dll, isso não é suficiente.
Também tem de chamar o carregamento da configuração do OpenSSL e não o desativar.

- Deve chamar OPENSSL_config para funcionar ou
- CONF_modules_load_file ou
- OPENSSL_no_config não está definido.


Sem verificação de assinatura. Sem verificação. Qualquer DLL especificada é carregada, se o processo chamar OPENSSL_config.
Podemos consultar nomes típicos de DLLs relacionadas com o OpenSSL para enumerar possíveis aplicações a testar mais. Queremos verificar a OPENSSLDIR das DLLs e se o processo está a chamar o OpenSSL_conf.
Podemos verificar a OpenSSLDIR verificando o hash do ficheiro contra a lista neste repositório, ou obter uma cópia da dll relacionada com criptografia e simplesmente executar o openssldir_check na cryptodll (libeay32.dll etc).
Também podemos usar o ProcMon para verificar se o processo chama algum openssl.cnf. Se virmos openssl.cnf no procmon, então sabemos com certeza que a aplicação o chama. Noutros métodos, o que queremos obter é a informação de versão (nos campos do event.code 7) e de que caminho carrega o ficheiro openssl.cnf, verificando o hash do ficheiro contra a lista neste repositório, obtendo uma cópia da mesma DLL e fazendo uma verificação manual.


**Exemplo ao executar openssldir_check.exe**

`openssldir_check32.exe libeay32.dll`

`openssldir_check v1.0 by 0xm1rch`

**Saída:**

`SSLeay_version() returned OpenSSL 1.0.1g 7 Apr 2014`

`SSLeay_version() returned OPENSSLDIR: "/usr/local/ssl"`

- ref https://github.com/mirchr/openssldir_check
> Saída semelhante com o openssldir_check personalizado modificado que está pré-compilado neste repositório.

> A saída dá a versão do OpenSSL 1.0.1g e que a OpenSSLDIR está definida como **/usr/local/ssl**, o que é **altamente interessante!**

> **Sysmon event.code 7** dá-lhe as DLLs do OpenSSL carregadas e também a informação de versão da dll no campo file.pe.file_version.


#### Cenário de Escalação
1. Um serviço é executado como **SYSTEM** e usa OpenSSL
2. A DLL do OpenSSL chama openssl_conf e lê `C:\usr\local\ssl\openssl.cnf` no arranque, mas esse ficheiro é editável ou está em falta
3. Se um utilizador com privilégios baixos puder escrever nessa pasta, pode:
   - Colocar um `openssl.cnf` malicioso
   - Colocar a sua DLL
   - Aguardar pelo reinício do serviço
   - O código é executado como **SYSTEM**

> Resultado: Escalação de privilégios local ao colocar um openssl.cnf que a dll openssl da aplicação carrega e que termina carregando uma dll "maliciosa" personalizada.



### Vulnerabilidade do instalador/desinstalador NSIS

O NSIS é uma framework de instaladores Windows amplamente utilizada. A questão aqui descrita é que, quando um instalador ou desinstalador NSIS é executado com privilégios elevados, pode usar diretórios temporários em C:\Windows\Temp de uma forma com que um utilizador local normal pode interferir.

Na prática, isso significa que um atacante com privilégios baixos pode assumir o controlo de ficheiros em que o instalador confia, como ficheiros de plugins temporários ou ficheiros do desinstalador, e transformar isso em execução de código como SYSTEM. Por outras palavras, a fraqueza não é "o instalador é executado como admin", mas sim que o tratamento de ficheiros temporários do instalador pode permitir que um utilizador sem privilégios sequestre um fluxo de instalação ou desinstalação elevado

#### DLLs Comuns Vistas em Instaladores NSIS

> Nota: Algumas destas são **plugins oficiais do NSIS**, enquanto outras são **plugins de terceiros comuns** frequentemente usados por instaladores NSIS.  
> Ver uma destas DLLs é uma pista, mas não prova absoluta, de que um instalador usa NSIS. Um caminho de ficheiro como `C:\Windows\Temp\*.tmp\*.dll` é uma forte indicação.

| DLL | Propósito típico | Tipo | Notas |
|---|---|---|---|
| `System.dll` | Chama APIs Win32 e funções DLL externas a partir de scripts NSIS | Plugin oficial do NSIS | Um dos indicadores mais fortes de NSIS |
| `nsDialogs.dll` | Constrói diálogos e controlos personalizados do instalador | Plugin oficial do NSIS | Comum em instaladores NSIS modernos |
| `nsExec.dll` | Executa comandos de consola e captura a saída | Plugin oficial do NSIS | Frequentemente usado para comandos auxiliares silenciosos |
| `StartMenu.dll` | Permite ao utilizador escolher uma pasta do Menu Iniciar | Plugin oficial do NSIS | Comum em instaladores clássicos |
| `LangDLL.dll` | Apresenta um diálogo de seleção de idioma | Plugin oficial do NSIS | Aparece frequentemente em instaladores multilingues |
| `Banner.dll` | Mostra banner/UI de progresso durante os passos de instalação | Plugin oficial do NSIS | Maioritariamente cosmético |
| `InstallOptions.dll` | Cria páginas personalizadas de estilo antigo a partir de definições INI | Plugin oficial do NSIS | Amplamente substituído por `nsDialogs.dll` |
| `UserInfo.dll` | Obtém informação sobre o utilizador/conta atual | Plugin oficial do NSIS | Usado para verificações de privilégios ou de conta |
| `Dialer.dll` | Gere o comportamento de ligação dial-up/rede | Plugin oficial do NSIS | Maioritariamente legado |
| `Math.dll` | Fornece auxiliares aritméticos para scripts NSIS | Plugin oficial do NSIS | Menos frequentemente necessário em scripts mais recentes |
| `NSISdl.dll` | Descarrega ficheiros da internet | Plugin oficial do NSIS | Plugin de download mais antigo; frequentemente substituído por `inetc.dll` |
| `Splash.dll` | Mostra um ecrã de abertura | Plugin oficial do NSIS | Maioritariamente legado/cosmético |
| `AdvSplash.dll` | Mostra um ecrã de abertura mais avançado | Plugin comum do NSIS | Papel semelhante ao `Splash.dll` |
| `BgImage.dll` | Mostra uma imagem de fundo na UI do instalador | Plugin oficial/comum do NSIS | Maioritariamente cosmético |
| `inetc.dll` | Descarrega ficheiros via HTTP/FTP | Plugin de terceiros comum do NSIS | Muito comum em instaladores web |
| `InetLoad.dll` | Descarrega ficheiros da internet | Plugin de terceiros comum do NSIS | Alternativa ao `NSISdl.dll` / `inetc.dll` |
| `UAC.dll` | Gere a elevação e o comportamento relacionado com UAC | Plugin de terceiros comum do NSIS | Forte pista relacionada com NSIS |
| `AccessControl.dll` | Altera ACLs e permissões de ficheiros/pastas | Plugin de terceiros comum do NSIS | Usado em instalações sensíveis a admin |
| `Registry.dll` | Operações avançadas no Registo do Windows | Plugin de terceiros comum do NSIS | Mais capaz do que os comandos de registo incorporados em alguns casos |
| `ShellLink.dll` | Cria ou edita atalhos (`.lnk`) do Windows | Plugin de terceiros comum do NSIS | Auxiliar de gestão de atalhos |
| `SimpleFC.dll` | Compara ficheiros ou verifica diferenças entre ficheiros | Plugin de terceiros comum do NSIS | Plugin utilitário/auxiliar |
| `FindProcDLL.dll` | Deteta se um processo está em execução | Plugin de terceiros comum do NSIS | Frequentemente usado antes de atualizações |
| `KillProcDLL.dll` | Termina processos em execução | Plugin de terceiros comum do NSIS | Comum em desinstaladores/atualizadores |
| `NScurl.dll` | Descarrega/transfere dados usando funcionalidade estilo curl | Plugin de terceiros comum do NSIS | Auxiliar de rede mais recente/mais capaz |
| `ZipDLL.dll` | Gere a extração ou criação de arquivos ZIP | Plugin de terceiros comum do NSIS | Utilitário de arquivo |
| `unzipdll.dll` | Extrai arquivos ZIP | Plugin de terceiros comum do NSIS | Plugin de arquivo mais antigo |
| `untgz.dll` | Extrai arquivos `.tar.gz` | Plugin de terceiros comum do NSIS | Menos comum, mas visto em alguns pacotes |
| `VPatch.dll` | Aplica patches/atualizações binárias | Plugin comum relacionado com NSIS | Frequentemente usado em instaladores de patches |
| `CabDLL.dll` | Trabalha com arquivos CAB | Plugin comum relacionado com NSIS | Visto maioritariamente em fluxos de empacotamento mais antigos |
| `nsJSON.dll` | Analisa ou gera dados JSON | Plugin de terceiros comum do NSIS | Mais comum em instaladores com scripts modernos |
| `StdUtils.dll` | Utilitários auxiliares de uso geral para NSIS | Plugin de terceiros comum do NSIS | Frequentemente usado para auxiliares de SO/versão/caminho |
| `ExecDos.dll` | Executa comandos com melhor controlo sobre I/O e espera | Plugin de terceiros comum do NSIS | Alternativa/extensão ao `nsExec.dll` |

#### Indicadores Mais Fortes de NSIS

As seguintes DLLs são especialmente sugestivas de NSIS:

- `System.dll`
- `nsDialogs.dll`
- `nsExec.dll`
- `LangDLL.dll`
- `StartMenu.dll`
- `NSISdl.dll`
- `inetc.dll`
- `UAC.dll`

#### Cuidado

Alguns instaladores extraem estas DLLs temporariamente para uma pasta como:

- `$PLUGINSDIR`

Por isso, podem aparecer apenas em tempo de execução, não junto ao executável do instalador no disco.


### Vulnerabilidades de Redirecionamento DotLocal
**O abuso do redirecionamento DotLocal é um problema de sequestro de DLL do Windows em que uma pasta de aplicação com permissão de escrita permite a um atacante enganar um programa legítimo para carregar primeiro uma DLL maliciosa**

A vulnerabilidade de redirecionamento DotLocal abusa da funcionalidade incorporada do Windows .local / DotLocal DLL redirection. O Windows suporta o redirecionamento de DLLs ao honrar um ficheiro ou pasta com um nome como App.exe.local; quando presente, o carregador verifica primeiro a pasta do executável ou essa pasta .local para as DLLs, e isto pode aplicar-se mesmo quando é especificado um caminho completo da DLL. A Microsoft documenta isto como uma funcionalidade legítima para redirecionar carregamentos de DLLs.

Porque se torna uma vulnerabilidade: se um atacante puder escrever no diretório do executável (caminhos com permissão de escrita para o utilizador), ou num diretório de extração temporário usado por um processo privilegiado, pode criar a pasta Target.exe.local e colocar uma DLL maliciosa onde o Windows a irá preferir. Isso transforma a funcionalidade num sequestro de DLL, pelo que o processo de confiança carrega a biblioteca do atacante em vez da biblioteca pretendida.

#### Controlo manual
Processos identificados com privilégios elevados em caminhos com permissão de escrita global devem ser investigados para ver se são vulneráveis ao redirecionamento DotLocal. Se os consultar e encontrar aplicações. Faça o último controlo usando o ProcMon para ver se o processo tenta carregar bibliotecas a partir da pasta .exe.local criada. Pode usar a ferramenta GetSxsPath para determinar o caminho completo do ficheiro. O Procmon deve mostrar-lhe eventos NAME NOT FOUND / PATH NOT FOUND apontando para um diretório .exe.local se for vulnerável. Com base em relatórios públicos, as aplicações durante a instalação são particularmente vulneráveis durante o processo de instalação.

**Uma boa regra geral é:**
O ProcMon pode fornecer evidência de sondagem .local, mas a ausência de uma falha .exe.local visível não prova que a aplicação não seja suscetível. Para comctl32.dll especialmente, o rasto reflete frequentemente a ligação manifest/SxS em vez de uma simples pesquisa de DLL na pasta da aplicação. 


#### Se um programa carregar:

`C:\Windows\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\comctl32.dll`

#### Verifique isto:

`C:\Path\To\Application.exe.local\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.19041.1110_none_60b5254171f9507e\comctl32.dll`

**Determine o caminho de redirecionamento para SxS DotLocal DLL Hijacking** - https://gist.github.com/rxwx/1717e95e5ec11bea12d33e93a3832508

#### Instalador DotLocal Wiz
**WiX Burn EXE bootstrapper** Versões afetadas >= 4, < 4.0.4 < 3.14.0. Isto afeta qualquer instalador construído com a framework de instaladores WiX.
O WiX também permite aos autores substituir o ícone predefinido e usar a UI padrão do WixStdBA ou uma aplicação bootstrapper personalizada, pelo que o EXE pode ser personalizado para parecer do fornecedor em vez de "WiX"

##### Detalhes
Se o bundle não for executado como admin, é usada a pasta TEMP do utilizador e não a pasta TEMP do sistema. Um utilitário é capaz de monitorizar a pasta TEMP do utilizador para alterações e colocar a sua própria DLL na pasta .be/.Local imediatamente quando a pasta .be é criada. Quando o motor burn eleva, a DLL maliciosa recebe privilégios elevados.

> **Ref** https://github.com/wixtoolset/issues/security/advisories/GHSA-7wh2-wxc7-9ph5

"Um processo wixstdba.exe separado é uma boa impressão digital do WiX Burn, mas o indicador mais forte para as versões afetadas é a própria versão do motor Burn: vulnerável se se identificar como <3.14.0 ou 4.0.0–4.0.3."


## Pré-requisitos
Configuração SYSMON bem configurada para capturar eventos de interesse, como event.code 1, 7, 11 e 13 para os caminhos com permissão de escrita para o utilizador e as chaves de registo mencionadas.
 - https://github.com/SwiftOnSecurity/sysmon-config
 - https://github.com/olafhartong/sysmon-modular

Auditoria avançada ativada para alguns dos eventos do Windows.

O Event ID 4688 (criação de processo) tem de ser explicitamente ativado para registar processos recém-criados. 
Por predefinição, não captura a linha de comando usada para iniciar o processo; esta funcionalidade tem de ser especificamente ativada na política de segurança.

Tarefa agendada - 4698 não está ativada por predefinição.


## ACL ⭐
### 🔹 Alguns Principais Comuns de ACL que Cobrem Utilizadores com Sessão Iniciada

| Principal               | Descrição                                                                 |
|--------------------------|-----------------------------------------------------------------------------|
| **Everyone**             | Todos os utilizadores, incluindo Convidados (e em versões mais antigas do Windows, até Anonymous Logon). Muito amplo, normalmente restrito a acesso de leitura. |
| **Authenticated Users**  | Qualquer conta que tenha iniciado sessão com sucesso (local ou de domínio). Exclui utilizadores anónimos. |
| **BUILTIN\Users**        | O grupo local **Users** na máquina. Inclui todas as contas locais padrão (não-admin). |
| **INTERACTIVE**          | Qualquer utilizador com sessão iniciada **localmente na consola** (teclado/sessão). Útil para diferenciar acesso local vs. remoto. |
| **COMPUTERNAME\\Username** | Uma **conta local** específica nesse computador (por exemplo, `LAPTOP01\Bob`). As permissões aplicam-se apenas quando esse utilizador inicia sessão localmente. |
| **DOMAIN\\Username**     | Uma **conta de domínio** específica (por exemplo, `CORP\Alice`). As permissões seguem o utilizador em todas as máquinas associadas ao domínio. |


### 📑 Atributos de ACL (Alguns Dos Interessantes Para Analisar)

Os atributos da Access Control List (ACL) definem que ações um utilizador ou grupo pode realizar em ficheiros ou pastas.  
Aqui estão alguns importantes que vale a pena notar:

| Atributo | Nome / Significado           | Porque É Interessante                                                                 |
|-----------|--------------------------|--------------------------------------------------------------------------------------|
| **F**     | Acesso Total              | Concede **todos os direitos possíveis** (ler, escrever, executar, eliminar, alterar permissões, assumir a propriedade). Equivalente a controlo "ao nível do proprietário". |
| **M**     | Acesso de Modificação            | Permite ler, escrever e eliminar ficheiros/pastas, mas **não alterar ACLs** ou a propriedade. O mais comum para utilizadores regulares. |
| **W**     | Acesso Apenas de Escrita        | O utilizador pode **criar ou modificar conteúdo** mas não o pode ler de volta. Raro, mas útil em cenários de "drop box" (por exemplo, submissões seguras de ficheiros). |
| **WD**    | Write Data / Add File    | Permite especificamente **criar ou escrever em ficheiros num diretório**. Essencial para poder adicionar ou substituir ficheiros dentro de uma pasta. |
| **AD**    | Append Data / Add Subdirectory | Em ficheiros: acrescentar dados ao fim de um ficheiro (não pode substituir). Em pastas: criar novas subpastas dentro. |


## Falsos Positivos
#### Faça as suas consultas, ajuste-as e, no fim, crie alertas a partir delas. 
Pode precisar de fazer alguma lista de permissões (ver abaixo caminhos típicos em ProgramData). A ideia é consultar caminhos típicos com permissão de escrita para o utilizador, mas acontece que os (ficheiros ou pastas) têm a ACL correta definida. Se a mentalidade ofensiva não ajudar a escalar privilégios - coloque-os na lista de permissões.
Filtre os menos interessantes: os que têm a ACL correta, nomes de ficheiros aleatórios (filtre a pasta). Queremos reduzir o ruído e ter uma linha de base. É importante fazer isto depois de verificar que não é uma vulnerabilidade. Para não perder uma tarefa agendada que é vulnerável em todos os clientes.


## Lista de Permissões
Provavelmente precisará de colocar as consultas na lista de permissões. Faça a sua caça, ajuste as consultas e crie alertas a partir delas para capturar novos eventos que ainda não analisou.
##### Provavelmente precisará de lista de permissões:
      C:\ProgramData\Microsoft
      C:\ProgramData\Package Cache
      C:\ProgramData\Packages
      etc.

Outros que podem precisar de lista de permissões, que podem ser comuns, são drivers relacionados com hardware e coisas semelhantes que têm nomes aleatórios..
      

## Metodologia
Não se esqueça de consultar no intervalo de tempo do seu "período de retenção de logs".
Uma boa metodologia é consultar no início um curto intervalo de tempo que vai aumentando progressivamente.
1) 1 dia
2) 1 semana
3) 2 semanas
4) 1 mês
5) 2 meses
6) etc..

Faça a sua caça e verifique os interessantes e ajuste e coloque na lista de permissões.. no fim crie alertas a partir deles para capturar novos eventos..

## Dicas e Truques
Se uma substituição de binário não for possível por causa da ACL correta. Verifique as permissões da pasta e se tem permissões para escrever ficheiros
verifique se o executável tenta carregar alguma dll que não existe. Se sim, crie-as e tem a sua execução de código. Se a substituição de binário não for possível porque é um processo em execução. Verifique possível sideloading de DLL ou verifique se você, como utilizador regular, tem permissões para reiniciar o próprio serviço. Outra forma é verificar se você, como utilizador regular, pode realizar um "shutdown" do qual escapa no último segundo. Um início de shutdown para processos e se escapar dele, pode conseguir substituir o binário do processo terminado. Se o serviço estiver em modo Autostart e não tiver permissões para iniciar/parar o serviço, o que pode verificar é se tem SeShutdownPrivilege e, se sim, iniciar um reinício com shutdown /r /t 0.

Se um serviço está a gerar o processo e se não for possível substituir o binário, o binário não tenta carregar nenhuma DLL em falta. Não desista - talvez o caminho não esteja entre aspas e tenha permissões de escrita e possa usar isso?

Construa as suas consultas camada sobre camada.. por isso verifique criações de serviços/tarefas agendadas, verifique a criação de processos com o parent como serviços ou processo relacionado com tarefas agendadas (svchost.exe com argumento Schedule). É possível que algum sistema crie o serviço ou a tarefa agendada mas o caminho do binário etc. não exista e a criação do processo nunca aconteça. Mas a vulnerabilidade continua lá e podem ser criados eventos diferentes relacionados com ela.

Para reduzir a carga das consultas (desempenho) e provavelmente a lista de permissões.. pode ser uma boa ideia ter consultas separadas para clientes/servidores. Assim, um conjunto de consultas usado apenas para os endpoints cliente e o mesmo conjunto usado para endpoints servidor.

A criação genérica de processos por SYSTEM é uma consulta de alto valor. Captura muitos cenários.. além de serviços e schtask a gerar processos filhos, também captura o msiexec.exe a gerar um processo filho. Também captura se um executável de c:\windows\ccmcache está a gerar um processo filho a partir de um caminho com permissão de escrita para o utilizador. Se fossemos ordenar executáveis em vulnerabilidade, eu ainda diria que o services.exe está relacionado com más configurações de software e o schtasks é mais uma má configuração do administrador..

Se tentou todas as consultas e não teve sucesso. se quiser caçar mais fundo, e fazer um pouco mais de trabalho - vá atrás de cada processo filho de services.exe e schtasks (svchost.exe com argumento Schedule), independentemente de onde. Enumere a empresa e procure também os que estão em caminhos típicos protegidos por admin (Program Files & Program Files (x86)). É mais comum do que pensa que os fornecedores de software estraguem a ACL mesmo em caminhos tipicamente protegidos. Use os eventos de criação de processos e os eventos de serviços e tarefas agendadas. Para tarefas agendadas - consulte cada campo Command e campo Argument. O campo argument pode estar a apontar para um ficheiro de script num caminho com permissão de escrita para o utilizador ou na raiz C. Os campos command podem estar a apontar para um binário que tem uma ACL insegura. Também pode analisar C:\PROGRA~3, que é a representação de nome curto (DOS) 8.3 de C:\ProgramData.

## Processos de desinstalação
É provável que, se um utilizador pode acionar uma instalação, também possa acionar uma desinstalação. Os processos de desinstalação são de interesse independentemente de onde esteja o caminho do ficheiro.
Se a ACL não estiver correta - uma substituição de binário provavelmente causará problemas.
Consulte também a criação de ficheiros típicos de desinstalação usando Sysmon event.code:11.
Queremos fazer isto para capturar todos os desinstaladores sem confiar nos eventos de criação de processos. Isto porque não é comum que os utilizadores façam realmente a desinstalação de aplicações instaladas.. Simplesmente não se importam com isso e, portanto, será mais fácil perder alguns eventos de desinstalação que existem mas nunca são acionados.

### Exemplo de nomes de processos de desinstalação
#### Nomes Genéricos Comunsuninstall.exe – Mais genérico e amplamente utilizado.
          unins000.exe, unins001.exe – Comum com instaladores Inno Setup.
          unwise.exe – Frequentemente usado por pacotes mais antigos do Wise Installer.
          uninst.exe – Versão abreviada, frequentemente encontrada em software legado.
          uninstaller.exe – Variante ligeiramente mais longa e descritiva.
          remove.exe – Por vezes usado para instaladores mínimos.
          setup.exe (com parâmetro /uninstall ou /remove) – Algumas aplicações reutilizam o executável do instalador para a desinstalação.
          appname_uninstall.exe (por exemplo, chrome_uninstall.exe)
          update.exe (com --uninstall) – Visto em aplicações como Slack ou Discord que usam instaladores Squirrel.

#### Padrões a Considerar

          *_uninstall.exe – Muitas aplicações prefixam o nome da aplicação, por exemplo, teams_uninstall.exe, zoom_uninstall.exe.
          *_cleanup.exe – Ferramentas de remoção têm frequentemente variantes de limpeza, por exemplo, driver_cleanup.exe.
          *_remover.exe – Outro estilo comum de nomenclatura de AV/fornecedor.


## Ficheiros PE / Binários com execução de código ao carregar
### Considere consultar os que estão na lista tanto em logs windows/sysmon como em logs procmon
| Extensão | Tipo PE | Execução de código ao carregar? | Ponto de entrada / mecanismo | Notas |
|-----------|---------|--------------------------|-------------------------|-------|
| `.exe` | Executável PE | Sim | PE `AddressOfEntryPoint` | O código inicia quando o executável é lançado |
| `.dll` | DLL PE | Sim | `DllMain` / callbacks TLS | O código pode executar quando a DLL é carregada num processo |
| `.sys` | Driver de kernel PE | Sim | `DriverEntry` | O código de inicialização do driver executa quando o driver é carregado |
| `.scr` | Executável PE | Sim | PE `AddressOfEntryPoint` | Essencialmente um executável; `.scr` é principalmente uma convenção |
| `.cpl` | DLL PE | Sim | `DllMain` + `CPlApplet` | Carregado pela infraestrutura do Painel de Controlo |
| `.ocx` | DLL PE / ActiveX | Sim | `DllMain` + pontos de entrada COM/ActiveX | A inicialização da DLL ocorre quando é carregada |
| `.drv` | DLL PE / driver legado | Normalmente | `DllMain` ou ponto de entrada específico do driver | Depende do tipo específico de `.drv` |
| `.efi` | Binário PE/COFF EFI | Sim | Ponto de entrada EFI | O código executa quando carregado pelo UEFI |
| `.ax` | DLL PE | Sim | `DllMain` + interfaces DirectShow | A inicialização da DLL ocorre ao carregar |
| `.acm` | DLL PE | Sim | `DllMain` + pontos de entrada ACM | Carregado como codec do Audio Compression Manager |
| `.ime` | DLL PE | Sim | `DllMain` + pontos de entrada IME | A inicialização da DLL ocorre quando é carregada |
| `.tsp` | DLL PE | Sim | `DllMain` + pontos de entrada TAPI | A inicialização da DLL ocorre quando é carregada |
| `.pyd` | DLL PE | Sim | `DllMain` + inicialização de módulo Python | Extensão Python nativa |
| `.node` | DLL PE | Sim | `DllMain` + inicialização de addon Node.js | Addon Node.js nativo |
| `.xll` | DLL PE | Sim | `DllMain` + pontos de entrada Excel XLL | Carregado por `EXCEL.EXE` |
| `.wll` | DLL PE | Sim | `DllMain` + carregamento de add-in Word | Carregado por `WINWORD.EXE` |



## Ficheiros de script
### Considere consultar os que estão na lista
| Extensão | Linguagem / Tipo           | Propósito / Utilização                                         | Contexto de Execução                                          |
|-----------|---------------------------|---------------------------------------------------------|------------------------------------------------------------|
| .bat      | Batch Script               | Tarefas de automação de linha de comandos legadas, scripts simples     | `cmd.exe` (Command Prompt)                                  |
| .cmd      | Batch Script (estilo NT)    | Semelhante a `.bat`, preferido em sistemas baseados em NT         | `cmd.exe` (Command Prompt)                                  |
| .vbs      | VBScript                   | Tarefas de automação, scripts de início de sessão, scripts de administração           | Windows Script Host (`wscript.exe`, `cscript.exe`)          |
| .vbe      | VBScript (codificado)         | Versão codificada de `.vbs` para ofuscação              | Windows Script Host (`wscript.exe`, `cscript.exe`)          |
| .ps1      | Script PowerShell          | Tarefas modernas de automação e configuração do Windows       | PowerShell (`powershell.exe`, `pwsh.exe`)                   |
| .js       | JScript                    | Versão da Microsoft do JavaScript para tarefas WSH          | Windows Script Host (`wscript.exe`, `cscript.exe`)          |
| .jse      | JScript (codificado)          | Versão encriptada de `.js` para ofuscação               | Windows Script Host (`wscript.exe`, `cscript.exe`)          |
| .wsf      | Windows Script File (XML)  | Misturar VBScript, JScript e outros scripts em formato XML       | Windows Script Host (`wscript.exe`, `cscript.exe`)          |
| .wsh      | Windows Script Host Settings | Definições de configuração para scripts WSH                  | Windows Script Host (`wscript.exe`, `cscript.exe`)          |
| .jar      | Java Archive               | Aplicações Java empacotadas como um único ficheiro             | `java.exe` (consola) / `javaw.exe` (sem janela de consola)       |
| .hta      | HTML Application (HTA)     | Scripts Windows com GUI usando HTML, CSS e JScript/VBScript | `mshta.exe` (Microsoft HTML Application Host)          |
| .com      | Aplicação MS-DOS / Executável DOS | Programas executáveis legados, pequenos utilitários de linha de comandos | Executado diretamente como programa; no Windows moderno, programas .com clássicos de 16 bits executam através do NTVDM em Windows de 32 bits, e não são suportados nativamente em Windows x64/ARM |
| .chm     | Compiled HTML Help          | Ficheiros de ajuda/documentação offline para programas Windows   | `hh.exe` (Microsoft HTML Help Viewer)                           |

## Scripts de Arranque/Início de Sessão

Os Scripts de Arranque e de Início de Sessão (e de Encerramento ou Fim de Sessão) são scripts de automação que executam (gpscript.exe) automaticamente em computadores associados ao domínio ou quando os utilizadores iniciam sessão, e são normalmente implementados usando Group Policy Objects (GPOs) a partir de um controlador de domínio num ambiente Windows Active Directory.

Arranque/Encerramento
- Executam como: conta Local System (privilégios elevados).

Início/Fim de Sessão
- Executam como: utilizador atual (privilégios elevados se administrador).
### Utilizações comuns:
- Mapeamento de unidades de rede para todos os utilizadores
- Instalação de software
- Aplicação de definições a nível de sistema
- Iniciar ou configurar serviços
- Executar scripts ou executáveis

### Chaves de Registo Afetadas

Quando um script de arranque/início de sessão é executado via GPO:

| Hive / Caminho | Propósito |
|-------------|---------|
| HKCU\Software\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Logon | Rastreia scripts de início de sessão do utilizador, a sua ordem de execução, estado, hora da última execução e parâmetros. |
| HKCU\Software\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Logoff | Rastreio semelhante para scripts de fim de sessão. |
| HKLM\Software\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Startup | Informação de rastreio de scripts de arranque (aplica-se a todos os utilizadores). |
| HKLM\Software\Microsoft\Windows\CurrentVersion\Group Policy\Scripts\Shutdown | Informação de scripts de encerramento. |

#### Procure caminhos graváveis pelo utilizador para scripts e executáveis no processo filho de gpscript.exe, ou partilhas de rede graváveis ou genéricas (SYSVOL). 
Leia os scripts que são executados e verifique se existem más configurações como outros caminhos graváveis pelo utilizador ou caminhos que não existem ou informação sensível. Procure possíveis palavras-passe usadas (net use z: \\server\share /user:domain\username password) ou outra informação sensível. 

**Categorias de Má Configuração de Scripts de Início de Sessão**
- SS1 – Credenciais em texto simples
- SS2 – Permissões inseguras (script de início de sessão modificável por utilizador comum)
- SS3 – Partilhas inexistentes (que podem ser criáveis por utilizador comum)
- SS4 - Administradores com scripts de início de sessão

**Más Configurações de Scripts de Início de Sessão**

1. SS1 - Credenciais em texto simples dentro de um script de início de sessão
2. SS2 - Permissões de partilha inseguras
3. SS2 - Permissões de ficheiro inseguras
4. SS2 - Permissões NETLOGON/SYSVOL inseguras
5. SS2 - Permissões de script de início de sessão inseguras
6. SS2 - Permissões de script de início de sessão GPO inseguras
7. SS3 - Partilhas inexistentes
8. SS4 - Administradores com script de início de sessão
9. SS4 - Administradores com scripts de início de sessão mapeados a partir de partilha inexistente



## MSIExec / Reparações MSI
##### Os nossos testes não deram qualquer resultado na escalada de privilégios em cenários onde conseguíamos lançar o edge e escapar para um prompt de cmd. Isto deve-se provavelmente ao facto de os navegadores baseados em chromium estarem a personificar o utilizador/restringir o processo de renderização para executar como SYSTEM e não permitirem que o internet explorer/edge lance cmd ou outros processos como o utilizador SYSTEM. Acreditamos que se nenhum navegador baseado em chromium estiver instalado (como o firefox) ou versões mais antigas. Uma escalada de privilégios poderia ser possível se conseguisse lançar tal processo e escapar a partir desse para um prompt de comando.

Se quiser enumerar possíveis eventos relacionados com isto, consulte por msiexec.exe como processo pai com cmd.exe OU conhost.exe OU powershell.exe OU pwsh.exe como processo filho.
Contacte os utilizadores cuja consulta devolve resultados e pergunte-lhes o que instalaram/repararam. Também pode verificar event.provider: "MsiInstaller" e event.code: (1033 OR 11707) ou semelhante para obter mais contexto sobre qual instalador msi foi instalado por volta do mesmo timestamp.
Também pode tentar isto você mesmo no Software Center e instalar as aplicações e procurar prompts de comando que pode pausar antes de desaparecerem marcando uma secção na janela. Depois escape usando as mesmas técnicas mencionadas no link abaixo.



##### Consulta de exemplo```
(event.provider: "Microsoft-Windows-Sysmon" AND event.code: 1 AND winlog.event_data.IntegrityLevel: System AND process.parent.name: msiexec.exe AND process.name: (cmd.exe OR conhost.exe OR powershell.exe OR pwsh.exe))
OR
(event.provider: Microsoft-Windows-Security-Auditing AND event.code: 4688 AND winlog.event_data.TokenElevationType: "%%1936" AND winlog.event_data.MandatoryLabel: "S-1-16-16384" AND process.parent.name: msiexec.exe AND process.name: (cmd.exe OR conhost.exe OR powershell.exe OR pwsh.exe))
  • https://cloud.google.com/blog/topics/threat-intelligence/privileges-third-party-windows-installers/

Se você não tem telemetria suficiente ou quer investigar mais a fundo

Em situações em que a telemetria disponível é limitada, os pesquisadores podem coletar atividade mais profunda do host usando o log de inicialização no Process Monitor. O Procmon pode capturar atividade de baixo nível do sistema, como criação de processos, acesso a arquivos, operações de registro, carregamento de drivers e atividade de serviços, começando muito cedo no processo de inicialização do Windows no Microsoft Windows. O log de inicialização capturado pode ser exportado para CSV e convertido para NDJSON e ingerido em um SIEM para investigação e análise adicionais. Essa abordagem pode fornecer visibilidade adicional ao investigar técnicas de escalonamento de privilégios ou persistência que podem não aparecer em fontes de log padrão. Consulte a seção procmon para mais informações.

Exemplo de alguns CVEs públicos de escalonamento de privilégios no Windows (permissões → carregamento/substituição de EXE/DLL)

Para mostrar como isso é comum com software de terceiros mal configurado.

CVEFornecedor / ProdutoCaminho(s) / Arquivo(s)Carrega como SYSTEMCWENotas
CVE-2025-42598Drivers de Impressora EpsonC:\ProgramData\EPSON\EPSON Series Dllsspoolsv.exe / PrintIsolationHost.exeCWE-276Sobrescrita de DLL → SYSTEM
CVE-2025-64669Windows Admin CenterC:\ProgramData\WindowsAdminCenter\UpdaterWindowsAdminCenterUpdater.exeCWE-276DLL Hijacking
CVE-2019-19363Drivers de Impressora RicohC:\ProgramData\RICOH_DRV\PrintIsolationHost.exeCWE-264*DLL planting → SYSTEM
CVE-2025-1729Lenovo TrackPointC:\ProgramData\Lenovo\TPQM\AssistantTPQMAssistant.exeDLL Hijacking, Schtasks
CVE-2025-47962Microsoft Windows SDKC:\Microsoft Shared\Phone Tools\CoreCon\11.0\bincryptsp.dllCWE-284DLL Hijacking, Serviço
CVE-2025-11772Synaptics FingerprintC:\ProgramData\Synaptics\CheckFPDatabase.exeWTSAPI32.dll etcDLL Hijacking USB Co-Installers
CVE-2020-5896BIG IP F5 ClientC:\Windows\Temp\f5tmp\cachecleaner.execachecleaner.dllCWE-276DLL planting → SYSTEM
CVE-2020-13885Citrix Workspace App%PROGRAMDATA%\Citrix\Citrix Workspace ####\webio.dllServiços Citrix / desinstalaçãoCWE-276DLL planting → SYSTEM
CVE-2018-17778SnowAgentC:\Windows\Temp\cpuz143\cpuz143_x64.syssnowagent.exe CPUID SDKSYS file planting → SYSTEM
CVE-2026-3991Symantec DLP Agent for WindowsC:\VontuDev\workDir\openssl\output\x64\Release\SSL\openssl.cnfedpa.exeLPE openssl.cnf
CVE-2025-8069AWS Client VPNC:\usr\local\windows-x86_64-openssl-localbuild\sslLPE openssl.cnf
CVE-2025-2272ForcePoint Endpoint DLPC:\usr\local\ssl\openssl.cnfENdPointClassifier.exeLPE openssl.cnf
CVE-2025-13176ESET Inspect EDRC:\src\vcpkg\packages\openssl_x64-windows-static\openssl.cnfElConnector.exe
Baixar ferramenta
LPE openssl.cnf
CVE-2024-6975Cato ClientC:\Work\WinVPNClient\ThirdParty\openssl\openssl-3.1.1\VS2022\SSL64\openssl.cnfwinvpnclient.cli.exeLPE openssl.cnf
CVE-2023–6338Lenovo UDCC:\J\w\prod\BUildSIngleReference.......UDClientService.exeLPE openssl.cnf
CVE-2023-41840FortiClient Windows OpenSSL componentCWE-426openssl.cnf
CVE-2021-21999VMWare Workstation toolsLPE openssl.cfg
CVE-2020-8224Nextcloud windows desktop applicationC:\usr\local\ssl\openssl.cnfnextcloud.exeLPE openssl.cnf
CVE-2020–26050SaferVPNC:\etc\ssl\openssl.cnfC:\Program Files (x86)\SaferVPN for Windows\bin\openvpn.exeLPE openssl.cfg
CVE-2019-12572PIA Windows serviceC:\etc\ssl\openssl.cnfpia-service.exeLPE openssl.cnf
CVE-2024-34474Clario for DesktopC:\ProgramData\Clario\ClarioService.exeCWE-276Carrega DLLs de ProgramData
CVE-2022-34043NoMachine (Windows)C:\ProgramData\NoMachine\var\uninstall\DesinstaladorCWE-732DLL hijack na pasta de desinstalação
CVE-2020-15145Composer-Setup (Windows)C:\ProgramData\ComposerSetup\bin\composer.bat (+ DLLs)Ações de manutenção/reparoCWE-276bin gravável → LPE
CVE-2019-149353CX Phone for Windows%PROGRAMDATA%\3CXPhone for Windows\PhoneApp\Inicialização / contexto elevadoCWE-732Everyone:Full Control
CVE-2024-54131Kolide LauncherC:\ProgramData\Kolide\Launcher-[ID]\data\Serviço LauncherCWE-276Permissões fracas → carregamento de DLL
CVE-2021-28098Forescout SecureConnector%PROGRAMDATA%\ForeScout SecureConnector\Serviço SecureConnectorCWE-264*Log gravável → symlink → SYSTEM
CVE-2019-15752Docker Desktop (Windows)%ProgramData%\DockerDesktop\version-bin\docker-credential-wincred.exeFluxo de autenticação do DockerCWE-276EXE planting → SYSTEM
CVE-2022-39959Panini Everest Engine%PROGRAMDATA%\Panini\Everest Engine\EverestEngine.exeServiço Engine (SYSTEM)CWE-276Caminho sem aspas → EXE planting
CVE-2018-10204PureVPN (Windows)%PROGRAMDATA%\purevpn\config\config.ovpnopenvpn.exe (serviço)CWE-276Config gravável → carregamento de DLL
CVE-2020-276431E Client (Windows)%PROGRAMDATA%\1E\Client\Serviço ClientCWE-276Diretório gravável → LPE
CVE-2020-1985Palo Alto Secdo AgentC:\ProgramData\Secdo\Logs\Serviço SecdoCWE-276Permissões padrão incorretas
CVE-2024-36495Faronics WINSelectC:\ProgramData\WINSelect\WINSelect.wsd / Faronics\StorageSpace\WS\WINSelect.wsdServiço WINSelectCWE-276Config gravável → LPE
CVE-2024-20656Visual Studio Setup WMIC:\ProgramData\Microsoft\VisualStudio\SetupWMI\MofCompiler.exeAção de reparo (SYSTEM)CWE-276Substituir binário → SYSTEM
CVE-2025-3224Docker Desktop (Windows)C:\ProgramData\Docker\config\Atualizador (alto privilégio)CWE-276Caminho criável/excluível → LPE