B.5 — Logs e PowerShell

  • Event Viewer / Windows Event Logs: onde ficam os eventos de segurança (logins, criação de conta). Sysmon enriquece esses logs — base do blue team em Windows.
  • PowerShell: o shell poderoso do Windows. Ferramenta dupla: admins automatizam com ele; atacantes também (por isso "PowerShell logging" é um controle importante).

PARTE C — Labs práticos 🧪

Onde praticar Linux sem ter servidor: WSL no Windows, uma VM (VirtualBox + Ubuntu), ou os labs online. nmap/varredura só no seu host. Comandos abaixo são leitura (🟢), exceto onde marcado.

Lab 1 — Navegar e ler permissões (🟢)

pwd; ls -la               # onde estou; listar com permissões e ocultos
ls -la /etc/ssh/          # config do SSH
stat ~/.ssh/id_rsa 2>/dev/null  # permissões da chave (deve ser 600)

Observe: as permissões rwx. Lição: você lê a "planilha de acesso" de cada arquivo (A.4).

Lab 2 — Usuários, root e sudo (🟢)

whoami; id                # quem sou; meus grupos
cat /etc/passwd | head    # usuários do sistema
sudo -l 2>/dev/null       # o que posso rodar como root
awk -F: '$3==0{print $1}' /etc/passwd   # quem tem UID 0 (só deve aparecer "root")

Observe: se há mais de um UID 0 (perigo). Lição: é o 1º passo de escalada e de caça a backdoor (A.3).

Lab 3 — Caçar SUID (🟢)

find / -perm -4000 -type f 2>/dev/null   # binários SUID

Observe: a lista. Binários comuns (passwd, sudo) são normais; um script ou binário estranho com SUID é suspeito. Lição: escalada de privilégio (A.4).

Lab 4 — Processos e portas (🟢)

ps aux --sort=-%cpu | head        # processos que mais consomem CPU
ss -tulpn 2>/dev/null || netstat -tulpn   # portas abertas + processo

Observe: algum processo estranho? Alguma porta escutando em 0.0.0.0 que não deveria? Lição: A.5 + A.8 (superfície e possível C2).

Lab 5 — Ler logs de acesso (🟢)

journalctl -u ssh --since "today" 2>/dev/null | tail -20
sudo grep -i "failed password" /var/log/auth.log 2>/dev/null | tail -20

Observe: tentativas de login falhadas (brute-force?). Lição: é assim que se detecta ataque de SSH (A.7).

Lab 6 — Caça a persistência (🟢) — liga com o Ex. 64

crontab -l 2>/dev/null; ls -la /etc/cron.*        # tarefas agendadas
cat ~/.ssh/authorized_keys 2>/dev/null            # chaves autorizadas (reconhece todas?)
systemctl list-units --type=service --state=running | head   # serviços rodando

Observe: cron/chave/serviço que você não criou. Lição: é o checklist de "alguém deixou porta dos fundos?".

Windows (sem máquina Windows à mão)

  • Use TryHackMe salas Windows Fundamentals 1–3 (guiadas, no navegador).
  • No PowerShell (se tiver Windows): Get-LocalUser, Get-Service | Where Status -eq Running, Get-EventLog Security -Newest 20.

PARTE D — Autoavaliação ✅

Responda de memória:

  1. O que é o UID 0 e por que ele é o objetivo de um ataque a um host?
  2. Explique rwx para dono/grupo/outros. O que chmod 777 faz e por que é perigoso?
  3. O que é um binário SUID e por que ele importa para escalada de privilégio?
  4. Onde você olharia para descobrir tentativas de login por SSH?
  5. Cite 3 lugares onde um atacante deixaria persistência num Linux.
  6. Em uma frase: o que é o Active Directory e por que é o alvo nº 1 corporativo?
<details><summary>👉 Gabarito</summary>
  1. UID 0 = root, o superusuário que pode tudo. Virar root (privilege escalation) é o objetivo final porque dá controle total do host (A.3).
  2. r=ler, w=escrever, x=executar, para dono/grupo/outros. chmod 777 dá tudo a todos → qualquer usuário altera/executa o arquivo = porta aberta (A.4).
  3. Um binário que roda com a permissão do dono (não de quem executa). Se o dono é root e o binário tem falha, um usuário comum vira root (A.4).
  4. /var/log/auth.log ou journalctl -u ssh — procurando "Failed password" (A.7).
  5. Quaisquer três: cron/timer, ~/.ssh/authorized_keys, um serviço systemd, um usuário novo, um binário adulterado, /etc/rc.local (A.6/A.10/Ex. 64).
  6. Sistema que centraliza usuários/computadores/permissões de uma empresa (um domínio); comprometê-lo = controlar toda a rede (B.3).</details>

Checklist prático:

[ ] Li permissões com ls -la e entendi rwx
[ ] Rodei id / sudo -l e sei quem sou no sistema
[ ] Cacei SUID com find -perm -4000
[ ] Vi processos (ps aux) e portas (ss -tulpn)
[ ] Achei tentativas de login em auth.log/journalctl
[ ] Rodei o checklist de persistência (cron, authorized_keys, serviços)
[ ] Fiz ao menos Windows Fundamentals 1 (TryHackMe) OU explorei PowerShell

Conclusão: 5/6 do quiz + checklist Linux completo.


Livros, cursos e recursos deste módulo

  • 🆓 Linux jogando: OverTheWire Bandit (o melhor ponto de partida) · Linux Journey · TryHackMe Linux Fundamentals 1–3.
  • 🆓 Windows: TryHackMe Windows Fundamentals 1–3 · Active Directory Basics (TryHackMe).
  • 🆓 Escalada de privilégio (quando avançar): guias GTFOBins (abuso de binários) e LinPEAS (script de enumeração) — em labs autorizados.
  • 📗 Livro (rede/host): Aprendendo Kali Linux (Ric Messier, Novatec) traz o ambiente; Análise de Tráfego em Redes TCP/IP complementa a parte de rede.
  • 🔗 Projeto: aplique no Ex. 37 (VPS/SSH hardening) e Ex. 64 (caça a persistência).

Aplicação direta ao seu perfil

  • 👤 Não-programador: foque em A.3 (usuários/root), A.4 (permissões) e A.7 (logs) — o suficiente para entender relatórios e cobrar hardening. Windows: só o conceito de AD.
  • 🧩 No-code/Low-code: entenda A.8 (portas), A.9 (updates) e A.10 (SSH) — é o que te deixa avaliar se um VPS/serviço que você usa está exposto.
  • 🤖 Vibe coder: faça tudo o Linux + os labs. Quando a IA gerar um Dockerfile ou um script de deploy, você vai saber revisar permissões, usuário não-root e serviços — a base para a Fase 4 (containers).

Próximo na formação: Módulo 3 — Programação para Segurança (Fase 0.3) ou, pulando para o eixo do seu perfil, Cloud Security (Fase 3). Peça o que preferir. Este módulo casa com o MODULO_01_REDES.md e a FORMACAO_COMPLETA.md.

entre para marcar esta aula como concluída.

PurpleLab // plataforma de treino ofensivo + defensivo // Fase 1 — portal dinamico