Estoy desarrollando una aplicación web ASP.NET y me gustaría que el usuario pueda cargar una imagen desde su sistema local o pasar una URL a una imagen. La imagen puede ser JPG o PNG. ¿Qué problemas de seguridad debería preocuparme por hacer esto? He visto varias formas de incrustar código dentro de archivos JPG. ¿Hay algún método en C# (o librerías externas) que pueda confirmar que un archivo es JPG/PNG, de lo contrario arrojaría un error? Por lo menos, estoy haciendo que el directorio que mantiene las imágenes cargadas no sea explorable y que ponga un límite de tamaño máximo de 1 mb, pero me gustaría implementar más controles.Carga de imágenes: problemas de seguridad
Gracias por cualquier consejo.
Hola. ¿Cuál sería la mejor forma de procesar una imagen? ¿Sería suficiente simplemente leer la imagen y guardarla en mi sistema de archivos (con mi propio esquema de nombres)? Gracias – keyboardP
Por 'proceso' quiero decir cargarlo en un procesador de imagen, hacer algo con la imagen y guardarla. Utilizarías 'System.Drawing.Bitmap' en .NET. Desafortunadamente, si la imagen es JPEG, el re-guardado le cuesta calidad de imagen, por lo que este no es un buen método si necesita preservar la imagen original exacta. – bobince
Creo que puedo seguir adelante y utilizar un servicio como Amazon S3 para almacenar las imágenes. Supongo que esto mitigaría la mayoría de los riesgos? (Especialmente el hecho de que no hay implicación de mi servidor con los archivos de imagen). – keyboardP