Archivos de Mensaje Privado accesibles a usuarios no autenticados (falta verificación de autenticación)

Descripción del Incidente

Durante una evaluación de seguridad de nuestro foro personalizado de Discourse, descubrimos un posible problema de autenticación que afecta a los archivos adjuntos de imágenes cargados dentro de mensajes privados.

Detalles

  • API de carga: /uploads.json

  • URL de acceso: /uploads/default/original/1X/{nombre_archivo}

  • Reproducción:

    1. El usuario carga una imagen en un mensaje privado (con for_private_message=true).

    2. La imagen resultante se puede acceder a través de un enlace directo por cualquier tercero (incluidos usuarios no autenticados o usuarios en modo incógnito).

Preocupación de Seguridad

  • Se espera que las imágenes cargadas en mensajes privados sean confidenciales y solo accesibles para los participantes de la conversación.

  • Sin embargo, tal como está implementado actualmente, cualquiera con la URL directa puede descargar estos archivos, independientemente de su estado de autenticación o autorización.

Preguntas

  • ¿Es este el comportamiento previsto en la implementación actual de Discourse?

  • ¿Existen configuraciones o plugins recomendados para garantizar que los archivos adjuntos de mensajes privados estén debidamente protegidos y solo sean visibles para los usuarios autorizados?

  • ¿Se ha discutido o abordado este problema en el proyecto upstream de Discourse?

  • ¿Existen mejores prácticas para proteger las cargas privadas en las implementaciones de Discourse?

¡Gracias por su ayuda y asesoramiento sobre esta importante preocupación de seguridad!

Podría valer la pena echar un vistazo:

1 me gusta