pular para o conteúdo
voltar ao mapa
prática
etapa: automatizar
2 min de leitura

Automação de segurança e playbooks como código

Automatizar a resposta tira minutos de cada incidente, mas uma automação mal desenhada é um incidente esperando para acontecer. O que separa as duas coisas são os freios.

PythonShuffleTinesTemporal

O que é

(security orchestration, automation and response) é o conjunto de práticas e ferramentas que executam passos de resposta de forma automática: enriquecer um alerta, consultar reputação, abrir um ticket, isolar um recurso, bloquear uma origem. Um playbook é o roteiro desses passos.

Tratar playbooks como código (em repositório, com revisão, testes e versões) evita o caos de fluxos clicados em uma interface que ninguém consegue auditar nem reproduzir.

Os quatro freios

  • Idempotência: executar o playbook duas vezes para o mesmo alerta não pode duplicar efeito (ver o tópico de confiabilidade).
  • Aprovação humana em ações destrutivas ou de grande alcance: bloquear um ASN inteiro, desativar uma conta de produção, derrubar um serviço.
  • Dry-run: toda ação deve poder rodar em modo simulado, mostrando o que faria, para testes e para o shadow de uma automação nova.
  • Auditoria e reversão: cada ação registra quem (ou o quê) a executou, por qual alerta, e tem um desfazer definido, de preferência com prazo (TTL).

Um playbook em Python

O exemplo mostra a estrutura: enriquece, decide por regra, aplica uma ação limitada no tempo e exige aprovação quando o alcance é grande. As funções de integração (cliente de bloqueio, aprovação, auditoria) são ilustrativas.

playbook_block_source.pypython
from dataclasses import dataclass

TTL_SECONDS = 1800          # todo bloqueio expira
APPROVAL_ABOVE = 50         # alcance grande exige humano

@dataclass
class Alert:
    id: str
    source_ips: list[str]
    confidence: float

def run(alert: Alert, *, dry_run: bool = True) -> str:
    if audit.already_handled(alert.id):          # idempotência
        return "skip: já tratado"
    if alert.confidence < 0.9:
        return "skip: confiança baixa, vai para triagem humana"

    if len(alert.source_ips) > APPROVAL_ABOVE and not approvals.granted(alert.id):
        approvals.request(alert.id, reason="bloqueio amplo")
        return "pendente: aguardando aprovação"

    for ip in alert.source_ips:
        blocker.block(ip, ttl=TTL_SECONDS, dry_run=dry_run)
    audit.record(alert.id, action="block", ips=alert.source_ips, dry_run=dry_run)
    return "ok"

Orquestração durável

Playbooks reais têm esperas (uma aprovação que demora horas), repetições e partes que falham. Motores de workflow duráveis (como o Temporal) guardam o estado de cada execução, retomam do ponto certo depois de uma falha e dão visibilidade do que está em andamento, o que costuma ser mais robusto do que encadear scripts.

Segredos e permissões da automação

A automação é uma identidade poderosa: ela bloqueia, revoga e apaga. Dê a ela as permissões mínimas por ação, guarde as credenciais em cofre com rotação, e trate o repositório e a esteira de playbooks com o mesmo rigor de qualquer sistema com acesso a produção. Uma automação comprometida é uma ferramenta de ataque pronta.

SOAROrquestração, automação e resposta de segurança: executar passos de resposta de forma automática, descritos em playbooks, com freios como aprovação humana e auditoria.ver no glossário →

conexões no mapa

atualizado em 14/10/2026 · fontes para aprofundar · reportar erro

em outros domínios

Estude antes

Desbloqueia

teste o que entendeu

Carregando perguntas…