- Um pesquisador de segurança revelou que um token de acesso do GitHub publicado online por engano por um funcionário da Home Depot deixou sistemas internos expostos à internet por um ano
- O token concedia acesso e permissão de modificação a centenas de repositórios privados de código-fonte, além de possibilitar acesso à infraestrutura em nuvem, processamento de pedidos e sistemas de gerenciamento de estoque
- O pesquisador enviou vários e-mails e mensagens no LinkedIn para a Home Depot, mas não recebeu resposta por semanas
- A Home Depot só corrigiu a exposição e revogou o acesso do token depois que a TechCrunch entrou em contato
- A Home Depot não possui canal de reporte de vulnerabilidades nem programa de bug bounty, e o caso expõe a ausência de um sistema de resposta de segurança
Visão geral do caso de exposição de acesso a sistemas internos da Home Depot
- Um pesquisador de segurança encontrou um token de acesso privado publicado online por um funcionário da Home Depot
- Estima-se que esse token estivesse exposto desde o início de 2024
- O pesquisador confirmou que, com ele, era possível acessar e modificar centenas de repositórios GitHub da Home Depot
- A chave exposta permitia acesso a diversos sistemas internos da Home Depot, como infraestrutura em nuvem, sistema de processamento de pedidos, sistema de gerenciamento de estoque e pipeline de desenvolvimento de código
- A Home Depot hospeda a maior parte de sua infraestrutura de desenvolvimento e engenharia no GitHub desde 2015
Alertas do pesquisador e resposta da empresa
- O pesquisador Ben Zimmermann enviou vários e-mails à Home Depot, mas não recebeu resposta por semanas
- Ele também enviou uma mensagem no LinkedIn ao diretor de segurança da informação (CISO) da Home Depot, Chris Lanzilotta, mas não obteve resposta
- Zimmermann relatou ter visto casos semelhantes de exposição em outras empresas nos últimos meses, e disse que a maioria delas agradeceu pelo aviso
- Segundo ele, “a Home Depot foi a única que me ignorou”
Medidas após a intervenção da TechCrunch
- A Home Depot não possui programa de reporte de vulnerabilidades nem bug bounty
- Por isso, Zimmermann entrou em contato com a TechCrunch pedindo ajuda para resolver o problema
- Quando a TechCrunch contatou o porta-voz da Home Depot, George Lane, em 5 de dezembro, ele confirmou o recebimento do e-mail, mas depois não respondeu às perguntas adicionais
- Depois disso, o token exposto foi removido da internet, e as permissões de acesso também foram revogadas logo após o contato da TechCrunch
Pedido de confirmação adicional e falta de resposta
- A TechCrunch perguntou à Home Depot se seria possível verificar, por meios técnicos como logs, se o token havia sido usado por outras pessoas, mas não recebeu resposta
- Por isso, ainda não foi possível confirmar se houve acesso externo real ou a dimensão dos possíveis danos
Significado do caso
- Este caso mostra que até grandes empresas podem deixar por longos períodos sem correção falhas básicas na gestão de chaves de acesso
- Também revela que a ausência de um sistema de reporte de vulnerabilidades pode atrasar a solução do problema
- O fato de medidas só terem sido tomadas após a intervenção da TechCrunch reforça a importância da supervisão externa
1 comentários
Comentários do Hacker News
A TechCrunch perguntou à Home Depot sobre o token de acesso exposto, mas a empresa aparentemente encaminhou o caso ao jurídico e entrou em modo de silêncio
Provavelmente a posição oficial que vier depois será uma declaração jurídica cheia de linguagem para evitar responsabilidade
Pode realmente ser uma questão legal, então lá costuma haver alguém que lê e toma providências
Já tive um caso em que um banco cortou contato comigo por causa de um problema de verificação de identidade, e uma única carta resolveu tudo imediatamente
Claro que nós gostaríamos de ver o relatório interno de análise, mas num mundo centrado em acionistas não tem como deixar de agir com cautela
Na semana passada, acabei expondo por engano minhas chaves de API da OpenAI, Anthropic e Gemini
As chaves apareceram no log do Claude Code, e a Anthropic enviou um e-mail imediatamente e desativou a chave
Já a OpenAI e o Google não mandaram aviso nenhum
Em especial, a chave do Gemini do Google levou de 10 a 15 minutos só para eu encontrar, e ela ainda parecia continuar ativa
Quanto mais vibe coding existe hoje em dia, mais importante fica a higiene no gerenciamento de chaves tanto para quem emite quanto para quem usa
Já existem muitos incidentes de segurança causados por brogramming, e isso pode multiplicar o problema por 100
Se ela só ficou registrada no log do Claude Code, é surpreendente que o Google tenha percebido isso
Eu também já cometi o erro de publicar meu PAT pessoal do GitHub num repositório público
Em todas as vezes, o GitHub desativou o token imediatamente e enviou uma notificação
No meu caso não houve grande dano, mas o sistema funcionou bem
Como na piada do “Home Depot 2x4”, se alguém pudesse pegar material à vontade por um ano, acho que teria feito pelo menos uma esfera de madeira
Estou pensando em qual seria a melhor forma de fazer gestão de segredos (secrets management)
No momento, estou acessando por SSH manualmente para editar o arquivo
.env.envjá é suficienteDe qualquer forma, se o app for comprometido, os segredos vão ficar na memória, então não dá para evitar totalmente a exposição
Se possível, impor restrição de acesso por IP é a defesa mais forte
Se usar Age como backend, basta deixar no servidor uma única chave privada de longo prazo
Alguém perguntou: “que tipo de dano seria possível causar com essa informação?”
ou, se o GitHub for usado na implantação, injetar funcionalidade maliciosa em produção
e lucrado com roubo de gift cards
Recentemente também houve um caso em que, por meio do GitHub da Salesloft, invadiram a AWS, roubaram tokens OAuth e acessaram centenas de contas de clientes da Salesforce
É difícil distinguir se uma string exposta é realmente uma chave de API ou apenas um valor aleatório
pat_esk_nas chavesA expressão “Open Source Home Depot” combina estranhamente bem
É surpreendente que GitHub e OpenAI não ofereçam por conta própria automação de varredura de hashes de tokens
Parece algo simples de implementar para a segurança dos clientes
Foi sugerido criar um serviço de varredura independente de plataforma
Antigamente, quando um token do Discord vazava, ele era desativado imediatamente e uma conta do sistema enviava uma DM
Segundo a documentação oficial,
ele valida automaticamente padrões dos principais fornecedores e, quando necessário, revoga o token automaticamente
Porém, tokens expostos fora do GitHub são mais difíceis de detectar
Eu frequentemente reporto chaves vazadas por meio de programas de bug bounty
Infelizmente, a Home Depot não tem bug bounty
Mesmo o scanner gratuito do GitHub já conseguiria detectar isso
Alguém mencionou que talvez fosse possível usar esses dados do sistema interno para algo no nível de insider trading