¿Cómo pueden los archivos normales admitidos en el sistema operativo Windows ocultar un virus?
A veces, al abrir un archivo .txt , .jpg o .docx se ejecuta un virus. ¿Cómo es esto posible?¿Cómo pueden los archivos normales admitidos en el sistema operativo Windows ocultar un virus?
A veces, al abrir un archivo .txt , .jpg o .docx se ejecuta un virus. ¿Cómo es esto posible? Esto es posible gracias a la técnica OLE ( Vinculación e incrustación de objetos ). Está pensado para compartir información entre aplicaciones que se ejecutan en el sistema operativo Microsoft Windows. Principalmente, permite incrustar objetos en documentos.
La documentación oficial de Microsoft explica los beneficios de OLE . Pero como cualquier otro concepto, podría ser usado para una intención nefórica.
Tal vez la forma más fácil de explicar esto es la figura a continuación: al arrastrar y soltar el icono ejecutable del Bloc de notas en un archivo de Wordpad abierto y al guardar, el doble clic en el archivo de Wordpad conducirá a abrir la aplicación Bloc de notas. La siguiente figura explica mejor la idea:
Puedeguardareldocumentoen.txtformato.Severácomounarchivobenignonormal.Sinembargo,siverificasuspropiedades,encontraráquesuextensiónreales
A veces, al abrir un archivo .txt, .jpg o .docx se ejecuta un virus. ¿Por qué es esto posible?
Para agregar a la respuesta a una pregunta similar (¡Gracias por encontrarlo, Tcholas!):
Tienes razón al pensar que un virus en sí mismo es inofensivo. Un virus que se encuentra en un archivo en algún lugar no es una amenaza inmediata para su computadora. Pero cuando abres un archivo que contiene un virus, en realidad estás ejecutando un programa para abrir ese archivo.
Cuando le pide a su sistema operativo (por ejemplo, Windows) que abra un archivo, básicamente hace lo siguiente:
Comprueba qué tipo de archivo es. Esto puede ser leyendo la extensión (.txt, .doc) o leyendo algunos de los datos (los archivos zip tienen "PK" en los primeros bytes).
Conociendo el tipo de archivo, encuentra el "programa predeterminado" para abrirlo. Esto se almacena en una base de datos en algún lugar de su computadora.
Ejecute el programa y cargue el archivo de datos en él.
Entonces, al hacer doble clic en "mynotes.txt", Windows busca el programa predeterminado para los archivos .txt, probablemente "notepad.exe", y luego ejecuta "notepad.exe" y lo hace cargar "mynotes.txt" . Cuando haces doble clic en una imagen JPEG, cargará un visor de imágenes. Incluso algo tan simple como conectar un lápiz USB a su computadora portátil ejecutará algún código.
El diablo está en cualquier error / error que pueda tener este programa de carga. Los virus usan estos 'agujeros' para engañar al sistema operativo para que ejecute un código diferente y para modificar / subvertir parte de su computadora. Cuando los desarrolladores de software escuchan acerca de la vulnerabilidad, (con suerte) lo arreglan y emiten una actualización de seguridad.
Esto también significa que los virus tienden a dirigirse a programas específicos. Algo que funciona en MS Word probablemente no funcionará en OpenOffice. Lo mismo ocurre con Acrobat Reader y Evince, Chrome e Internet Explorer, Thunderbird y Outlook, etc.
tl; dr : cuando abres un archivo, realmente estás abriendo un programa que luego abre ese archivo. Es las vulnerabilidades en ese programa que permiten a los virus una oportunidad de hacer lo suyo.
Una posibilidad es explotar vulnerabilidades de desbordamiento. Al abrir la imagen, la falla del software "lanzará" el virus a secciones de memoria no autorizadas que pueden ser ejecutadas por el sistema.
Aquí tiene una descripción por parte de Symantec de una vulnerabilidad que explotó Internet Explorer en este sentido.
Además, esta pregunta se respondió en Stack Overflow .
Una posibilidad es Unicode shenanigans.
Unicode admite la visualización de muchos idiomas, incluidos los escritos de izquierda a derecha y los de derecha a izquierda. Una forma de hacerlo es usando caracteres especiales, incluyendo [U + 202E] (de izquierda a derecha) anular (LRO)).
Windows admite Unicode, incluidos los nombres de archivo.
Usted ve un archivo en su escritorio: evilexe.txt. Parece un archivo de texto, pero no lo es. Realmente se llama malvado [U + 202E] txt.exe.
Puede tener un conjunto de iconos para que se vea como un archivo de texto o JPEG , pero en realidad es un EXE archivo.
Desbordamiento de búfer.
Un desbordamiento de búfer es donde un programa solicita un tamaño de memoria pero luego escribe más datos en esa ubicación (desbordamiento) en la memoria al lado.
Por ejemplo: un programa como OpenOffice Writer (un procesador de textos como MS-WORD) (esto es pura ficción, por cierto) tiene un límite sobre el tamaño de un párrafo, digamos que tiene 65535 caracteres. Un pirata informático malicioso crea un documento con un párrafo de 65555 caracteres. El programa no tiene un control en su lugar para ver qué tan grande es un párrafo, simplemente lo carga en la memoria. En el 65536º carácter, en lugar de un carácter real, el pirata informático coloca el código de byte para una instrucción de salto a algún lugar más adelante en el documento del pirata informático o en cualquier lugar que el pirata informático sepa y controle. Cuando el programa lee accidentalmente la instrucción de salto, ese documento malicioso ahora controla el flujo de procesamiento de la aplicación. Es un virus y acabas de infectarte.
¡Hay muchos tipos diferentes de componentes que se pueden desbordar en una computadora, así que ten cuidado!
Si esto suena similar a la exploit Heartbleed es porque lo es.
Continuemos.
LaplataformadeMicrosoftOfficeesextremadamenteextensible.Lepermiteagregarcódigocompiladoeinterpretadoalprogramayalosdocumentos.Elcódigointerpretado,lamacro,tienemuchapotenciaparafinesdeproductividad,perohastahaceaproximadamenteunadécadatambiénseusabaengranmedidaparapropagarcódigosmaliciosos.Yanotanto,perosigueapareciendo.Amenudo,undocumentomaliciosotendríaunpocodecódigoqueescribiríaunarchivoensudiscoduroyluegoloejecutaríacuandoabrieraeldocumento.Porsupuesto,lamayoríadeestosmuchachosvinieronempaquetadosenunapresentacióndePowerPointconfotosdegatoslindosysimilares,porloquenofueunapérdidatotalcuandorecibió
Muchos paquetes de software más grandes generalmente son extensibles y también pueden sufrir vulnerabilidades similares.
A menudo, un pirata informático creará un archivo y presentará ese archivo como una imagen o como texto sin formato cuando no lo es. La responsabilidad del autor de un sitio web es escapar, encapsular y aislar cualquier información que puedan recibir de Internet. Es un trabajo duro.
Por lo tanto, un pirata informático puede colocar un archivo llamado "NotA.phpfile.jpg" en el formulario de un sitio web de PHP que se presenta como un archivo image/jpeg
, pero en realidad es un archivo application/php
. Ahora, cuando carga la URL a la que se cargó la imagen, es posible que haya alcanzado el control del sitio web.
Del mismo modo, el sitio web debe escapar al texto o podría sufrir inyección SQL y los datos pueden ser robados.
Veamosalgunastecnologías:
El corto OP pregunta por qué hacer clic en un .txt ejecuta un virus. Si un virus cambia el programa asociado para una extensión, su computadora puede iniciar mad_notepad_that_also_runs_a_virus.exe en lugar de notepad.exe al hacer clic en un archivo .txt.
Pero al hacer clic en i_love_you.txt.extension_like_that_will_obviously_make_this_computer_explode.exe, incluso si puede ocurrir un comportamiento muy ingenuo.