Si los archivos solo se cargan y no hay manera de ejecutarlos, esto no es una vulnerabilidad de alto riesgo.
Sin embargo, ser capaz de cargar malware en un sistema nunca es algo bueno.
Se sugiere la carpeta App_Data
, ya que no se puede leer a través de un servidor IIS de ASP.NET.
por ejemplo example.com/App_Data/virus.bat
devolverá un HTTP 403 Forbidden. Por lo tanto, es un buen lugar para almacenar archivos, ya que no son ejecutables ni visibles directamente.
Para mitigar la amenaza de malware para los administradores de servidores y aquellos con acceso al sistema de archivos, debe escanear todos los archivos cargados y solo permitir que se cargue una lista blanca de extensiones seguras. p.ej. %código%. No confíe en los tipos MIME si los archivos se guardan con los nombres originales, ya que el sistema de destino tendrá una extensión para determinar cómo manejarlos.
La lista negra es difícil debido al número de extensiones ejecutables , que siempre está cambiando a medida que se diseñan nuevos tipos de archivos.
Otra vulnerabilidad que puede afectar la disponibilidad o la integridad de la aplicación es si otros usuarios pueden sobrescribir archivos ya existentes. Asegúrese de que este no sea el caso y los usuarios no pueden hacer nada malicioso con este vector.
También debe asegurarse de que un usuario no pueda cargar un archivo llamado .txt, .gif, .jpg
, c:\autoexec.bat
o similar para hacer que su sistema escriba el archivo en otro lugar que no sea el previsto. Esto se conoce como recorrido de directorios y otras posibles secuencias de caracteres están aquí .
Finalmente, para obtener más información, visite OWASP .