11 puntos por GN⁺ 10 일 전 | 3 comentarios | Compartir por WhatsApp
  • En las páginas públicas de Notion, el UUID de los editores queda expuesto sin autenticación, y con una sola solicitud POST se pueden obtener nombre, correo electrónico y foto de perfil
  • En wikis o documentos públicos de empresas, las direcciones de correo de empleados que editaron esa página pueden quedar expuestas tal cual, y en la página de Notion Community se verificaron 12 correos de 13 IDs de usuario
  • En la prueba se incluyeron empleados de Notion, cuentas de servicio como svc-notion-prod@makenotion.com y contratistas externos, y fue posible consultarlo sin cookies, tokens ni proceso de autenticación
  • getLoginOptions también puede llamarse sin autenticación, lo que permite distinguir si cada cuenta usa inicio de sesión con contraseña o SSO
  • Este problema sigue sin corregirse desde que se reportó en 2022, y en organizaciones que usan ampliamente páginas públicas existe un alto riesgo de exposición de PII

Cómo reproducirlo y qué información se expone

  • Dentro de la información de permisos de una página pública, la API de Notion devuelve el UUID de los editores, y este proceso no requiere autenticación
  • En una página de Notion Community, se identificaron 13 IDs de usuario en los permisos del bloque, y al enviarlos a /api/v3/syncRecordValuesMain se obtuvieron 12 direcciones de correo electrónico
    • Entre los resultados había empleados de Notion, la cuenta de servicio de producción svc-notion-prod@makenotion.com y contratistas externos
    • Todo esto se confirmó usando una sola página
  • La solicitud puede hacerse sin cookies, tokens ni procedimientos de autenticación

Impacto y riesgos adicionales

  • Las páginas de Notion se usan ampliamente como wikis corporativos, publicaciones de empleo, documentos públicos y guías de onboarding, entre otros formatos
  • Con la búsqueda site: notion.site se pueden encontrar miles de páginas públicas
  • En cada una de esas páginas públicas, una sola llamada a la API sin autenticación puede exponer las direcciones de correo de los editores
  • Si un workspace empresarial con 500 empleados comparte una página pública, una sola solicitud puede revelar 500 direcciones de correo corporativas
  • No hay rate limiting, y se pueden procesar lotes de 50 personas por vez
  • getLoginOptions también puede invocarse sin autenticación
  • Si se combina con lo anterior, es posible distinguir si cada cuenta usa inicio de sesión con contraseña o SSO
  • Esta combinación puede terminar siendo una lista gratuita de objetivos para credential stuffing
  • El reporte inicial se presentó en HackerOne el 28 de julio de 2022
  • Desde entonces, han pasado casi 4 años sin que se corrija
  • El mismo problema se volvió a encontrar y reportar por separado, pero fue marcado como duplicado
  • Al volver a probarlo, se confirmó que se mantenían el mismo endpoint, el estado sin autenticación y la devolución de correos electrónicos
  • En HackerOne, el reporte fue clasificado como informative; según el texto original, no se asignó CVE ni hubo bug bounty
  • Se considera una situación de exposición de PII de clientes
  • Los equipos que usan páginas públicas de Notion deben revisar su configuración de compartición

3 comentarios

 
cshj55 10 일 전

Desde lo de Notion AI ya ni sé qué app se supone que es...
No sabía que también había pasado algo así

 
devsepnine 9 일 전

Desde que me cambié de Notion a Obsidian, ya no lo uso, pero..

 
GN⁺ 10 일 전
Comentarios en Hacker News
  • Confirmé que en la ayuda oficial dice que, si publicas una página pública de Notion en la web, los metadatos pueden incluir los nombres, fotos de perfil y direcciones de correo de los usuarios que contribuyeron. Parecía aún más problemático que esta exposición de PII estuviera casi escondida como una nota al margen
    • El defecto en sí ya era absurdo, pero la actitud de asumirlo como algo by design se sentía todavía más increíble
    • Incluso como usuario de Notion que usa páginas públicas, esto de verdad me pareció un diseño sin sentido
    • Recuerdo haber visto algo parecido también en los feeds RSS de algunos CMS
  • Soy Max de Notion, y aunque este tema está documentado y se muestra una advertencia al publicar, creo que eso no es suficiente. Actualmente estamos evaluando quitar la información personal del endpoint público o reemplazarla con un proxy de correo como en los commits públicos de GitHub. Y, aunque no lo parezca, no era un cambio que se resolviera en 1 minuto
    • Aun así, que el problema lleve 4 años ya se siente demasiado largo
    • Me dio curiosidad qué mensaje de advertencia aparece en la práctica. Cuando hice una página pública hace un mes, lo entendí solo como que el contenido de la página se haría público, no que también quedarían expuestos los correos de los editores
    • Igual da la impresión de que Notion ya tuvo bastante más de 1 minuto para arreglarlo
    • Ya que estás aquí, también quería preguntar por qué Notion es extremadamente lento en Firefox
    • Como ya se había reportado en 2022 y por su naturaleza parece claramente un error, no creo que fuera exagerado esperar que ya estuviera corregido a estas alturas
  • Dejé de usar Notion por un tiempo y al volver a verlo, sentí que un servicio que antes pensaba recomendar como ejemplo de hipertexto ahora se presenta con frases como AI workplace o AI everything app, así que su identidad parece totalmente distinta. Me hizo pensar: ¿qué fue lo que pasó?
    • Yo tampoco lo usé durante varios años, pero cada vez que en alguna empresa alguien empujaba fuerte a Notion e intentaba migrar al equipo, solía ver que la velocidad de trabajo caía mucho. Incluso salió la broma de que mandar gente a la competencia para que implementara Notion sería una forma de sabotaje. Mi impresión es que la curva de aprendizaje era más larga de lo esperado y que, aunque ahorraba tiempo a un pequeño grupo de impulsores —normalmente PM u operaciones—, a la mayoría le imponía una gestión centrada en la legibilidad. Al forzar trabajo desordenado pero real a encajar en tablas limpias y vistas ordenadas, terminaba propagándose por toda la organización un estado que se veía bien, pero era inexacto
    • Notion ya lleva años posicionándose como una app integral para el trabajo, y si el producto ya juntaba gestión de proyectos y documentación, entonces era natural que siguiera la ola de incorporar AI
    • Para mí, no es que Notion haya perdido sentido “recién ahora”; desde el principio fue una app que quería hacerlo todo, y por eso mismo era una herramienta dispersa e ineficiente. Sumarse a AI se siente como una extensión de eso
    • Me dio curiosidad qué significa exactamente aquí eso de un ejemplo de hypertext
    • Yo estoy bastante acostumbrado a Unix, así que me resulta hasta satisfactorio no tener que usar este tipo de software en mi día a día
  • Recuerdo que este problema tiene al menos más de 5 años. De hecho, hace tiempo alguien vio una página mía de Notion y terminó rompiendo mi anonimato
    • Ya me hizo pensar si para cuidar la privacidad hay que llegar a un nivel de OPSEC y separar cuentas, gestionando cada rastro
  • El timing fue curioso. Justo estaba pidiéndole a Claude una comparación entre Notion vs Obsidian y luego abrí HN; ver esta publicación enseguida fue casi hasta oportuno
    • Gracias por todas las recomendaciones, me ayudaron mucho. Mi caso de uso no era un grafo de conocimiento personal sino trabajo para construir una ADU, así que necesitaba desde gestión de tareas hasta tableros de inspiración, tablas de costos, listas de pedidos y documentación. En ese sentido, Notion todavía parecía bastante potente, mientras que herramientas como Logseq, Obsidian, Joplin, Trilium y Craft se veían buenas en lo suyo pero algo cortas para lo que yo necesitaba. Anynote se veía bien, pero no tenía cliente web, y Milanote parecía encajar mejor cuando el peso está más en los tableros de inspiración. Al final, si no fuera por este tema, seguiría pensando que Notion era una opción muy atractiva
    • Si se trata de un repositorio personal de conocimiento, diría que conviene mantenerse lejos de servicios propietarios. Me gusta Logseq, aunque cada vez me preocupa más que se esté volviendo abandonware
    • Mi proyecto hyperclast también puede valer la pena. Incluso tengo una página comparándolo con Notion, Obsidian y otros
    • Yo uso Outline en self-hosting. Puede que tenga menos funciones nuevas de AI, pero siento que cubre casi todo lo que necesito como alternativa a Notion
    • Hace unos años me pasé de Obsidian a Joplin, y como es totalmente FOSS y puede sincronizarse con una instancia personal de Nextcloud, quedé muy conforme
  • Creo que las grandes empresas deberían tomarse mucho más en serio la seguridad y privacidad de usuarios y empleados
    • Quizá también habría que evitar que las juntas directivas y los accionistas de las grandes empresas puedan esconderse detrás de la estructura legal, y hacerlos económicamente responsables por problemas como este
    • Las empresas solo se mueven cuando tienen un motivo. Al final, los usuarios tienen que cuidar más su privacidad y estar dispuestos a cambiar de producto si hace falta. Solo criticar no les mueve las ventas, así que desde la perspectiva de la empresa no cambia gran cosa
    • En adelante, parece probable que las consultoras empiecen a presumir cuántas vulnerabilidades resueltas logran por millón de tokens, y que los equipos de ingeniería reciban presión para fusionar código generado. También parece que crecerán los servicios de revisión de PR de seguridad y auditoría de codebases que consumen muchos tokens, al estilo de Dependabot o SonarQube, y este se ve como un mercado donde equipos pequeños pueden construir ARR rápido
    • En última instancia, creo que para frenar de verdad este tipo de cosas, los votantes tienen que elegir políticos y regulaciones que castiguen a las empresas de manera efectiva
    • Siendo realistas, siento que las empresas miran solo la ganancia. El incentivo de generar ingresos lo antes posible, salir y pasar al siguiente venture parece mucho más fuerte
  • Alguna vez pensé en una arquitectura donde el servidor casi no almacenara datos de usuario, y cada persona mantuviera sus propios datos para materializarlos on-demand solo cuando fuera necesario. Como es difícil evitar filtraciones por error humano, sentía que la solución más de fondo era guardar menos desde el principio. Aun así, había muchos problemas complicados: el costo de combinar datos de grupo, los problemas de agregación causados por usuarios offline, evitar scraping del lado del cliente y controlar modificaciones de datos no autorizadas. Por ejemplo, imaginé un modelo donde cada usuario de HN tuviera su propio sqlite y el servidor fuera a buscar las publicaciones de cada uno, pero si una sola persona no estuviera disponible, ya faltarían resultados, así que la dificultad práctica parecía alta
    • A mí también me gusta la idea, pero al final creo que es fácil volver a algo muy parecido al sistema actual. La gente usa varios dispositivos, así que terminas necesitando un servicio de sincronización; y cuando esa complejidad crece, vuelves a delegarlo a terceros, regresando al mundo de inicio de sesión y manejo de datos tipo FB, Google o Apple
  • Uso muchísimo Notion y hasta hice algunas integraciones; en general me parece una buena app, su uso de AI está bien y siento que sigue mejorando. Ojalá sí arreglen este problema, y me alegró ver que últimamente la API ha mejorado bastante, al punto de soportar database views como objetos de primera clase. En la API pública todavía tengo algunos pequeños deseos pendientes
  • El tuit era un texto de apenas unas cuantas frases; me hizo pensar si de verdad hacía falta escribir algo así con un LLM
  • La app de Notion para macOS fue de lo peor que he usado entre todo el software que he probado. Se sentía como si ignorara casi por completo las convenciones de diseño de la plataforma
    • Ojalá esta cultura de las apps envueltas en web desaparezca pronto. Siento que demasiados servicios están arruinando la experiencia de usuario de esta forma
    • Apenas había pasado como una hora desde que la instalé y el service worker ya estaba usando 7 GB de disco; casi no había subido archivos, así que no entendía qué estaba cacheando tanto
    • Al final, el hecho de que sea Electron explica prácticamente todo
    • En realidad, ni siquiera la veo como una app de macOS de verdad, sino más bien como un simple empaquetado de app web