Uma vulnerabilidade crítica nos servidores do Instagram permitiu, em outubro de 2025, que conteúdos de contas privadas fossem acessados sem qualquer autenticação. A falha foi descoberta pelo pesquisador de segurança Jatin Banga, que relatou o problema à Meta, mas teve o caso encerrado como “Não Aplicável” mesmo após a correção silenciosa do sistema. Em janeiro de 2026, diante da ausência de resposta, ele tornou pública toda a documentação do episódio.
Curta, siga e se inscreva nas nossas redes sociais:
Facebook | X | Instagram | YouTube | Bluesky
Sugira uma reportagem. Mande uma mensagem para o nosso WhatsApp.
Entre no canal do Revista Cariri no Telegram e veja as principais notícias do dia.
🧪 Como a vulnerabilidade foi descoberta
A falha veio à tona quando Jatin Banga, durante o desenvolvimento de uma ferramenta de automação de workflows HTTP, identificou uma vulnerabilidade crítica de autorização que permitia o acesso completo a conteúdos de contas privadas do Instagram — sem login, sem relação de seguidor e sem qualquer credencial.
O bug permitia que requisições não autenticadas retornassem links diretos de CDN para fotos e vídeos, além de legendas e metadados das publicações. Bastava o envio de uma requisição HTTP com headers específicos de navegadores mobile.
⚙️ Como o exploit funcionava
Segundo Banga, ao acessar instagram.com/[username] com headers mobile, o servidor retornava um HTML contendo um objeto JSON chamado polaris_timeline_connection.
Dentro dele, o array edges trazia URLs diretas da CDN para conteúdos privados, em resolução completa.
Não se tratava de problema de cache ou CDN: o backend do Instagram estava gerando e entregando dados privados sem validar permissões.
Durante a análise, Banga identificou um “estado de gatilho”: em certas contas privadas vulneráveis, o sistema mostrava “0 seguidores / 0 seguindo”, ignorando os números reais. Nesse estado corrompido, as verificações de privacidade eram simplesmente ignoradas, liberando a timeline privada.
📊 A extensão do problema
Seguindo protocolos éticos, Banga testou apenas contas sob seu controle ou com permissão. Em 7 contas, 2 apresentaram a falha — 28% da amostra.
Com mais de 1 bilhão de usuários no Instagram, e a descoberta inicial ocorrendo de forma acidental em uma conta não autorizada, a taxa real poderia ser maior. Indícios preliminares apontaram correlação com a idade das contas, com perfis mais antigos sendo mais suscetíveis, embora a causa raiz não tenha sido investigada pela Meta.
📣 Divulgação responsável à Meta
Entre 12 e 15 de outubro de 2025, Banga reportou o bug à Meta.
O primeiro relato foi rejeitado em cinco minutos; o segundo, com linguagem técnica mais precisa, iniciou investigação.
A Meta pediu testes na conta 2fa_2fa (onde a falha não ocorreu), revelando a natureza condicional do problema. Com permissão de um terceiro usuário (its_prathambanga), Banga demonstrou o exploit, extraindo 30 URLs privadas, e enviou análise técnica completa explicando o mecanismo em duas etapas.
🩹 Correção silenciosa e contradição
Em 16 de outubro de 2025, a vulnerabilidade deixou de ser reproduzível. Exatamente 48 horas após Banga fornecer os nomes das contas vulneráveis, essas contas foram corrigidas.
Ele documentou a mudança em vídeo cronometrado e pediu confirmação.
A resposta da Meta só veio em 27 de outubro: “Não conseguimos reproduzir esse problema.”
O caso foi marcado como “Não Aplicável”, sem elegibilidade para bug bounty.
Dois dias depois, a Meta afirmou que mesmo que um problema irreproduzível fosse corrigido, isso não provaria que existiu — e que a correção poderia ter sido efeito colateral de outra mudança.
🔍 O que não foi investigado
Banga ofereceu logs completos de rede (incluindo headers X-FB-Debug), capazes de rastrear internamente as requisições. A oferta foi ignorada.
Ele também forneceu uma lista comparativa de contas exploráveis e não exploráveis — um dataset ideal para diagnóstico de bugs condicionais. Nenhuma análise foi solicitada.
Sem causa raiz identificada, não há garantia técnica de que o problema foi eliminado e não apenas mascarado.
🗂️ Preservação de evidências
O pesquisador manteve um protocolo rigoroso de prova:
• Script em Python (prova de conceito);
• Screenshots antes/depois do patch;
• Quatro vídeos com hashes SHA256;
• PDFs de todas as comunicações;
• Logs técnicos completos;
• Repositório Git público com timestamps criptograficamente verificáveis (12 a 17 de outubro de 2025).
Essas evidências tornam impossível a fabricação ou alteração retroativa dos fatos.
🗓️ Escalação e divulgação pública
Banga seguiu a janela padrão de 90 dias de divulgação coordenada e a estendeu para 102 dias.
Em 4 de novembro de 2025, pediu reabertura e investigação da causa raiz. A Meta não respondeu.
Em 22 de janeiro de 2026, notificou a divulgação pública, oferecendo 48 horas finais de resposta.
Sem retorno, em 24 de janeiro de 2026, toda a documentação foi publicada.
Por Bruno Rakowsky










