Posibles problemas de seguridad en un proceso de carga de dos partes

1

Utilizo un enfoque de URL previamente firmado para cargar archivos en un contenedor privado de S3. Una distribución de CloudFront está configurada para usar este depósito como fuente.

El proceso de carga solo está disponible para autenticar usuarios y se realiza en dos pasos:

  1. El cliente solicita la URL previamente firmada, mi servidor genera la URL con las credenciales de AWS y devuelve la URL.

  2. El cliente utiliza esta URL para emitir una solicitud PUT a S3 y completa la carga.

Hasta ahora, mi servidor simplemente genera la URL firmada con el nombre de archivo proporcionado por el cliente y no realiza ninguna comprobación de la lógica empresarial para la carga (por ejemplo, si una carga solicitada es válida). El argumento para hacerlo de esta manera es tener un servicio de carga genérico que sea independiente de otras partes de la API que puedan estar relacionadas con diferentes tipos de carga de archivos (por ejemplo, archivos PDF, fotos, audios, etc.).

Además, en este momento no hay una verificación / confirmación explícita de una carga exitosa. Una vez que el cliente recibe la URL previamente firmada, tiene 5 minutos para completar la carga antes de que la URL caduque, pero no hay una comprobación explícita de si el archivo se ha cargado.

Me pregunto si hay algún error grave de seguridad en el proceso anterior.

    
pregunta MLister 07.07.2015 - 00:24
fuente

0 respuestas

Lea otras preguntas en las etiquetas