Sólo un miembro autorizado puede conectar una página de Facebook o Instagram, y sólo volver a su propia consola

FixMediaService
Se descapó
17 de septiembre de 2026 a las 3:13 UTC
Autor
Kamo
Compromit
08b81d7

El flujo de conexión Meta confiaba en su URL. GET **************** tomó conexiónId y returnUrl de la cuerda de consulta sin sesión, y el estado estaba sin firmar base64(connectionId-returnUrl). Cualquiera que conociera un El UUID de la conexión podría correr el flujo con su cuenta de Facebook OWN y sobrescribir la página de esa organización, Así que la bandeja de entrada Messenger / Instagram de la org recibiría la página del atacante. Y returnUrl fue una redirigira abierta en el huéstre de la API: ************* respondió 302 a ejemplo.invalid (visto en vivo). Ahora nada sobre qué conexión está escrita, o dónde va el navegador siguiente, viene de una URL: - POST /connect-start (nuevo) necesita la sesión del miembro y MANAGE-CRM-SETTINGS, el derecho a un necesidades de conexión social. La conexión debe pertenecer a la organización del miembro (otras respuestas de la organización como una faltar uno) y ser MESSENGER o INSTAGRAM. Almacena una intención de un solo uso en Redis (recuerdo, org, conexión, y una URL de retorno OAuthReturnUrPolicy aprobado) y respuestas. startUrl en el host de redirección URI. - GET /start?intent= redime la intención con GETDEL, mencciona una posición aleatoria de un estado de un solo uso lado del servidor, y establece un cookies de unión al navegador (HttpSólo, Seguro, SameSite=Lax, path-scoped; solo se almacena su SHA-256). Un desaparecido, gastado o legado ?connectionId= request es una página de 400, nunca una redireccion. - GET /callback redime el estado con GETDEL, borra la cookie, rechaza un navegador que no es el que comenzó, vuelve a comprobar que el miembro sigue siendo elegibles y todavía en la organización de la conexión, y redirectaciones sólo a la URL de devolución almacenada. El intercambio simbolizado de página en sí mismo no ha cambiado. OAuthReturnUrlPolicy acepta una URL https con una ruta en origen de la consola que usan los miembros de esta organización (su propio dominio en vivo, cada organización en su cadena de proveedores de seguridad, la plataforma, todas elegidas por OrgLinkHosts, y La reconstruye desde sus partes analizadas; cualquier otra cosa se convierte en la propia consola de la org más el camino de la pantalla. El cambio de pantalla de configuración que llama a los barcos de arranque de conexión en kamo-internal. Hasta que despliegue el botón viejo mantiene Fallo como ya lo hizo: navegó a /api/media/... en el host de la consola, que no tiene tal ruta. Pruebas: MetaOAuthControllerTest camina el flujo a través de MockMvc con una API de gráficos que podría conectar la página, por lo que cada uno La negativa es el cheque que está haciendo. Desactivar el cheque de cookie, la re-cheque de elegibilidad, el cheque de org o un solo uso cada uno falla una prueba. OAuthReturnUrUrpollicPinyPales aceptados y rechazados URLs. Suite completa: 953 pruebas, 0 fallos.

Todos los cambios

Como lo que ves enviaste?

Todo llega a su espacio de trabajo por sí solo. Comience en el plan gratuito y lea esta página de nuevo en un mes.

Arranzar gratis para siempreVer Precios