
Um repositório de módulos de configuração do sysmon
O Sysmon Modular é um repositório de configuração para o Microsoft Sysinternals Sysmon. Pequenos módulos XML facilitam a seleção, revisão e manutenção da telemetria útil para a sua organização. A ferramenta Go sysmon-modular compila configurações a partir desses módulos e ajuda a validá-las, analisá-las e compará-las.
Toda configuração é um ponto de partida. Revise-a e ajuste-a para as suas aplicações, funções de endpoint, necessidades de deteção e orçamento de registo antes de a implementar amplamente. Utilize um conjunto gerível de perfis para estações de trabalho, servidores e controladores de domínio, e avalie o seu comportamento em máquinas representativas.
Este projeto não teria sido possível sem a configuração original do SwiftOnSecurity, que inspirou o Sysmon Modular e continua a fazer parte da sua base.
Descarregue as configurações iniciais regulares a partir do último lançamento no GitHub. Estes ficheiros XML consolidados são gerados a partir dos módulos de origem e distribuídos como recursos de lançamento em vez de serem armazenados no repositório.
| Perfil | Download | Objetivo de recolha |
|---|---|---|
| Equilibrado | sysmonconfig.xml | A configuração inicial regular, sem arquivamento de FileDelete. |
| Equilibrado com FileDelete | sysmonconfig-with-filedelete.xml | Adiciona a recolha de FileDelete e o arquivamento de ficheiros. Tenha em conta os requisitos de disco do arquivo. |
| Apenas exclusões | sysmonconfig-excludes-only.xml | Um perfil muito verboso construído a partir de módulos de exclusão. Espere um volume substancial de eventos e ajuste antes de o utilizar em produção. |
Os três perfis são gerados para o Sysmon 15.21, 14.16, 13.34 e 12.03. Os nomes de ficheiro com versão incluem o destino, como sysmonconfig-14.16.xml; os nomes sem versão acima são aliases para a 15.21. Selecione a versão instalada nos seus endpoints. Para implementações controladas, fixe um lançamento específico em vez de implementar automaticamente o latest.
Dois perfis permanecem como exemplos separados no repositório:
A versão também inclui ferramentas pré-compiladas, uma camada do ATT&CK Navigator derivada da configuração balanceada 15.21, e um manifesto SHA256SUMS.
A CLI em Go é o gerador suportado. Os exemplos neste README são executados a partir da raiz do repositório e usam um binário salvo em tooling. Comece com um checkout local se quiser gerar configurações a partir dos módulos de origem:
git clone https://github.com/olafhartong/sysmon-modular.git
cd sysmon-modular
Baixe o binário para o seu sistema operacional e arquitetura em GitHub Releases. O Go não é necessário para usar esses binários.
| Sistema | Asset de release |
|---|---|
| Windows x64 | sysmon-modular-windows-amd64.exe |
| Windows ARM64 | sysmon-modular-windows-arm64.exe |
| Linux x64 | sysmon-modular-linux-amd64 |
| Linux ARM64 | sysmon-modular-linux-arm64 |
| macOS Intel | sysmon-modular-darwin-amd64 |
| macOS Apple silicon | sysmon-modular-darwin-arm64 |
Salve o download como tooling/sysmon-modular, ou tooling/sysmon-modular.exe no Windows. No Linux e macOS, torne-o executável uma vez:
chmod +x tooling/sysmon-modular
A compilação a partir do código-fonte requer Go 1.22 ou mais recente e usa apenas a biblioteca padrão do Go.
A partir da raiz do repositório no Linux ou macOS:
go -C tooling build -o "$PWD/tooling/sysmon-modular" ./cmd/sysmon-modular
A partir do PowerShell no Windows:
go -C tooling build -o "$PWD\tooling\sysmon-modular.exe" ./cmd/sysmon-modular
Você também pode executar comandos diretamente com Go. Por exemplo:
go -C tooling run ./cmd/sysmon-modular --version
go -C tooling run executa o programa a partir do diretório tooling. Use caminhos absolutos ao adaptar exemplos da raiz do repositório para esse formato, ou siga os exemplos relativos a tooling na referência de comandos.
A ferramenta inicia na versão de build 1.0:
./tooling/sysmon-modular --version
./tooling/sysmon-modular help
./tooling/sysmon-modular merge --help
version e --version imprimem sysmon-modular 1.0. A versão de compilação também aparece na ajuda de nível superior e na ajuda específica de cada comando. Ela identifica o ferramental; --sysmon-version seleciona o executável Sysmon de destino.
O padrão é definido em version.go. Compilações locais e de lançamento o incluem automaticamente. Para substituí-lo em uma compilação específica:
go -C tooling build -ldflags="-X main.buildVersion=1.1" \
-o "$PWD/tooling/sysmon-modular" ./cmd/sysmon-modular