11 pontos por GN⁺ 10 일 전 | 3 comentários | Compartilhar no WhatsApp
  • Em páginas públicas do Notion, os UUIDs dos editores são expostos sem autenticação e, com uma única requisição POST, é possível obter nome, e-mail e foto de perfil
  • Em wikis corporativas ou documentos públicos, os endereços de e-mail dos funcionários que editaram a página podem ficar totalmente expostos; em uma página da Notion Community, foram confirmados 12 e-mails entre 13 IDs de usuário
  • Nos testes, apareceram funcionários do Notion, contas de serviço como svc-notion-prod@makenotion.com e contratados externos, e tudo pôde ser consultado sem cookies, tokens ou processo de autenticação
  • getLoginOptions também pode ser chamado sem autenticação, permitindo distinguir se cada conta usa login por senha e se usa SSO
  • O problema continua sem correção desde que foi reportado em 2022 e, para organizações que usam amplamente páginas públicas, o risco de exposição de PII é alto

Como reproduzir e quais informações são expostas

  • Nas informações de permissão de uma página pública, a API do Notion retorna os UUIDs dos editores, e isso não exige autenticação
  • Em uma página da Notion Community, foram encontrados 13 IDs de usuário nas permissões de blocos e, ao enviá-los para /api/v3/syncRecordValuesMain, foi possível obter 12 endereços de e-mail
    • Entre os dados retornados havia funcionários do Notion, a conta de serviço de produção svc-notion-prod@makenotion.com e contratados externos
    • Tudo isso foi confirmado a partir de uma única página
  • As requisições podem ser feitas sem cookies, tokens ou processo de autenticação

Impacto e riscos adicionais

  • Páginas do Notion são amplamente usadas como wiki corporativa, página de vagas, documentação pública e guia de onboarding, entre outros formatos
  • Uma busca por site: notion.site permite encontrar milhares de páginas públicas
  • Em cada uma dessas páginas públicas, uma única chamada de API sem autenticação pode expor os e-mails dos editores
  • Se um workspace enterprise com 500 funcionários compartilhar uma página pública, é possível obter 500 endereços de e-mail corporativos com uma única requisição
  • Não há rate limiting, e é possível processar em lote 50 usuários por vez
  • getLoginOptions também pode ser chamado sem autenticação
  • Em conjunto, isso permite distinguir se cada conta usa login por senha ou SSO
  • Essa combinação pode virar uma lista gratuita de alvos para credential stuffing
  • O primeiro relato foi enviado ao HackerOne em 28 de julho de 2022
  • Mesmo depois de quase 4 anos, o problema segue sem correção
  • O mesmo problema foi encontrado e reportado novamente em separado, mas foi tratado como duplicado
  • Em novos testes, o resultado foi o mesmo: mesmo endpoint, sem autenticação e continuação do retorno de e-mails
  • No HackerOne, o relato foi classificado como informative e, segundo o texto original, não houve CVE nem bug bounty
  • A situação foi caracterizada como exposição de PII de clientes
  • Equipes que usam páginas públicas do Notion devem revisar suas configurações de compartilhamento

3 comentários

 
cshj55 10 일 전

Depois do Notion AI, simplesmente... até ficou difícil entender que tipo de app ele é
Nem sabia que esse tipo de coisa também tinha acontecido

 
devsepnine 9 일 전

Desde que migrei do Notion para o Obsidian, nem tenho mais motivo para usar..

 
GN⁺ 10 일 전
Comentários do Hacker News
  • Ao publicar uma página pública do Notion na web, confirmei que a ajuda oficial diz que os nomes, as fotos de perfil e os endereços de e-mail dos usuários que contribuíram podem ser incluídos nos metadados. Pareceu ainda mais problemático que essa exposição de PII estivesse meio escondida como uma observação
    • Esse defeito em si já é absurdo, mas a postura de tratá-lo como algo by design pareceu ainda mais inacreditável
    • Como usuário do Notion que usa páginas públicas, isso realmente me pareceu um projeto sem cabimento
    • Lembro de já ter visto algo parecido em feeds RSS de alguns CMSs
  • Eu sou Max, do Notion, e esse problema está documentado e há um aviso ao publicar, mas acho que isso por si só não é suficiente. No momento, estamos avaliando remover informações pessoais do endpoint público ou substituí-las por um proxy de e-mail, como nos commits públicos do GitHub. E, ao contrário do que pode parecer, não era uma correção que se resolvesse em 1 minuto
    • Ainda assim, o fato de a questão já ter 4 anos parece tempo demais
    • Fiquei curioso sobre qual mensagem de aviso aparece de fato. Quando criei uma página pública há um mês, entendi apenas que o conteúdo da página ficaria público, e nem de longe que os e-mails dos editores também seriam expostos
    • Mesmo assim, dá a impressão de que o Notion já teve bem mais de 1 minuto para resolver isso
    • Já que você está aqui, também queria perguntar por que o Notion é extremamente lento no Firefox
    • Como isso já foi relatado em 2022 e, pela natureza do problema, parece um erro óbvio, não acho exagero ter esperado que já estivesse corrigido a esta altura
  • Fiquei um tempo sem usar o Notion e, quando voltei a olhar, tive a impressão de que a identidade do serviço mudou completamente: antes eu talvez o recomendasse como exemplo de hipertexto, e agora ele se vende com frases como AI workplace ou AI everything app. Fiquei pensando no que aconteceu
    • Eu também não uso há alguns anos, mas sempre que vi alguém em alguma empresa empurrar o Notion com força e tentar migrar o time, no fim a velocidade do trabalho caía bastante. Chegou ao ponto de surgir a piada de que mandar alguém para uma concorrente para implantar o Notion já seria uma forma de sabotagem. Minha impressão é que a curva de aprendizado é mais longa do que parece e, embora poupe tempo para um pequeno grupo de entusiastas — em geral PMs ou pessoal de operações —, ele acaba impondo à maioria uma gestão focada em legibilidade. Ao forçar trabalhos bagunçados, mas reais, a caber em tabelas bonitas e visões organizadas, espalha-se pela organização um estado que é agradável de ver, mas impreciso
    • O Notion já se posiciona há anos como um app unificado de trabalho, e se o produto junta gestão de projetos e documentação, parece natural que siga também na direção de IA
    • Para mim, não é que o Notion tenha perdido o sentido “agora”; ele sempre foi um app que quer fazer tudo, e por isso um instrumento disperso e ineficiente. Colocar IA em cima disso só parece uma continuação da mesma lógica
    • Fiquei curioso sobre o que exatamente significa a expressão exemplo de hypertext usada aqui
    • Como sou mais acostumado com Unix, fico até satisfeito por não precisar usar esse tipo de software no dia a dia
  • Pelo que lembro, esse problema já existe há pelo menos 5 anos. Inclusive, no passado alguém olhou minha página do Notion e acabou quebrando meu anonimato por causa disso
    • Fiquei pensando se, para preservar a privacidade, agora é preciso mesmo separar contas e gerenciar rastros em nível de OPSEC
  • O timing foi curioso. Eu tinha acabado de pedir ao Claude uma comparação entre Notion vs Obsidian e, quando fui para o HN, vi esse post logo em seguida, então achei bem oportuno
    • As recomendações ajudaram bastante. Meu caso de uso não é um grafo de conhecimento pessoal, e sim organizar a construção de uma ADU, então eu precisava de um conjunto amplo: gestão de tarefas, quadro de inspirações, planilha de custos, lista de pedidos e documentos. Nisso, o Notion ainda pareceu bem forte, enquanto ferramentas como Logseq, Obsidian, Joplin, Trilium e Craft parecem muito boas em seus nichos, mas um pouco insuficientes para o que eu preciso. O Anynote parecia interessante, mas não tem cliente web, e o Milanote pareceu mais adequado quando o foco em quadro de inspiração é maior. No fim, se não fosse essa questão, eu ainda acharia o Notion uma opção bastante atraente
    • Para um repositório de conhecimento pessoal, eu recomendaria ficar longe de serviços proprietários. Eu gosto do Logseq, mas também venho me preocupando com a possibilidade de ele virar abandonware
    • Meu projeto, hyperclast, talvez também valha uma olhada. Eu inclusive organizei uma página de comparação com Notion, Obsidian etc.
    • Eu uso o Outline em self-hosting. Talvez ele tenha menos recursos recentes de IA, mas sinto que já cobre quase tudo que eu preciso como alternativa ao Notion
    • Eu migrei do Obsidian para o Joplin alguns anos atrás e fiquei satisfeito por ele ser totalmente FOSS e poder sincronizar com minha instância pessoal de Nextcloud
  • Acho que empresas grandes deveriam tratar com mais seriedade a segurança e a privacidade de usuários e funcionários
    • Talvez seja hora de fazer com que conselhos e acionistas de grandes empresas também não possam se esconder atrás da estrutura jurídica e tenham responsabilidade financeira por problemas assim
    • Empresas só se movem quando há motivo. No fim, os usuários precisam se importar mais com a própria privacidade e estar dispostos a trocar de produto quando necessário. Só reclamação não mexe na receita, então, do ponto de vista da empresa, pouca coisa muda
    • Daqui para frente, imagino consultorias promovendo quantas correções de vulnerabilidades conseguem entregar por milhão de tokens, e equipes de engenharia sofrendo pressão para fazer merge de código gerado. Também espero ver mais serviços de revisão de PRs de segurança e auditoria de codebase, no estilo Dependabot ou SonarQube, consumindo muitos tokens. Parece um mercado em que times pequenos conseguem construir ARR rápido
    • No fim das contas, para impedir de verdade esse tipo de problema, acho que os eleitores precisam escolher políticos e regulações que de fato punam empresas
    • Sendo realista, acho que empresas olham principalmente para o lucro. O incentivo para gerar receita o mais rápido possível, fazer um exit e partir para a próxima startup parece muito mais forte
  • Já pensei em uma arquitetura em que o servidor quase não armazena dados dos usuários, e cada usuário carrega os próprios dados e só os materializa sob demanda quando necessário. Como vazamentos por erro humano são difíceis de evitar, a solução mais fundamental me parece ser armazenar menos desde o começo. Mas há muitos desafios: custo de combinar dados de grupo, problemas de agregação causados por usuários offline, prevenção contra scraping no cliente e controle de alterações não autorizadas. Por exemplo, imaginei um modelo em que cada usuário do HN teria seu próprio sqlite e o servidor buscaria os posts de cada um, mas se só uma pessoa estivesse indisponível já faltariam resultados, então a dificuldade prática parece alta
    • Também gosto da ideia, mas acho fácil ela acabar voltando para algo muito parecido com o sistema atual. Como os usuários usam vários dispositivos, no fim é preciso um serviço de sincronização; e, quando essa complexidade cresce, tudo tende a ser entregue de novo a terceiros, o que nos leva de volta ao mundo de login e gestão de dados ao estilo FB, Google e Apple
  • Eu uso bastante o Notion e até criei algumas integrações, e no geral acho que é um bom app, com uso de IA razoável e melhorias contínuas. Espero que esse problema seja corrigido, e fiquei feliz que a API tenha melhorado bastante recentemente, a ponto de database views passarem a ser suportadas como objetos de primeira classe. Ainda tenho mais alguns pequenos desejos para a API pública
  • O tweet era um texto curtíssimo, de só algumas frases; fiquei pensando se realmente precisava ser escrito com LLM
  • O app do Notion para macOS foi um dos piores softwares que já usei. Pareceu ignorar quase todas as convenções de design da plataforma
    • Queria muito que essa cultura de apps empacotados em web wrapper acabasse logo. Tenho a sensação de que serviços demais estão arruinando a experiência do usuário desse jeito
    • Eu tinha instalado fazia cerca de uma hora e já vi o service worker usando 7 GB de disco. Quase não subi arquivos, então não faço ideia do que ele estava cacheando tanto
    • No fim, o fato de ser Electron parece explicar tudo
    • Na verdade, isso nem parece um app de macOS de verdade, mas sim só um web app empacotado