Segurança Colaborativa • Brute Force Detection • Blue Team • SSH

CrowdSec Detecção de ameaças baseada em comportamento

Implementação do CrowdSec no Kali Linux com foco em monitoramento de logs SSH, detecção de tentativas de brute force, análise de métricas e alertas — compreendendo na prática o funcionamento de collections, parsers e scenarios.

Fluxo do laboratório

Kali Linux — OpenSSH journalctl — ssh.service CrowdSec Acquisition Parsers → Scenarios Alertas + Métricas

Aviso sobre o ambiente

Este laboratório foi executado em ambiente local, controlado e autorizado. Endereços IP, hostnames, usuários, comandos e evidências exibidos pertencem ao ambiente de estudo ou foram anonimizados. Nenhuma credencial real, token, chave privada ou dado sensível deve ser publicado.

Navegue pelo conteúdo desta documentação.

O que é o CrowdSec e por que ele está no laboratório.

O CrowdSec é uma solução open source de segurança colaborativa que monitora logs, detecta comportamentos maliciosos e compartilha inteligência de ameaças com a comunidade. Diferente de um IDS tradicional que analisa tráfego de rede, o CrowdSec analisa logs de aplicações — SSH, Nginx, Apache, sistemas operacionais — e identifica padrões de ataque.

Neste laboratório, o foco foi no monitoramento de logs SSH para detecção de tentativas de brute force — um dos ataques mais comuns em ambientes Linux expostos. O ambiente foi configurado no Kali Linux com aquisição via journalctl, collections e scenarios SSH ativos e análise das métricas e alertas gerados.

Ambiente técnico do laboratório.

Sistema base

CrowdSec instalado no Kali Linux rodando como VM no VMware Workstation, mesmo ambiente base dos outros laboratórios do portfólio.

Kali Linux VMware Workstation i7-10700T 16 GB RAM

CrowdSec

Motor de detecção instalado e configurado para monitorar o serviço SSH via journalctl, com collections e scenarios para detecção de brute force.

CrowdSec crowdsec-ssh-bf Collections Scenarios

OpenSSH

Servidor SSH monitorado como alvo de análise. Logs do serviço coletados via journalctl e processados pelo CrowdSec para identificação de tentativas de acesso.

OpenSSH journalctl ssh.service

Repositório

Laboratório documentado no GitHub com estrutura profissional: configs, notes, screenshots e README completo com evidências do ambiente.

Git GitHub soc-lab-crowdsec-kali

A arquitetura do CrowdSec na prática.

O CrowdSec tem uma arquitetura modular composta por quatro componentes principais que trabalham em sequência — desde a leitura dos logs até a geração de alertas e tomada de decisão.

Acquisition

Define quais fontes de log o CrowdSec vai monitorar. Neste laboratório, configurado para ler o serviço SSH via journalctl — capturando todos os eventos de autenticação.

journalctl ssh.service acquis.yaml

Parsers

Interpretam as linhas de log brutas e extraem campos estruturados como IP de origem, usuário, resultado da autenticação e timestamp — tornando os dados analisáveis.

sshd parser Campos estruturados GROK patterns

Scenarios

Regras de detecção comportamental. O scenario SSH detecta brute force contando múltiplas falhas de autenticação do mesmo IP dentro de uma janela de tempo definida.

crowdsec-ssh-bf Threshold Time window

Alertas

Quando um scenario é ativado, o CrowdSec gera um alerta com o IP malicioso, o tipo de ataque e a contagem de eventos. Os alertas podem ser visualizados com cscli alerts list.

cscli alerts list IP bloqueado Decisões

Da instalação à detecção ativa.

Concluído

Instalação do CrowdSec

Instalação do CrowdSec no Kali Linux via repositório oficial. Verificação do serviço e confirmação do status ativo com systemctl status crowdsec.

apt install crowdsec crowdsec.service active
Concluído

Configuração do arquivo de aquisição

Configuração do acquis.yaml para monitorar o serviço SSH via journalctl, definindo o tipo de log como sshd para que o parser correto seja aplicado.

acquis.yaml journalctl ssh.service type: sshd
Concluído

Instalação da collection SSH

Instalação da collection crowdsecurity/sshd que inclui o parser SSH e o scenario de detecção de brute force — ativando a capacidade de detectar tentativas de acesso.

crowdsecurity/sshd ssh parser ssh-bf scenario
Concluído

Verificação de métricas

Análise das métricas com cscli metrics para validar que o CrowdSec está lendo os logs SSH, aplicando os parsers e processando os eventos corretamente.

cscli metrics Parsers ativos Eventos processados
Concluído

Análise de alertas gerados

Verificação dos alertas com cscli alerts list confirmando detecções ativas — IPs sinalizados, scenarios ativados e decisões tomadas pelo motor do CrowdSec.

cscli alerts list Scenarios ativados Decisões
Concluído

Documentação no GitHub

Organização do laboratório em repositório público com estrutura profissional: configs/, notes/, screenshots/ e README completo com evidências.

soc-lab-crowdsec-kali configs/ notes/ screenshots/

Arquivo de aquisição configurado no laboratório.

O arquivo de aquisição define a fonte de dados que o CrowdSec vai monitorar. Esta foi a configuração utilizada para capturar os eventos do serviço SSH via journalctl no Kali Linux.

# /etc/crowdsec/acquis.d/sshd.yaml

source: journalctl
journalctl_filter:
  - "_SYSTEMD_UNIT=ssh.service"
labels:
  type: sshd

Esta configuração instrui o CrowdSec a:

source: journalctl

Usa o journalctl como fonte de log — o sistema de logs do systemd presente no Kali Linux — em vez de ler um arquivo de texto diretamente.

journalctl_filter: _SYSTEMD_UNIT=ssh.service

Filtra apenas os eventos do serviço SSH, ignorando todo o restante — garantindo que apenas logs de autenticação SSH sejam processados.

labels: type: sshd

Define o tipo de log para que o CrowdSec saiba qual parser aplicar — neste caso, o parser SSH que extrai campos como IP de origem e resultado da autenticação.

O que este laboratório construiu na prática.

Este laboratório aprofundou o conhecimento em detecção baseada em comportamento — uma abordagem diferente do Suricata (tráfego de rede) e do Wazuh (eventos do sistema), complementando o ecossistema de segurança do laboratório.

O que foi entregue neste laboratório.

Este laboratório resultou em um ambiente de detecção comportamental funcional, com monitoramento SSH ativo, alertas gerados e documentação publicada no GitHub.

01CrowdSec configurado
01Collection SSH ativa
04Evidências documentadas
01Repositório público

Registros do laboratório.

As evidências abaixo estão documentadas no repositório GitHub do laboratório, cobrindo status do serviço, métricas, alertas gerados e scenarios SSH ativos.

CrowdSec status active Métricas do pipeline Alertas gerados Cenários SSH ativos
Status do serviço CrowdSec
Status do serviço CrowdSec — active (running) no Kali Linux.
Métricas do CrowdSec
Métricas do pipeline — eventos processados pelos parsers SSH.
Alertas gerados pelo CrowdSec
Alertas gerados — IPs e scenarios ativados pelo CrowdSec.
Cenários SSH do CrowdSec
Scenarios SSH ativos — detecção de brute force configurada.
Ver repositório completo no GitHub

Como este laboratório continuará evoluindo.

Integração Suricata

Conectar o CrowdSec ao Suricata para enriquecer a detecção com eventos de rede, criando correlação entre logs de aplicação e tráfego monitorado.

Integração Wazuh

Enviar os alertas do CrowdSec para o Wazuh SIEM, centralizando todos os eventos de segurança do laboratório em um único dashboard de monitoramento.

Bouncers

Configurar um bouncer para bloquear automaticamente os IPs identificados pelo CrowdSec, evoluindo de detecção passiva para prevenção ativa de ameaças.

CTI Colaborativa

Explorar a inteligência de ameaças colaborativa do CrowdSec — compartilhando e recebendo listas de IPs maliciosos da comunidade global de usuários.

Detecção comportamental. SSH monitorado. Alertas ativos.

Este laboratório demonstrou na prática o funcionamento do CrowdSec como ferramenta de detecção baseada em comportamento — complementando o Suricata (análise de tráfego) e o Wazuh (monitoramento de endpoints) para construir um ecossistema de segurança multicamada no laboratório.

Instalação do CrowdSec

O CrowdSec está disponível nos repositórios oficiais do Kali Linux. A instalação é direta via apt.

Comandos de instalação

curl -s https://packagecloud.io/install/repositories/crowdsec/crowdsec/script.deb.sh | sudo bash
sudo apt install crowdsec -y

Validação

sudo systemctl status crowdsec
● crowdsec.service - CrowdSec agent
   Active: active (running)

Configuração do arquivo de aquisição

O acquis.yaml define quais fontes de log o CrowdSec vai monitorar. Para SSH, a fonte é o journalctl com o serviço sshd.

Conteúdo do acquis.yaml

source: journalctl
journalctl_filter:
  - "_SYSTEMD_UNIT=ssh.service"
labels:
  type: sshd

Localização

O arquivo fica em /etc/crowdsec/acquis.yaml. Após editar, reiniciar o serviço com sudo systemctl restart crowdsec.

Instalação da collection SSH

As collections do CrowdSec agrupam parsers e scenarios relacionados. A collection crowdsecurity/sshd inclui tudo necessário para detecção de brute force SSH.

Comando

sudo cscli collections install crowdsecurity/sshd
sudo systemctl restart crowdsec

O que inclui

Parser: crowdsecurity/sshd-logs — lê e estrutura os logs do SSH.
Scenario: crowdsecurity/ssh-bf — detecta múltiplas falhas de login (brute force).

Verificação de métricas

O cscli metrics mostra o estado interno do pipeline de processamento — quantas linhas foram lidas, parseadas e quantos eventos foram avaliados pelos scenarios.

Comando

sudo cscli metrics

O que validar

Na tabela de parsers, confirmar que crowdsecurity/sshd-logs está com linhas processadas. Na tabela de buckets, confirmar que crowdsecurity/ssh-bf está sendo avaliado.

Análise de alertas gerados

Após o CrowdSec processar os logs e detectar padrões suspeitos, os alertas ficam disponíveis via cscli alerts list.

Comandos de análise

sudo cscli alerts list
sudo cscli decisions list

Campos do alerta

Cada alerta mostra: IP origem, scenario ativado (crowdsecurity/ssh-bf), número de eventos que ativaram o threshold, data/hora e decisão tomada (ban ou simonly).