Incident Overview (Without Journalism)
Superfície institucional primária: Mission-Critical DevSecOps.
Linhas de capacidade:
- Reproducible and signed build pipelines
- Policy-as-code enforcement
- Immutable rollout and rollback control
Tier A (confirmed): a Bybit reportou atividade não autorizada em 21 de fevereiro de 2025 durante uma transferência rotineira de uma cold wallet multisig de ETH para uma warm wallet, e declarou que a apresentação da transação foi manipulada enquanto a lógica subjacente do smart contract foi alterada.
Tier A (confirmed): declarações públicas de stakeholders do ecossistema Safe descreveram uma trilha de ataque direcionada envolvendo comprometimento da máquina de um desenvolvedor Safe e proposta disfarçada de transação maliciosa voltada ao fluxo de assinatura da Bybit.
Tier A (confirmed): o FBI publicou o Alerta I-022625-PSA em 26 de fevereiro de 2025, atribuindo o furto de aproximadamente US$ 1,5 bilhão em ativos virtuais da Bybit à atividade TraderTraitor vinculada à RPDC.
Tier B (inferred): a falha decisiva não foi extração de chave privada de uma fronteira HSM; foi dessicronização da intenção do assinante na camada de construção de transação de custódia, onde interface confiada e payload assinado divergiram.
Tier C (unknown): a linha do tempo completa de pré-comprometimento, todos os nós de persistência dentro da infraestrutura web upstream e toda a telemetria de endpoint do lado operador não foram divulgados publicamente.
Declaração de hipótese limitada: a análise assume que os comunicados oficiais são materialmente corretos sobre trilha de ataque e escopo; detalhes ocultos podem alterar precisão de sequenciamento, mas dificilmente mudam a lição arquitetural central sobre verificabilidade da trilha de assinatura.
Failure Surface Mapping
Defina S = {C, N, K, I, O}:
C: plano de controle de custódia (proposta de transação, checagens de política, coordenação de assinantes)N: caminho de rede para entrega de artefatos de interface de assinatura e chamadas de APIK: ciclo de vida de chaves (custódia de chave fria, restrições da cerimônia de assinatura)I: fronteira de identidade entre intenção do operador e semântica da transação renderizadaO: orquestração operacional (workflow de aprovação, controles de release, resposta a incidentes)
Camadas que falharam de forma dominante e classe de falha:
I: falha Bizantina, porque intenção exibida e payload executável divergiram.C: falha por omissão e temporização, porque gates de política não rejeitaram a transição malformada antes da conclusão do quórum.O: falha por omissão, porque controles de integridade de deploy para artefatos voltados a assinantes não impediram adulteração direcionada.
Tier A (confirmed): o incidente foi acionado durante um caminho operacional legítimo de transferência.
Tier B (inferred): o colapso de fronteira de confiança ocorreu na tradução interface-para-payload, não na integridade da primitiva criptográfica de assinatura.
Formal Failure Modeling
Seja o estado de custódia no tempo t:
Onde:
Q_t: conjunto de assinantes do quórum e estado de limiarM_t: bytes da mensagem apresentada para aprovaçãoP_t: contexto de política (restrições de destino, allowlist de métodos, limites de valor)V_t: saídas de verificação independenteL_t: nível de risco em tempo real e estado do kill switch
Transição:
Invariante requerido:
Condição de violação:
Implicação para decisão: limiar multisig isolado é insuficiente; admissibilidade requer checagens de equivalência semântica independentes da trilha primária de renderização da UI.
Adversarial Exploitation Model
Classes de atacante:
A_passive: observa workflow de assinatura e janelas de tempoA_active: injeta lógica de manipulação de transação na trilha de proposta/renderizaçãoA_internal: abusa de privilégios de deploy na infraestrutura da interface de carteiraA_supply_chain: compromete workstation de desenvolvedor e credenciais de releaseA_economic: monetiza lavagem rápida via rotas fragmentadas de saída cross-chain
Variáveis de pressão de exploração:
- latência de detecção
Δt - largura da fronteira de confiança
W(contagem de componentes mutáveis entre intenção e payload assinado) - escopo de privilégio
P_s(autoridade efetiva da conta comprometida)
Função de pressão de risco:
Tier B (inferred): o sucesso do ataque exige maximizar W e P_s enquanto mantém Δt abaixo do limiar de ativação da resposta a incidentes.
Vínculo com decisão operacional: a arquitetura de custódia deve minimizar W por meio de clientes de assinatura determinísticos e cadeias de artefatos imutáveis e atestáveis.
Root Architectural Fragility
A fragilidade estrutural é compressão de confiança: a custódia institucional tratou o significado da transação renderizada na UI e o calldata canônico como equivalentes sob condições normais. Isso acopla autorização humana a uma superfície de software mutável. O evento também expõe risco de vazamento de privilégio de CI/CD em serviços adjacentes ao assinante; o comprometimento de um único contexto de desenvolvedor upstream pode expandir para influência na aprovação de transações. A fraqueza de rollback aparece quando não existe fail-safe rígido bloqueando fluxos de custódia sob deriva de verificação. Portanto, a fragilidade central não é falha de criptografia ECDSA/threshold; é falha de governança na trilha de controle que mapeia intenção para bytes.
Code-Level Reconstruction
# Production guard: signer path must verify canonical transaction bytes
# from an independent decoder before quorum signature is accepted.
def approve_cold_transfer(tx_payload, ui_summary, signer_set, policy, verifier):
canonical = verifier.decode(tx_payload) # independent parser, separate trust domain
if canonical.destination not in policy.allowed_destinations:
raise Reject("destination_not_allowed")
if canonical.method not in policy.allowed_methods:
raise Reject("method_not_allowed")
if canonical.value_wei > policy.max_value_wei:
raise Reject("value_limit_exceeded")
# critical invariant: rendered intent must match canonical decoded semantics
if canonical.summary_hash() != ui_summary.summary_hash():
policy.raise_kill_switch("intent_payload_mismatch")
raise Reject("semantic_mismatch")
for signer in signer_set.required_quorum():
signer.sign(canonical.hash())
return "approved"
Reconstrução de falha: se ui_summary for confiado sem decode canônico independente e sem hash-match, uma proposta maliciosa pode satisfazer o quórum enquanto viola a intenção de transferência.
Operational Impact Analysis
Tier A (confirmed): a escala de perda de ativos foi reportada em aproximadamente US$ 1,5 bilhão.
Tier B (inferred): o raio de impacto é limitado pela topologia de custódia e controles de emergência, mas o choque de confiança em nível de mercado se propaga além das carteiras diretamente impactadas.
Para operações de custódia distribuída, defina:
Se uma única via de custódia for comprometida em uma arquitetura segregada de n vias, B \approx 1/n; se as vias compartilham dependências da trilha de assinatura, o B efetivo aproxima-se de 1 sob exploração coordenada.
Implicação para decisão: segregação deve ser segregada por dependência, não apenas por chave.
Enterprise Translation Layer
CTO: construção e assinatura de transações de custódia devem ser tratadas como software crítico de produção com build determinístico, atestação e detecção de deriva, não como tooling de UI de carteira.
CISO: o threat model deve priorizar spoofing de intenção do assinante e entrada por supply chain nos sistemas de proposta de transação; controles exigem verificação semântica independente da transação e contenção just-in-time de credenciais.
DevSecOps: artefatos voltados a assinantes exigem proveniência assinada, autorização de release por duas partes, logs imutáveis de deploy e gates policy-as-code que bloqueiem mutação não verificada de frontend/recurso.
Board: alegações de solvência não substituem maturidade de controle; a exposição de risco institucional é determinada pela arquitetura de governança de custódia e pela latência de detecção mensurável.
STIGNING Hardening Model
Prescrições de controle:
- Isolar o plano de controle de custódia de superfícies mutáveis de build expostas à internet.
- Segmentar ciclo de vida de chaves por classe de transação, envelope de valor e domínios de aprovação com time-lock.
- Aplicar hardening de quórum com verificação fora de banda, em nível de bytes, da transação.
- Reforçar observabilidade com trilhas de evento assinadas para criação de proposta, hash do artefato de renderização, decisão do assinante e broadcast.
- Aplicar envelope de rate limiting a trilhas de transferência de alto valor e ativar políticas determinísticas de pausa em mismatch semântico.
- Exigir rollback seguro para migração: sistemas de aprovação de custódia devem apenas avançar para artefatos atestados; rollback deve preservar proveniência reproduzível.
Modelo estrutural ASCII:
[Policy Engine]----attested rules---->[Tx Constructor]
| |
| canonical bytes + hash
v v
[Independent Decoder] <---compare---> [Signer UI Renderer]
| |
+------ mismatch => kill switch ----+
|
[Quorum Signers]
|
[Broadcast Gate]
Strategic Implication
Classificação primária: governance failure.
Implicação de cinco a dez anos: a custódia institucional de ativos digitais convergirá para autorização centrada em verificadores, na qual aprovação humana fica criptograficamente vinculada a semântica de transação decodificada de forma independente. A separação competitiva será definida por integridade mensurável da trilha de assinatura, provas formais de admissibilidade de política e contenção de baixa latência sob comprometimento de supply chain.
References
- Bybit Announcement, Incident Update: Unauthorized Activity Involving ETH Cold Wallet (21 fev 2025): https://announcements.bybit.com/en/article/incident-update-unauthorized-activity-involving-eth-cold-wallet-blt292c0454d26e9140/
- Atualização oficial da Bybit via PRNewswire, resumo da investigação forense (26 fev 2025): https://www.prnewswire.com/news-releases/bybit-confirms-security-integrity-amid-safe-wallet-incident--no-compromise-in-infrastructure-302386274.html
- Comunicado da Safe Ecosystem Foundation e achados preliminares da equipe Safe Wallet (28 fev 2025): https://safefoundation.org/blog/safe-ecosystem-foundation-statement
- FBI Cyber PSA I-022625-PSA (26 fev 2025): https://www.fbi.gov/investigate/cyber/alerts/2025/north-korea-responsible-for-1-5-billion-bybit-hack
Conclusion
O incidente demonstra que comprometimento de custódia pode emergir da governança de construção de transação, mesmo quando primitivas de assinatura permanecem íntegras. A resiliência institucional depende de reduzir a largura da fronteira de confiança, impor invariantes de equivalência semântica antes da conclusão do quórum e operar controles determinísticos de contenção para anomalias na trilha de assinatura.
- STIGNING Infrastructure Risk Commentary Series
Engineering Under Adversarial Conditions