¿Puede un CSV contener código malicioso?

6

Estoy trabajando con un sistema que permite a los usuarios cargar archivos CSV, que son descargados por otros usuarios.

El sistema valida (entre otras cosas) que todos los archivos CSV pueden ser analizados por un analizador compatible con RFC 4180, y son válidos para UTF-8. Asegura que cuando los archivos se descargan, tienen Content-Type: text/csv; charset=utf-8 y Content-Disposition: attachment; filename="download.csv" .

Se ha planteado la preocupación de que el sistema podría utilizarse para transmitir malware o código malicioso.

¿Hay algún mecanismo conocido en el que un archivo CSV malintencionado pueda hacer que el destinatario ejecute el código? Si es así, ¿hay alguna otra validación que reduzca el riesgo planteado?

    
pregunta James_pic 12.07.2017 - 18:35
fuente

2 respuestas

7

Sí, hay algunos ejemplos de archivos CSV maliciosos que causan la ejecución aleatoria de "código". La gente elige abrir archivos CSV en MS Excel u Open Office o cualquier software que tenga capacidades de ejecución de macros.

Algunos ejemplos:

enlace enlace

Si su entorno no utiliza aplicaciones populares como MS Excel para abrir CSV, el riesgo se reduce significativamente. También buscaría la presencia de enlaces externos, potencialmente maliciosos en el CSV descargado, que podrían estar alojando descargas drive-by (por lo tanto, desearía evitar visitar estos enlaces).

    
respondido por el whoami 12.07.2017 - 18:46
fuente
1

Sí, puede contener comandos de sistema arbitrarios que se ejecutarán en la máquina donde está abriendo el archivo CSV. El software de su hoja de cálculo mostrará los valores CSV como los comandos inyectados y se ejecutará después de darle varias advertencias.

Ejemplo: cree un archivo CSV con las siguientes 2 líneas -

Nombre de usuario, correo electrónico, designación

= 2 + 5 + cmd | ' / C calc '! A0, a @ b.com, SSE

Guárdalo y ábrelo usando MS Excel. La calculadora se abrirá en su sistema Windows.

Para más información -

respondido por el Arka 18.12.2017 - 09:37
fuente

Lea otras preguntas en las etiquetas