---
title: "Estágio em SOC: O Que Estudar e Como Usar Python"
url: "https://python.dev.br/carreira/estagio-soc-seguranca-python/"
markdown_url: "https://python.dev.br/carreira/estagio-soc-seguranca-python.MD"
description: "Veja o que estudar para conseguir estágio em SOC, como usar Python na análise defensiva, qual projeto montar e como buscar vagas de segurança no Brasil."
date: "2026-08-31"
author: "Equipe Python Dev BR"
---

# Estágio em SOC: O Que Estudar e Como Usar Python

Veja o que estudar para conseguir estágio em SOC, como usar Python na análise defensiva, qual projeto montar e como buscar vagas de segurança no Brasil.


Para conseguir um **estágio em SOC**, construa uma base em redes, Linux, HTTP, autenticação e logs; aprenda a investigar eventos sem tirar conclusões precipitadas; use Python para automatizar tarefas defensivas pequenas; e publique um projeto com dados sintéticos, testes e limitações claras. Você não precisa dominar todas as ferramentas de cibersegurança. Precisa mostrar raciocínio, responsabilidade e capacidade de seguir um processo sob supervisão.

SOC é a sigla de *Security Operations Center*, ou Centro de Operações de Segurança. A equipe monitora sinais de segurança, investiga alertas, registra evidências e coordena respostas conforme procedimentos definidos. Para uma pessoa estagiária, a rotina pode incluir consulta a logs, enriquecimento de eventos, atualização de chamados e preparação de indicadores. A decisão de bloquear uma conta, isolar um equipamento ou escalar um incidente deve seguir o playbook e a orientação da equipe.

Python aparece como ferramenta para ler arquivos, normalizar dados, consultar APIs permitidas, comparar eventos e gerar relatórios. Ele não substitui um SIEM, um EDR ou a análise humana. O melhor projeto de entrada não é uma “ferramenta hacker”, mas uma automação defensiva que você consegue executar, testar e explicar.

Se a sua busca ainda é ampla, comece pelo guia de [estágio em segurança da informação com Python](/carreira/como-conseguir-estagio-seguranca-informacao-python/). Este artigo aprofunda especificamente a trilha de SOC, uma das portas de entrada possíveis na cibersegurança.

## O que é um SOC e como funciona a rotina

Um SOC reúne pessoas, processos e tecnologias para acompanhar eventos que podem afetar sistemas, contas, aplicações e dados. As fontes variam: serviços de identidade, firewalls, endpoints, servidores, aplicações, nuvem, proxies e ferramentas de segurança.

Um fluxo simplificado costuma ter estas etapas:

1. uma ferramenta ou regra gera um alerta;
2. alguém verifica se o evento tem dados suficientes;
3. o alerta é enriquecido com contexto;
4. a pessoa compara o evento com comportamento esperado e sinais relacionados;
5. o caso é encerrado, mantido em observação ou escalado;
6. ações e evidências são registradas para auditoria e aprendizado.

O objetivo não é tratar todo alerta como ataque confirmado. Ferramentas produzem falsos positivos, dados podem chegar incompletos e um comportamento incomum pode ter uma explicação legítima. Uma investigação defensiva precisa preservar contexto e rastreabilidade.

### Níveis e nomes de cargo

Algumas empresas organizam o SOC em níveis, como L1, L2 e L3. Em uma estrutura assim, L1 costuma fazer a triagem inicial, L2 aprofunda a investigação e L3 trabalha com casos complexos, engenharia de detecção ou resposta avançada. Essa divisão não é universal.

Ao procurar estágio, você pode encontrar títulos como:

- estagiário de SOC;
- estágio em segurança da informação;
- estágio em cibersegurança;
- estágio em monitoramento de segurança;
- estagiário de Blue Team;
- estágio em resposta a incidentes;
- estágio em infraestrutura e segurança;
- estágio em prevenção a fraudes;
- estágio em riscos de tecnologia.

Leia as responsabilidades. Uma vaga sem “SOC” no título pode envolver triagem de alertas e análise de logs, enquanto outra chamada “SOC” pode ser mais voltada a indicadores ou atendimento de chamados.

## O que uma pessoa estagiária pode fazer

Sob supervisão, as tarefas podem incluir:

- conferir alertas e campos obrigatórios;
- pesquisar eventos relacionados no período do alerta;
- organizar IP, usuário, dispositivo, horário e origem;
- consultar informações em ferramentas internas autorizadas;
- comparar o evento com um playbook;
- registrar evidências em chamado;
- preparar uma linha do tempo simples;
- atualizar listas e inventários;
- apoiar relatórios de volume e tempo de atendimento;
- automatizar uma conferência repetitiva com Python;
- documentar uma rotina para revisão da equipe.

O estágio deve ser uma experiência de formação. Pergunte como funciona a supervisão, quem revisa o trabalho e quais ações a pessoa estagiária pode executar. Um ambiente que espera resposta autônoma a incidentes críticos desde o primeiro dia pode estar confundindo estágio com mão de obra experiente e barata.

## Conhecimentos mais importantes para começar

### Redes e protocolos

Aprenda o significado de endereço IP, porta, TCP, UDP, DNS, HTTP, HTTPS, proxy, VPN e firewall. Você não precisa projetar uma rede corporativa, mas deve conseguir responder perguntas como:

- qual sistema iniciou a conexão?
- qual era o destino?
- que serviço costuma usar essa porta?
- o domínio foi resolvido por qual consulta DNS?
- o servidor respondeu com qual código HTTP?
- o horário do evento está em qual fuso?

Sem essa base, uma linha de log vira apenas texto.

### Linux e terminal

Pratique navegação por diretórios, permissões, processos, leitura de arquivos e filtros de texto em uma máquina própria ou laboratório autorizado. Comandos como `grep`, `find`, `head`, `tail`, `sort` e pipes ajudam a explorar dados, mas execute somente o que você entende.

Também aprenda a reconhecer caminhos, usuários, grupos, serviços e mensagens de erro. Para um estágio, explicar como você encontrou uma linha relevante vale mais do que decorar uma lista enorme de comandos.

### Autenticação, autorização e identidade

Entenda a diferença entre confirmar a identidade e decidir o que ela pode acessar. Estude senha, MFA, sessão, token, privilégio, conta de serviço e princípio do menor privilégio.

Muitos alertas de SOC envolvem login: tentativas repetidas, acesso em horário incomum, autenticação a partir de origem inesperada ou mudança de privilégio. Nenhum desses sinais prova sozinho que uma conta foi comprometida. O contexto define a investigação.

### Logs e linha do tempo

Um log registra um evento observado por um sistema. Campos comuns incluem:

- data e hora;
- usuário ou conta;
- origem e destino;
- ação executada;
- resultado;
- identificador do dispositivo;
- aplicação ou serviço;
- código de erro;
- identificador de correlação.

Aprenda a conferir timezone, formato da data, ausência de campos e duplicidade. Ordenar eventos corretamente é essencial para entender o que ocorreu antes e depois de um alerta.

### SIEM, EDR e playbooks

SIEM é uma categoria de plataforma usada para centralizar, pesquisar e correlacionar eventos. EDR está relacionado à visibilidade e resposta em endpoints. Você não precisa dominar uma marca específica para começar, mas deve entender o papel dessas ferramentas.

Playbook é um procedimento que orienta a triagem e a resposta. Ele pode indicar campos obrigatórios, consultas, critérios de severidade, evidências e situações que exigem escalonamento. Seguir o playbook e registrar o que foi feito é parte do trabalho.

## Onde Python ajuda no SOC

Python é útil quando uma tarefa envolve dados estruturados ou repetição. Bons usos para quem está começando incluem:

- ler eventos em CSV, JSON ou JSON Lines;
- validar se campos essenciais existem;
- normalizar datas e categorias;
- agrupar falhas por usuário, IP ou dispositivo;
- deduplicar indicadores;
- gerar relatório Markdown;
- consultar uma API interna ou pública autorizada com timeout;
- transformar um resultado para importação em outra ferramenta;
- testar regras didáticas;
- criar dados sintéticos para laboratório.

Os recursos de maior retorno são `pathlib`, `json`, `csv`, `collections`, `datetime`, `ipaddress`, logging, tratamento de exceções e testes. Depois, bibliotecas como pandas ou Polars podem ajudar em volumes tabulares maiores.

O tutorial de [análise de logs para SOC com Python](/blog/python-analise-logs-soc-seguranca/) mostra uma aplicação técnica próxima da rotina. Revise também [logging em Python](/blog/logging-em-python/) para registrar execução sem espalhar `print` pelo programa.

## Projeto de portfólio: triador de alertas de autenticação

Crie um projeto chamado `triador-alertas-soc`. Ele receberá eventos sintéticos em JSON Lines, validará os registros, calculará uma pontuação didática e produzirá um relatório para revisão humana.

Cada linha de `eventos.jsonl` pode ter esta forma:

```json
{"timestamp":"2026-08-30T10:00:00Z","usuario":"ana","ip":"192.0.2.10","resultado":"falha","mfa":false}
{"timestamp":"2026-08-30T10:01:00Z","usuario":"ana","ip":"192.0.2.10","resultado":"falha","mfa":false}
{"timestamp":"2026-08-30T10:03:00Z","usuario":"ana","ip":"192.0.2.10","resultado":"sucesso","mfa":true}
```

O bloco `192.0.2.0/24` é reservado para documentação. Usá-lo evita publicar um endereço real no exemplo.

Uma primeira versão pode validar e agrupar falhas:

```python
import json
from collections import Counter
from pathlib import Path
from typing import Any

CAMPOS_OBRIGATORIOS = {
    "timestamp",
    "usuario",
    "ip",
    "resultado",
    "mfa",
}


def carregar_eventos(caminho: Path) -> list[dict[str, Any]]:
    eventos = []

    with caminho.open(encoding="utf-8") as arquivo:
        for numero_linha, linha in enumerate(arquivo, start=1):
            try:
                evento = json.loads(linha)
            except json.JSONDecodeError as erro:
                raise ValueError(
                    f"Linha {numero_linha}: JSON inválido"
                ) from erro

            ausentes = CAMPOS_OBRIGATORIOS - evento.keys()
            if ausentes:
                nomes = ", ".join(sorted(ausentes))
                raise ValueError(
                    f"Linha {numero_linha}: campos ausentes: {nomes}"
                )

            eventos.append(evento)

    return eventos


def contar_falhas_por_origem(
    eventos: list[dict[str, Any]],
) -> Counter[tuple[str, str]]:
    falhas: Counter[tuple[str, str]] = Counter()

    for evento in eventos:
        if evento["resultado"] == "falha":
            chave = (evento["usuario"], evento["ip"])
            falhas[chave] += 1

    return falhas
```

Depois, gere casos para revisão:

```python
def criar_casos(
    falhas: Counter[tuple[str, str]],
    limite: int = 3,
) -> list[dict[str, object]]:
    casos = []

    for (usuario, ip), total in falhas.items():
        if total >= limite:
            casos.append(
                {
                    "usuario": usuario,
                    "ip": ip,
                    "total_falhas": total,
                    "motivo": "falhas repetidas para revisão",
                }
            )

    return casos
```

Essa regra não “detecta invasão”. Uma pessoa pode errar a senha, um sistema pode repetir tentativas ou várias pessoas podem compartilhar uma origem. O README deve explicar que o limite é didático e que um caso real exigiria contexto, janela de tempo, histórico, dispositivo, MFA e políticas da organização.

### Estrutura recomendada

```text
triador-alertas-soc/
├── data/
│   ├── eventos_validos.jsonl
│   └── eventos_invalidos.jsonl
├── src/
│   ├── carregar.py
│   ├── regras.py
│   └── relatorio.py
├── tests/
│   ├── test_carregar.py
│   └── test_regras.py
├── docs/
│   └── modelo-relatorio.md
├── pyproject.toml
└── README.md
```

Inclua testes para:

- JSON inválido;
- campo obrigatório ausente;
- evento sem falha;
- contagem por usuário e IP;
- resultado abaixo do limite;
- resultado igual ao limite;
- lista vazia;
- preservação da origem do dado.

O guia de [testes com pytest](/guias/testes-com-pytest/) ajuda a estruturar esses casos. Para configuração e dependências, use um ambiente virtual e documente o fluxo no README.

## Como escrever o relatório do projeto

A saída pode ser Markdown para facilitar a leitura:

```text
# Relatório de triagem

Gerado em: 2026-08-31T00:30:00Z
Fonte: dados sintéticos para estudo

## Caso 1

- Usuário: ana
- Origem: 192.0.2.10
- Falhas observadas: 4
- Regra acionada: falhas repetidas para revisão
- Próxima etapa: consultar eventos relacionados no laboratório

## Limitações

A regra não confirma comprometimento e não considera contexto corporativo.
```

Registre a data de geração, a fonte, a regra e a limitação. Em um SOC real, o formato seguiria o processo da empresa. No portfólio, essa estrutura demonstra que você entende a diferença entre um sinal e uma conclusão.

## Como apresentar o projeto no currículo

Evite frases vagas como “conhecimento em SIEM e Python”. Descreva a entrega:

> Desenvolvi um triador defensivo de alertas com Python e dados sintéticos. Implementei leitura de JSON Lines, validação de esquema, agrupamento de falhas de autenticação, relatório Markdown e testes automatizados, documentando falsos positivos e limites da regra.

Se você criou uma interface de linha de comando:

> Criei uma CLI para analisar eventos fictícios de autenticação, selecionar período e limite, exportar relatório e registrar erros sem expor dados sensíveis.

Não afirme que construiu um SIEM. O projeto demonstra uma pequena etapa de processamento e triagem. Precisão aumenta a confiança de quem avalia o currículo.

Adapte o [currículo Python para vaga júnior](/carreira/curriculo-python-vaga-junior/) e coloque formação, previsão de conclusão, fundamentos de segurança, projeto e atividades acadêmicas em destaque.

## Como buscar vagas de estágio em SOC

Crie alertas com variações em português e inglês:

- estágio SOC;
- estágio em SOC;
- estágio segurança da informação;
- estágio cibersegurança;
- estágio cybersecurity;
- estágio Blue Team;
- estágio monitoramento de segurança;
- estágio resposta a incidentes;
- estágio SIEM;
- estágio infraestrutura e segurança;
- estágio riscos de tecnologia;
- estágio prevenção a fraudes.

Pesquise também por vagas sem a palavra “estágio” quando a plataforma tiver filtro de senioridade. Algumas empresas usam “assistente”, “trainee” ou “analista júnior”, mas confirme se os requisitos são compatíveis com uma pessoa em formação.

Acompanhe as [vagas de estágio](/vagas/estagio/) e o radar geral de [vagas Python](/vagas/). Para oportunidades de tecnologia que não destacam a linguagem, consulte também o <a href="https://eu.dev.br/" target="_blank" rel="noopener noreferrer" onclick="umami.track('portfolio-site-click', { destination: 'eu.dev.br', source: 'estagio-soc-seguranca-python' })">eu.dev.br</a>.

## Como avaliar se o estágio oferece aprendizado

Durante o processo, tente entender:

- existe alguém responsável pela supervisão?
- há treinamento inicial?
- a equipe possui playbooks documentados?
- quais ações a pessoa estagiária pode executar?
- como alertas são revisados e escalados?
- existe plantão? Estagiários participam?
- quais ferramentas e fontes de log são usadas?
- a função mistura SOC com suporte sem explicar o escopo?
- como o desempenho é avaliado?

Não é necessário receber detalhes confidenciais. A empresa pode explicar o processo de formação sem revelar arquitetura ou incidentes.

Sinais positivos incluem revisão frequente, laboratório, documentação, reuniões de aprendizado e progressão clara de tarefas. Sinais de alerta incluem responsabilidade isolada por turno, ausência de supervisão e expectativa de executar ações críticas sem procedimento.

## O que pode aparecer na entrevista

Prepare respostas para perguntas como:

- qual é a diferença entre autenticação e autorização?
- o que é um falso positivo?
- para que serve um log?
- o que DNS faz?
- qual é a diferença entre HTTP e HTTPS?
- por que horário e timezone importam em uma investigação?
- o que você faria ao receber um alerta que não entende?
- como seu script reage a uma linha inválida?
- quais limitações existem na sua regra?
- por que você usou dados sintéticos?

Uma boa resposta para um alerta desconhecido não é inventar certeza. Explique que você verificaria o playbook, preservaria os dados, consultaria o contexto permitido e pediria revisão antes de qualquer ação de impacto.

No [simulador de entrevista Python](/carreira/simulador-entrevista-python/), pratique a explicação técnica do projeto. Use também o [checklist de teste técnico Python](/carreira/teste-tecnico-python/) para validar instalação, testes, README e segurança do repositório.

## Certificações e laboratórios

Certificação não costuma ser condição obrigatória para estágio. Uma trilha introdutória pode organizar o estudo, mas projeto, fundamentos e capacidade de explicação continuam essenciais.

Antes de pagar por uma prova, analise 20 vagas e verifique se a certificação aparece de forma recorrente. Para uma pessoa estudante, pode ser mais útil investir tempo em:

1. redes e Linux;
2. logs e identidade;
3. laboratório local ou plataforma educacional autorizada;
4. projeto defensivo em Python;
5. documentação e candidatura.

Em laboratórios, respeite o escopo. Não reproduza técnicas contra sistemas de terceiros. A habilidade profissional inclui saber onde você tem autorização para agir.

## Plano prático de 30 dias

### Semana 1: base e vagas reais

- analise 20 anúncios de SOC e segurança;
- revise IP, DNS, HTTP, autenticação e autorização;
- pratique Linux em ambiente próprio;
- estude a estrutura de logs;
- anote os requisitos recorrentes.

### Semana 2: Python para eventos

- revise JSON, arquivos, dicionários e datas;
- crie dados sintéticos;
- implemente validação de campos;
- agrupe eventos por usuário e origem;
- mantenha o projeto pequeno.

### Semana 3: testes e relatório

- adicione testes das regras;
- trate arquivo ausente e JSON inválido;
- gere relatório Markdown;
- documente falsos positivos;
- revise o repositório para remover segredos e dados reais.

### Semana 4: apresentação e candidatura

- escreva um README reproduzível;
- grave uma demonstração curta, se desejar;
- adapte o currículo;
- pratique cinco perguntas de entrevista;
- crie alertas de vagas;
- envie candidaturas compatíveis.

Trinta dias não tornam alguém especialista em SOC. O objetivo é sair de uma lista abstrata de ferramentas para uma base verificável, um projeto concluído e um processo de aprendizado orientado por vagas reais.

## Erros comuns de quem quer entrar em SOC

Evite:

- tratar qualquer alerta como ataque confirmado;
- estudar somente ferramentas e ignorar redes;
- publicar dados reais ou indicadores sensíveis;
- executar scanner ou exploração sem autorização;
- copiar um script sem entender entradas e saídas;
- afirmar que uma regra simples “detecta hackers”;
- esconder falsos positivos;
- colocar tokens ou chaves no Git;
- buscar apenas vagas que trazem Python no título;
- aceitar responsabilidade crítica sem supervisão em nome de “experiência”.

A postura defensiva é parte do portfólio. Dados sintéticos, limitações documentadas e ações reversíveis mostram mais maturidade do que uma demonstração agressiva sem contexto.

## Checklist antes de se candidatar

- [ ] Entendo IP, DNS, HTTP, autenticação e autorização em nível introdutório.
- [ ] Sei explicar o que são log, alerta, incidente e falso positivo.
- [ ] Meu projeto usa apenas dados sintéticos, próprios ou autorizados.
- [ ] O README ensina a instalar, executar e testar.
- [ ] A regra está documentada como didática, não como detecção definitiva.
- [ ] Não existem senhas, tokens ou dados pessoais no repositório.
- [ ] Consigo explicar uma limitação do projeto.
- [ ] Pesquisei títulos além de “estágio SOC”.
- [ ] Adaptei o currículo aos requisitos do anúncio.
- [ ] Sei que devo pedir revisão antes de uma ação de impacto.

## Perguntas frequentes

### O que faz uma pessoa estagiária em SOC?

Ela pode apoiar triagem de alertas, consulta a logs, enriquecimento de eventos, atualização de chamados, documentação e indicadores. As tarefas devem ser supervisionadas e seguir playbooks. O estágio não deveria deixar uma pessoa iniciante responsável sozinha por incidentes críticos.

### Preciso saber Python para conseguir estágio em SOC?

Não em todas as vagas. Python é um diferencial para arquivos, APIs, normalização, relatórios e automação. Redes, Linux, HTTP, autenticação e logs são igualmente importantes para interpretar o que o código processa.

### Qual projeto Python fazer para um portfólio de SOC?

Um triador de alertas com dados sintéticos é uma boa escolha. Leia JSON Lines, valide campos, agrupe falhas, gere casos para revisão, exporte relatório e escreva testes. Explique os falsos positivos e não apresente a regra como detecção pronta para produção.

### SOC é uma boa porta de entrada para cibersegurança?

Pode ser, pois oferece contato com eventos, investigação, processos e resposta. Avalie a supervisão, o treinamento, os playbooks e as responsabilidades. A qualidade da experiência depende mais da estrutura da equipe do que do título.

### Como procurar vagas de estágio em SOC?

Pesquise por SOC, segurança da informação, cibersegurança, Blue Team, monitoramento, resposta a incidentes, SIEM, infraestrutura e segurança, riscos e antifraude. Leia a descrição completa e acompanhe as [vagas de estágio](/vagas/estagio/).

## Próximo passo

Abra dez anúncios de estágio em SOC ou segurança e conte quantas vezes aparecem redes, Linux, SIEM, logs e Python. Depois, crie cinco eventos sintéticos e implemente apenas a leitura e a validação. Quando essa etapa estiver testada, adicione uma regra didática e um relatório.

Publique o projeto somente quando outra pessoa conseguir reproduzi-lo pelo README. Em seguida, revise o guia de [cibersegurança júnior com Python](/carreira/python-ciberseguranca-junior/), aprofunde a [análise de logs para SOC](/blog/python-analise-logs-soc-seguranca/) e acompanhe as [oportunidades de estágio](/vagas/estagio/). Para entrar em segurança, demonstrar cuidado com evidência, autorização e limites é tão importante quanto escrever código.
