Un virus de archivo ( ing. File infector ) es un virus informático que utiliza el sistema de archivos para su reproducción , infiltrándose en los archivos ejecutables de casi cualquier sistema operativo .
Los archivos binarios ejecutables ( EXE , COM ), los archivos de biblioteca dinámica ( DLL ), los controladores ( SYS ), los archivos por lotes ( BAT , CMD ) y similares pueden ser objeto de un ataque de virus.
Al infectar un archivo, un virus puede infiltrarse en su principio, final o medio. La forma más común de infectar programas COM de MS-DOS es inyectar al final de un archivo. En este caso, el código principal se agrega al final del archivo y el comando para saltar al cuerpo del virus se escribe al principio.
Es típico que los virus que infectan los programas PE para Windows coloquen el cuerpo del virus en una sección adicional, en "colas" vacías de secciones, o en el espacio no utilizado entre el encabezado y las secciones. La longitud total del archivo puede permanecer igual. Algunos virus de archivo utilizan técnicas similares para infectar programas para sistemas operativos de la familia UNIX (por ejemplo, programas ELF para Linux ).
Para ocultar su presencia en el sistema, un virus de archivo puede guardar preliminarmente la fecha y la hora de la última modificación y los valores de los atributos del archivo infectado, restaurando estos datos después de la infección.
Una vez que el virus ha ganado el control, realiza las siguientes acciones:
En este caso, todas las acciones del virus, por regla general, son invisibles para el usuario del programa.
Distinguir entre virus de archivos residentes y no residentes. El primero carga una parte residente en la RAM, que luego puede rastrear los archivos abiertos por el usuario, infectándolos. Los virus no residentes, después de haber recibido el control, buscan archivos para infectar en los directorios actual y (o) raíz , o en los directorios especificados en la variable de entorno del sistema PATH . En Windows, también son posibles los virus "semi-residentes", que son subprocesos paralelos de un programa infectado.
Además, los virus de archivo incluyen virus de sobreescritura que, cuando se infectan, se escriben sobre el programa y, por lo tanto, lo dañan de forma irreversible. Otra variedad son los virus satelitales (compañeros), que son un “duplicado” del programa infectado que se ejecuta en su lugar.
Como regla general, para los programas infectados con virus de archivos, es posible "curarlos" con la ayuda de antivirus , es decir, restaurar su estado original. Los antivirus que tienen esta capacidad se denominan "fagos" (si pueden "curar" un tipo de virus) o "polífagos" (si son varios). Pero los programas destruidos por la sobrescritura de virus no se pueden "curar".
Las políticas de control de acceso configuradas correctamente , que son típicas de los sistemas operativos modernos, pueden prevenir significativamente la propagación de virus de archivos a través de directorios de computadoras.
La creación y distribución de virus de archivos fue típica de la era MS-DOS y los primeros años de Windows de 32 bits, es decir, hasta aproximadamente el año 2000. Los autores de este tipo de virus no eran profesionales: escolares, estudiantes, programadores novatos. Motivos: la curiosidad, el deseo de autoafirmación, etc. Pero en el nuevo siglo, hacia el 2005, el cyber underground dio paso al crimen. Al no ser un medio muy rápido y confiable de entregar código malicioso al usuario final, los virus de archivo no han atraído el interés de las nuevas generaciones de creadores de virus y han dejado de crearse en gran medida (las raras excepciones son Sality , Virut y algunos otros).
Según los datos promedio de las empresas antivirus, se han creado alrededor de 20 000 virus de archivos y familias de virus para MS-DOS , alrededor de 1000 para Windows (de los cuales solo unas pocas docenas desde 2005), alrededor de 100 para Linux y para otros sistemas operativos. sistemas, hay pocos ejemplos de virus de archivo. .