Relatório de incidente - 06/09/2024

Gabriel Nunes

6 de setembro de 2024

Relatório de incidente ocorrido durante a Codecon Summit 2024, dia 06 de setembro de 2024 - Essa publicação visa explicar tudo o que ocorreu com o primeiro dia do evento em nosso aplicativo, que causou instabilidades e ganho de pontos extras para algumas pessoas.

Resumo (TL;DR)

Na Codecon Summit possuímos um jogo, chamado Code-codes. Um jogo com o objetivo de resgatar tokens secretos para incentivar as pessoas de participarem do evento. Estes tokens podem ser gerados e resgatados de várias formas.

Durante a tarde do dia 06/09/2024, primeiro dia da edição de 2024 da Codecon Summit, começamos a receber alertas dos nossos servidores que uma alta carga de uso estava sendo feita. Acreditamos ser algo referente ao evento, pela quantidade de pessoas, e aumentamos o nosso plano.

Em seguida, recebemos relatos de que haviam pessoas com muitos pontos e começamos a investigar, descobrindo uma atividade suspeita.

Logo depois a API caiu novamente e causou instabilidade para muitas pessoas. As pessoas em primeiro no ranking não paravam de subir e ganhar mais pontos e foi constatado que elas estavam hackeando o sistema para resgatar códigos.

Ao final da tarde desativamos o resgate e banimos as pessoas que usaram de más práticas por estarem fora dos aceites de termos do evento. E melhorias foram feitas para evitar que isso aconteça.

Como isso afeta você?

Nenhum dado de participante do evento foi comprometido. As pessoas que usaram de má prática foram banidas do jogo e a competição segue com quem está jogando e resgatando pontos de forma correta e sem trapaças. Já tomamos as medidas possíveis no momento para evitar novos ataques.

Qual era a vulnerabilidade? Como ela foi explorada?

Descobrimos duas vulnerabilidade.

  1. Acesso admin para visualizar tokens

Este ano desenvolvemos um painel administrativo para o Code-codes, para que a organização pudesse acompanhar os resgates dos códigos e ter estatísticas legais para exibir.

Era possível identificar o ID de usuário de um dos admins e fazer alteração de cookie para logar como um admin.

O painel permitia criação de tokens, listar tokens e visualizar o ranking.

Essa vulnerabilidade não foi explorada pois tokens já existentes não foram resgatados. Ela nos foi nos passada por um participante que descobriu o problema, pois sabia que alguém havia usado de alguma vulnerabilidade para ganhar pontos. Agradecemos demais!

  1. Criação de tokens dinâmicos

Essa foi a vulnerabilidade mais usada pelos atacantes.

Este ano alguns patrocinadores possuem um sistema onde podem criar códigos para resgate de forma dinâmica e um dos patrocinadores havia deixado sua chave de API e endpoint exposto na aplicação.

Os atacantes, então, usaram este acesso de endpoint para criar bots que criam tokens de patrocinador dinamicamente e depois o resgatam usando nossa API pública de resgate.

Que medidas tomamos?

Essas foram as correções que fizemos na noite do dia 06/09/2024:

  • Banimos os atacantes do jogo, fazendo eles perderem os pontos e não poderem resgatar mais nenhum ponto;

  • Removemos as vulnerabilidades de chaves expostas de patrocinadores;

  • Alteramos chaves de API e endpoints usados;

  • Adicionamos rate-limit para impossibilitar uso de bots para resgate;

  • Excluimos os códigos gerados maliciosamente.

O que mais vamos fazer?

A organização do evento ainda vai planejar como o Code-codes vai funcionar em próximos eventos ou se eles ainda continuarão ativos.

Infelizmente criamos um jogo para ser divertido e premiar pessoas que realmente gostam do evento e participam, porém existem pessoas que não sabem brincar e extrapolam coisas em que a gente nem se preocupava, pois achava besteira.

Agradecemos todos que participam de forma positiva no jogo e esperamos que a experiência tenha sido divertida!

Junte-se à 9.000+ devs e receba e-mails semanais com a melhor curadoria de artigos, repositórios e outros links interessantes da área tech.

Inscreva-se grátis