Tengo un formulario web disponible para el público, que tiene capacidad de carga de archivos. Ahora los archivos se guardan en el servidor web o se envían como archivo adjunto en un correo electrónico. Estamos restringiendo el tamaño, es decir, 15 MB y las extensiones de archivo que se cargan. Nuestro servidor SMTP está en el mismo servidor web. Me preocupa la seguridad, ya que cualquiera puede cargar archivos maliciosos y puede tener un impacto en nuestro servidor web de producción.Seguridad de carga de archivos Preocupación
¿Cuáles son los riesgos que tendré para el control de carga de archivos disponibles para el público? ¿Hay alguna forma de que alguien pueda ejecutar un script malicioso en el servidor web cargando un archivo malicioso?
hice algunas investigaciones y descubrí siguientes puntos
- Si envié un archivo como un archivo adjunto en un correo electrónico, este archivo se almacena durante un período temporal en carpetas temporales de ASP .NET, y una vez de correo electrónico se envía esto se borrará.
- Puede cambiar el nombre de un archivo antes de guardarlo en el sistema de archivos.
- Puede guardar el archivo en una ubicación diferente como su sitio web
- Puede tener algún tipo de control de virus en tiempo real. No estoy seguro de cómo puedes hacer eso. Estaba leyendo sobre un escaneo de virus de línea de comando. Pero no estoy seguro de si realmente necesito eso.
Estos son solo algunos puntos, pero me gustaría saber si hay algún punto ciego en la carga de archivos.
En realidad, si lo envía como un archivo adjunto, nunca toca su disco. – SLaks
Ni siquiera voy a tratar de responder, generalmente obtengo votos por no sugerir algo hermético. Hermético no tiene ninguna característica. Dicho esto, si coloca un web.config no válido o web.config con formato incorrecto en la carpeta de carga, puede evitar la ejecución de cualquier código .net. Debería asegurarse de estar bloqueando todas las extensiones que se asignan a algo que se ejecuta en su servidor, incluidos .php, .axd, .ashx, etc. – MatthewMartin
Tenga cuidado de que su formulario no se convierta en un juguete favorito de los remitentes de correo no deseado. Limite a cuántas personas se puede enviar y con qué frecuencia, además de defender los riesgos del archivo. – AlG