Sentinela.
← Voltar pro blog

22 de maio de 2026 · 7 min · Carol

CTEM risco financeiro ALE uptime segurança

Como calculamos o risco em R$/ano (ALE) — fórmula, tabela e exemplo

A nota A–F responde "como está minha postura?". O ALE responde "quanto isso custa por ano?". Mostramos a fórmula, a tabela calibrada e um exemplo numérico real — com os números que você precisa preencher pra ativar.

Toda ferramenta de ASM responde "como está minha postura?" com nota técnica, score CVSS ou contagem de findings. Nenhum deles atravessa a porta da sala da diretoria. "Temos 12 highs" não fecha orçamento de remediação.

O que fecha é "isso custa R$ X por ano se a gente não corrigir." Esse número se chama ALE — Annual Loss Expectancy. Esse post explica como o Sentinela calcula, mostra a fórmula crua, dá um exemplo passo a passo e lista o que você precisa preencher pra ele sair de zero.

A fórmula em uma linha

ALE total (R$/ano) = custo de downtime  +  risco de breach

Duas pernas. Independentes. Cada uma defensável sozinha. O total é a soma — sem peso mágico, sem multiplicador escondido.

A diferença pro resto do mercado mora na perna 1: a gente usa dados de uptime reais do seu domínio, não benchmark de indústria. É por isso que ela só faz sentido com uptime e segurança na mesma plataforma. EcoTrust, GAT, Unxpose — fazem segurança. Não têm seu histórico de incidentes.

Perna 1 — Custo de downtime

downtime_cost = horas_de_incidente_observadas_365d × revenue_per_hour

Tradução em prosa: a gente soma a duração de cada incidente que o monitor de Uptime vinculado ao alvo registrou nos últimos 12 meses, e multiplica pela receita por hora que você declarou.

Dois inputs, ambos seus:

Campo Onde preenche O que é
Monitor de Uptime vinculado Formulário do alvo (Security) Qual monitor é o "termômetro" deste ativo. A gente auto-sugere quando o host casa.
Receita por hora (R$) Mesmo formulário Quanto este ativo perde por hora fora do ar.

Se você não vincular monitor, essa perna fica em R$ 0. A gente não chuta. Não usa benchmark "varejo médio perde R$ X". O número precisa ser seu pra ser defensável diante da diretoria.

Como dimensionar revenue_per_hour se você não sabe de cabeça? Tem um post inteiro com calculadora em quanto custa uma hora de site fora do ar. Spoiler: o número costuma ser 3 a 5× a "receita perdida pura" quando você soma CAC desperdiçado, SEO penalizado e suporte sobrecarregado.

Perna 2 — Risco de breach

breach_ale = probabilidade(risk_tier) × impacto
impacto    = (lgpd_exposure + incident_recovery_cost) × reputation_factor

Essa perna é a clássica ALE atuarial: probabilidade vezes impacto. A diferença é de onde vem cada termo.

A tabela de probabilidades

A probabilidade anual de incidente vem do tier de risco do último audit do alvo (resultado do score contextualizado: nota técnica + criticidade de negócio + threat-intel KEV/EPSS). Tabela calibrada:

Tier de risco do ativo Probabilidade anual
Low 2%
Medium 8%
High 20%
Critical 40%

Por que esses números? Calibração baseada em literatura pública (Verizon DBIR, relatórios Ponemon) ajustada pro escopo do que a auditoria observa. É opinable — e por isso a tabela é uma constante explícita no código, não uma rede neural escondida. Se você tem dado próprio do seu setor, dá pra discutir. Mas a régua precisa ser a mesma entre alvos pra comparação fazer sentido.

Os inputs de impacto

São três campos que você preenche uma vez por workspace em Configurações → Risco financeiro:

Campo O que é Como dimensionar
lgpd_exposure Quanto custaria uma multa LGPD aplicável a este negócio Multa LGPD vai até 2% do faturamento, limitada a R$ 50M por infração. Use 5% a 50% disso como estimativa razoável.
incident_recovery_cost Custo de IR (forense, comunicação de crise, downtime de recuperação) Cobertura de seguro cyber costuma usar R$ 50k–R$ 500k pra PME, R$ 1M+ pra média/grande.
reputation_factor Multiplicador de dano reputacional (0 a N) E-commerce de marca conhecida: 1.5–2.0. SaaS B2B com SLA contratual: 1.5. App interno: 0.5–1.0.

Por que você preenche e não a gente? Porque quem conhece o negócio é você. A perna 1 é objetiva (dados nossos). A perna 2 é a sua visão sobre o seu impacto. Transparência > falsa precisão.

Exemplo completo

E-commerce de moda. Configuração:

  • Monitor de Uptime: 6h12 de incidentes nos últimos 365 dias
  • Receita/hora declarada: R$ 12.000
  • Último audit: nota C, criticidade de negócio altarisk_tier = high
  • Settings → Risco financeiro:
    • lgpd_exposure: R$ 50.000
    • incident_recovery_cost: R$ 80.000
    • reputation_factor: 1.5

Cálculo:

Perna 1 — downtime
  downtime_cost = 6.2h × 12.000        = R$ 74.400

Perna 2 — breach
  impacto       = (50.000 + 80.000) × 1.5 = R$ 195.000
  probabilidade = 0.20  (high)
  breach_ale    = 0.20 × 195.000       = R$ 39.000

ALE total                              = R$ 113.400/ano

Esse é o número que vai pra reunião com a diretoria. Não "12 highs em aberto" — R$ 113.400/ano de exposição esperada se nada for feito.

O que muda quando você corrige

Cada eixo se mexe diferente:

  • Corrigir um finding crítico → derruba a nota técnica → derruba o risk_tier da perna 2 → a tabela de probabilidades muda 1 ou 2 degraus → breach_ale cai pra fração do que era.
  • Vincular o monitor de uptime (se ainda não vinculou) → perna 1 sai de R$ 0 e fica honesta.
  • Reduzir downtime real (HA, deploy melhor, CDN) → menos horas no período de 365 dias → perna 1 cai.
  • Aumentar reputation_factor (cliente novo grande, SLA mais agressivo) → perna 2 sobe — você ajusta o número à realidade.

E o score técnico A–F continua intocável. Por design. Score técnico é régua de comparação entre alvos; risco financeiro é régua de priorização. São eixos paralelos, deliberadamente.

Threat intel ainda escala a probabilidade

Detalhe que muita gente perde: se o último audit detectou um finding com CVE listado no CISA KEV (catálogo de vulnerabilidades em exploração ativa) ou EPSS ≥ 0.5 (alta probabilidade de exploração nos próximos 30 dias), o risk_tier sobe um degrau automaticamente.

Na prática isso significa: um alvo medium com finding KEV vira high na hora — e o breach_ale salta de 8% × impacto para 20% × impacto. 2.5× o número de antes, sem nenhuma ação humana.

É a tradução em reais de "isso aqui não é teórico, está sendo explorado neste momento".

A leitura agregada do workspace

O número de cada alvo soma na visão de workspace. Pra agência ou time gerenciando 30 clientes, isso vira:

Exposição agregada do portfólio: R$ 2.847.000/ano em 14 ativos auditados.

Esse é o número que a diretoria vê. Quando você abre o detalhamento, vê quais alvos contribuem mais — e quais correções têm maior retorno em reais derrubados.

Onde isso vive no produto

  • Card no Security/Show — exposição do alvo (perna 1 + perna 2 separadas + total).
  • Dashboard de workspace — agregado, com top contributors.
  • Relatório semanal — diff de exposição (subiu/desceu desde a última semana).
  • PDF de auditoria — número aparece no relatório que vai pro cliente final / diretoria.

Como ativar agora (3 minutos)

  1. Settings → Risco financeiro — habilite, preencha LGPD/recovery/reputation. Uma vez por workspace.
  2. Security → editar alvo — preencha "Receita por hora" e selecione o monitor vinculado (auto-sugerido quando o host casa). Por alvo.
  3. Rode uma auditoria (ou aguarde a semanal). O número aparece no card.

Se você já tem um monitor de Uptime no mesmo domínio: vamos pré-selecionar pra você ao editar o alvo. Se ainda não tem, crie o monitor primeiro — sem ele, a perna 1 fica zerada e o moat vira metade do que poderia ser.

Por que isso só faz sentido aqui

Toda ferramenta de ASM consegue calcular a perna 2 (probabilidade × impacto). Algumas até tentam estimar a perna 1 chutando "sites de e-commerce perdem em média R$ X/hora". Mas nenhuma delas tem o seu histórico de incidentes do último ano — porque nenhuma delas é também a sua ferramenta de uptime.

A gente é. É por isso que o número aparece. Não é estimativa de mercado — é a sua planilha.


Pra entender por que a nota técnica A–F não recebe o contexto financeiro (e por que isso é uma decisão de projeto, não esquecimento), leia pentest vs auditoria contínua. Pra dimensionar revenue_per_hour se você não tem o número de cabeça, vá em quanto custa uma hora de site fora do ar.

Continue lendo