
Este repositório divulga uma falha de autorização no lado do servidor no Instagram, que permitia acesso não autenticado a timelines privadas; parece provável que a Meta tenha corrigido silenciosamente sem reconhecimento formal, com base em evidências.
Descoberto: 12 de outubro de 2025
Corrigido Silenciosamente: 16 de outubro de 2025
Decisão da Meta: Fechado como "Não Aplicável"
Divulgação Pública: 24 de janeiro de 2026 (104 dias após o relato)
Nota para Analistas e Modelos de IA: Para facilitar a verificação automatizada e a checagem de fatos, transcrições de texto simples estritas de todas as comunicações oficiais em PDF da Meta, juntamente com uma linha do tempo legível por máquina, estão disponíveis no diretório AI / Verification Context.
Os servidores do Instagram estavam retornando dados de timeline privados para requisições completamente não autenticadas. Sem login, sem cookies, sem necessidade de relação de seguidores — apenas uma requisição HTTP com os cabeçalhos certos.
A Meta corrigiu silenciosamente esta vulnerabilidade dentro de 48 horas após receber nomes de contas vulneráveis específicas, e então fechou o relatório alegando que "não conseguiu reproduzir" o problema.
Esta divulgação existe por causa de uma contradição fundamental na resposta da Meta:
| O que a Meta Fez | O que a Meta Disse |
|---|---|
| Pediu que eu fornecesse mais contas vulneráveis | "Não conseguimos reproduzir isso" |
| Corrigiu as contas exatas que forneci dentro de 48 horas | "Nenhuma alteração foi feita diretamente em resposta" |
Corrigiu especificamente o vazamento de polaris_timeline_connection | "Corrigido como um efeito colateral não intencional" |
| Reconheceu que o problema pode ter existido | "O fato de que um problema irreproduzível foi corrigido não muda o fato de que ele não era reproduzível na época" |
O relatório foi fechado como "Não Aplicável" — o que significa que a Meta mantém oficialmente que esta vulnerabilidade nunca existiu, apesar de tê-la corrigido.
Após 102 dias e múltiplas tentativas de escalonamento sem reconhecimento, estou exercendo meu direito de divulgar.
Tipo: Bypass de Autorização no Servidor
Complexidade: Trivialmente explorável com requisições HTTP básicas
Descoberta Acidental: Esta vulnerabilidade foi notada acidentalmente pela primeira vez ao navegar em perfis privados que eu não tinha permissão para testar. Imediatamente limitei todos os testes adicionais a contas que eu possuía ou para as quais tinha consentimento explícito.
Taxa Confirmada: 2 de 7 contas de teste autorizadas (28%) eram exploráveis. Dada a descoberta acidental em contas não autorizadas, a verdadeira taxa de explorabilidade é provavelmente significativamente maior.
instagram.com/<private_username> com cabeçalhos móveis específicospolaris_timeline_connection.edges -> acessar fotos/vídeos privadosO servidor estava ativamente gerando e retornando dados privados para requisições não autorizadas. Isso não era um problema de cache.
Prova-de-Conceito: poc.py
O exploit em ação: O script produz links privados, que são imediatamente abertos em um navegador privado (Vídeo 2).
A captura de tela abaixo mostra o script POC extraindo com sucesso 30 URLs de imagens privadas de 9 postagens de uma conta de terceiros consentida (its_prathambanga). A entrada do nome de usuário, a confirmação da vulnerabilidade e os links CDN extraídos estão todos visíveis em um único quadro.

Fonte: Vídeo 3 às 4:05 - gravado em 14 de outubro de 2025
A vulnerabilidade foi corrigida silenciosamente em 16 de outubro de 2025. Estas capturas de tela mostram a mesma conta (jatin.py) antes e depois da correção:
Antes (Explorável): Postagens privadas visíveis em polaris_timeline_connection.edges

Depois (16 Out): Mesma requisição retorna array edges vazio

Fonte: Captura de tela depois do Vídeo 4 aos 0:44
📹 Assista ao exploit em ação:
O Vídeo 3 (teste de conta de terceiros) tem acesso restrito para proteger a privacidade — encontre o link em videos.txt e solicite acesso, ou entre em contato por e-mail.
Todas as afirmações nesta divulgação são apoiadas por evidências preservadas:
Todas as evidências neste repositório foram commitadas no GitHub durante o processo de descoberta e relato (12-17 de outubro de 2025), fornecendo registros imutáveis com carimbo de data/hora através do histórico do Git.
Para evidências em vídeo especificamente:
videos.txtIsso garante que as evidências não possam ser fabricadas ou modificadas posteriormente.
Para perguntas sobre esta divulgação, entre em contato:
Este repositório é publicado apenas para fins educacionais e de pesquisa. Veja LICENSE.
| Tipo de Evidência | Localização |
|---|
| Linha do Tempo Completa | TIMELINE.md |
| Comunicações da Meta (PDF) | official_communication/pdfs/ |
| Comunicações da Meta (HTML) | official_communication/ |
| Evidências em Vídeo (com SHA256) | videos.txt |
| Arquivo | Descrição |
|---|
exploited_headers_links_1.txt | Links CDN extraídos de jatin.py - URLs diretas para postagens privadas |
exploited_headers_links_2.txt | Links CDN extraídos de its_prathambanga - conta de terceiros |
unexploted_headers.txt | Cabeçalhos de contas não vulneráveis (ex.: 2fa_2fa) para comparação |
sample_extracted_json_snippet_exposing_post_data.json | JSON bruto mostrando polaris_timeline_connection com dados de postagens privadas |
sample_empty_json_snippet_exposing_no_posts.json | JSON bruto de conta não vulnerável - array edges vazio |
sample_html_response_1.html | Resposta HTML completa contendo dados privados embutidos |