Luis Baigorria – Software Developer

Acquire Wisdom and Live with Passion

Proteger memorias USB de Software malicioso en sistemas Windows

with one comment

 

Saludos. Con la extensión de dispositivos externos como memorias flash, reproductores de música y discos externos, se ha disparado la cantidad de programas con códigos maliciosos y nocivos a ellos. Es impresionante ver como el desarrollo tecnológico cambia la moda en ciertos aspectos, si bien, en un momento el disquete constituyo el dispositivo de almacenamiento portátil más empleado para el intercambio de información, hoy en día, lo constituyen las memorias flash y los discos externos. De tal manera, muchos de los creadores de códigos malignos (virus) se han fijado en estos medios para la propagación y proliferación de sus virus. Existen muchas variantes y/o técnicas para garantizar la ejecución de códigos malignos por esta vía, siendo la más utilizada y empleada, el de crear un archivo (fichero) nombrado “autorun.inf” en el directorio raíz, el cual incluye comandos especiales que ordena al sistema operativo la ejecución de ejecutables almacenados (de forma oculta) en el dispositivo USB. Así mismo, existen algunas técnicas o mecanismos para proteger tu memoria flash y evitar su posible infección, algunas de ellas son:

  • Simular la existencia del fichero, creando un archivo o carpeta en tu memoria flash cuyo nombre sea “autorun.inf” y asignándole atributos de “Solo lectura”, “Oculto” y de “sistema”.
  • Deshabilitar la reproducción automática de dispositivos, realizando algunos ajustes al sistema.
  • Abriendo la unidad de tu memoria flash de manera tal que no sea posible ejecutar el "autorun.inf".

De todas éstas formas, utilizaremos la primera, obviamente realizando algunas modificaciones ya que muchos de los creadores de virus han implementado ciertos módulos de verificación del archivo y de su contenido, e incluso la capacidad de quitarle los atributos, no solo al archivo sino también a la carpeta que hayamos denominado “autorun.inf”. Sin embargo, existe un atributo muy especial, el Atributo de Dispositivo, el cual es usado en particiones de tipo FAT o FAT32 y conocido únicamente por el sistema operativo. En este caso, si podríamos asignar este atributo al archivo autorun.inf, podríamos indicarle al sistema operativo que este archivo sería un dispositivo y por lo tanto no podría ser modificado ni borrado por ningún proceso usando la vía normal o común de escritura de archivos.

Puedes revisar más a fondo la estructura del sistema de ficheros FAT32.

Para nuestro propósito utilizaremos el Editor Hexadecimal: WinHex.

Bien, sin tanto rodeo, procedamos a preparar nuestra memoria flash para evitar su infección.

Nota: Antes de continuar con el tutorial, se recomienda tomar todos los recaudos necesarios, más aún, si no se tiene conocimientos sobre el tema.
 

1-. Lo primero que tenemos que hacer es vaciar nuestra memoria flash, seguidamente formateamos usando el sistema de archivos FAT32.

 

2.- Crear el archivo “autorun.inf” en la unidad asignada a la memoria flash. En mi caso es la unidad J: Para ello, utilizamos algún editor de texto, en este caso el Notepad.

 

 

3.-Abrimos el editor Hexadecimal. En la opción “Herramientas” (Tools), seleccionamos “Abrir Disco” (Open Disk), abrimos la unidad asignada a nuestra memoria USB.

 

Una vez abierto nuestra Unidad, vemos el contenido tal y como lo ve el Sistema Operativo. Vemos las estructuras del Boot Sector (Sector de Arranque), FAT1 y FAT2 (Tabla de asignación de archivos y copia), el Root Directory (Directorio Raíz donde se almacenan los nombres de los archivos, sus atributos, su tamaño y ubicación). Nosotros vamos a trabajar directamente sobre el Directorio Raíz, pues ubicaremos la entrada correspondiente al archivo AUTORUN.INF.

Al ubicarnos en el Directorio Raíz con nuestro editor hexadecimal al ubicar el byte 11 (Offset B), en mi caso, vemos que tiene el atributo 0×20, que indica que es un archivo de almacenamiento.

 

Bien, ubicado el valor, procederemos a cambiarlo por el valor 0x40, que es el valor de ATRIBUTO DE DISPOSITIVO, el cual se lo estaremos asignando a nuestro archivo autorun.inf

 

Esto evitara que cualquier software malicioso, incluso nosotros mismos podamos modificar, editar o eliminar el archivo autorun.inf. Por último, guardamos los cambios realizados.

 

Nota: Si quieres que el archivo autorun.inf además de tener el atributo de dispositivo, éste pueda permanecer oculto, entonces, cambia el valor 0x40, por el valor 0x42, esto ocultará el fichero.
 

Una vez efectuado los cambios en el fichero, procedamos a realizar algunas verificaciones, como editar, modificar, eliminar, cambiar el nombre, la extensión del archivo. ¿Qué sucede? Nada verdad. La idea es que ningún software malicioso pueda copiar su archivo auntorun.inf en nuestro disco y evitar que se ejecuten código malicioso. Por el momento, esta técnica es empleada en sistemas de archivos de tipo FAT y FAT32 (actualmente usadas por las memorias flash), y no así por particiones NTFS.

Saludos,

Luis Alberto 🙂

..

 

Written by Luis Alberto

14/04/2009 a 3:13 PM

Publicado en Windows

Una respuesta

Subscribe to comments with RSS.

  1. Tengo una duda.

    Si yo quiero que mi autorun.inf ejecute un programa… ¿se podría hacer utilizando esta herramienta?

    Verás, tengo una presentación en flash y una carpeta con páginas. Se va a distribuir a una serie de personas que por motivos que no vienen al caso, se quiere que sea lo más fácil que abran el flash.

    Desde el el autorun:

    [autorun]
    label=flash
    icon=flash.exe
    open=flash.exe
    action=Abrir Flash

    Y así me abre el menú de windows para darle a aceptar y abrir el flash.

    Pero en mi equipo todo funciona correcto, pero los equipos de alrededor están infestados de virus y quiero impedir que entren en el usb. Con tu solución evito que entren, pero no me sale el menú para iniciar la aplicación.

    Muchas gracias

    Me gusta

    José Luis

    17/04/2012 at 12:39 PM


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: