Articulo de referencia

AutoRun

AutoRun y ​​su función complementaria AutoPlay son componentes del sistema operativo Microsoft Windows que dictan las acciones que realiza el sistema cuando se monta una unidad ...

AutoRun y ​​su función complementaria AutoPlay son componentes del sistema operativo Microsoft Windows que dictan las acciones que realiza el sistema cuando se monta una unidad .

La función AutoRun se introdujo en Windows 95 para facilitar la instalación de aplicaciones a usuarios sin conocimientos técnicos y reducir el coste de las llamadas de soporte técnico. Al insertar un CD-ROM configurado correctamente en la unidad, Windows detecta su llegada y busca en su contenido un archivo especial con instrucciones. En el caso de un CD con software, estas instrucciones suelen iniciar la instalación del programa desde el CD-ROM al disco duro. Para maximizar las probabilidades de éxito de la instalación, AutoRun también se activa al acceder a la unidad ( haciendo doble clic ) en el Explorador de Windows (o "Mi PC").

Hasta la llegada de Windows XP , los términos AutoRun y ​​AutoPlay se usaban indistintamente; los desarrolladores solían usar el primero y los usuarios finales el segundo. Esta tendencia se refleja en la configuración de directivas de Windows denominada AutoPlay, que modifica las entradas del Registro de Windows llamadas AutoRun, y en el autorun.infarchivo que hace que se añada "AutoPlay" a los menús contextuales de las unidades . La terminología tenía poca importancia hasta la llegada de Windows XP y la incorporación de una nueva función para ayudar a los usuarios a seleccionar las acciones adecuadas cuando se detectaban nuevos medios y dispositivos. Esta nueva función se denominó AutoPlay y se creó una diferenciación entre ambos términos. [ 1 ]

AutoRun, una función del Explorador de Windows (en realidad de la DLL shell32 ) introducida en Windows 95, permite que los medios y dispositivos inicien programas mediante comandos que figuran en un archivo llamado autorun.inf, almacenado en el directorio raíz del medio.

Utilizadas principalmente en CD-ROM de instalación, las aplicaciones que se llaman suelen ser instaladores de aplicaciones. El archivo autorun.inf también puede especificar un icono que representará visualmente el dispositivo en el Explorador junto con otras funciones avanzadas. [ 1 ]

Los términos AutoRun y ​​AutoPlay suelen usarse indistintamente al referirse a la acción inicial, es decir, la que detecta y comienza a leer los volúmenes descubiertos . AutoRun se sitúa entre AutoPlay y el servicio de detección de hardware de Shell, lo que puede facilitar la comprensión de la terminología. Sin embargo, para evitar confusiones, en este artículo se utiliza el término AutoRun para referirse a la acción inicial.

Reproducción automática

Reproducción automática en Windows 8 y versiones posteriores
Reproducción automática en Windows Vista

La función AutoPlay, introducida en Windows XP, examina los dispositivos y medios extraíbles y, en función del contenido (como imágenes, música o archivos de vídeo), inicia la aplicación adecuada para reproducirlo o mostrarlo. [ 1 ] Si está disponible, la configuración del archivo autorun.inf puede ampliar las opciones que se muestran al usuario.

La función AutoPlay se basa en un conjunto de aplicaciones controladoras registradas en el sistema AutoPlay. Cada tipo de contenido multimedia (imágenes, música, vídeo) puede tener un conjunto de controladores registrados que se encargan de reproducir o mostrar dicho contenido.

Cada dispositivo de hardware puede tener una acción predeterminada que se ejecute al detectar un tipo de medio en particular, o bien el cuadro de diálogo de reproducción automática puede indicar al usuario qué acción debe realizar.

Activación de AutoRun

La secuencia de AutoRun comienza con la detección inicial de un nuevo dispositivo o medio de almacenamiento. A continuación, se notifica a las partes interesadas, principalmente al Explorador de Windows. Tras comprobar ciertas configuraciones del Registro para determinar si AutoRun puede continuar, se analiza el archivo opcional autorun.inf y se realizan las acciones necesarias.

La secuencia inicial se gestiona de forma muy similar en todas las versiones de Windows desde Windows 95. Sin embargo, la manera en que se lee y se procesa el archivo autorun.inf, así como el nivel de integración de AutoRun con AutoPlay, ha cambiado significativamente desde la introducción de AutoPlay en Windows XP hasta su funcionamiento actual en Windows 7. En Windows 10 , Microsoft ha añadido la opción de habilitar AutoRun en su configuración. Los usuarios no solo pueden activarlo, sino que también pueden seleccionar dispositivos externos específicos para la reproducción automática.

Inicio y notificación

Cuando un dispositivo con controladores compatibles con AutoRun recibe un nuevo medio, se produce un evento de "Notificación de cambio de medio". El sistema operativo Windows notifica entonces a las aplicaciones interesadas que se ha producido un cambio en el dispositivo. El método de notificación utilizado puede variar según el tipo de dispositivo.

Si el dispositivo modificado es un volumen (como un CD) o un puerto (como un puerto serie), Windows envía una WM_DEVICECHANGEnotificación a todas las ventanas de nivel superior. [ 2 ] [ 3 ] Windows denomina a esto una notificación "básica". Una ventana de nivel superior es aquella que desciende del escritorio.

Sin embargo, si el dispositivo cambiado no es de uno de estos tipos, una aplicación puede usar la función RegisterDeviceNotification[ 4 ] para registrarse y recibir notificaciones del dispositivo.

Un artículo del sitio web de CodeProject, "Detección de inserción y/o extracción de hardware" , con aclaraciones de un blog de Doran Holan, resulta de particular interés técnico en este caso.

Los dispositivos que no son unidades de disco son aquellos que no aparecen como letras de unidad en "Mi PC". AutoRun no los gestiona; cualquier acción que se realice sobre estos dispositivos la lleva a cabo el software específico del dispositivo o AutoPlay. Consulte AutoPlay#Dispositivos que no son unidades de disco .

Cuando Explorer recibe una notificación de un cambio de volumen , realiza una serie de acciones: [ 5 ] [ 6 ]

  1. Comprueba si la función de ejecución automática está desactivada en el Registro. Si la ejecución automática está desactivada para esa unidad o tipo de unidad, el Explorador no continúa. Se han detectado errores en esta área.
  2. Comprueba que el directorio raíz del medio insertado contenga un archivo autorun.inf, que podría leerse. Véase más abajo .
  3. Envía un QueryCancelAutoPlaymensaje a la ventana en primer plano. Una aplicación que haya registrado su interés en recibir este mensaje RegisterWindowMessagepuede responder para detener la ejecución automática (y, por lo tanto, la reproducción automática) en este punto. Cualquier aplicación, en primer plano o no, también puede recibir notificaciones mediante la interfaz IQueryCancelAutoPlayCOM [ 7 ] disponible en Windows XP y versiones posteriores.
  4. Modifica el comportamiento de los clics dobles y los menús contextuales. Cuando un usuario hace doble clic en el icono de la unidad en el Explorador de archivos o hace clic con el botón derecho para abrir un menú contextual, lo que sucede es totalmente programable mediante la configuración del archivo autorun.inf.
  5. Agrega un icono controlable mediante autorun.inf y un texto descriptivo al icono de la unidad.
  6. Comprueba si se mantiene pulsada la tecla. Si es así, Windows Vista (y versiones posteriores de Windows) abrirá el cuadro de diálogo de reproducción automática, independientemente de la configuración. [ 8 ] Las versiones anteriores de Windows no continuarán con el proceso. [ 6 ]Shift
  7. Finalmente, si se ha llegado a este punto, se puede:
    • No toma ninguna otra medida.
    • ejecuta la "tarea AutoRun", la aplicación especificada opcionalmente en las claves openo en la sección [ autorun ] de un archivo autorun.inf .shellexecute
    • Invoca la reproducción automática.
    La opción que se elija dependerá de la versión de Windows que se esté utilizando, de las instrucciones del archivo autorun.inf (si está disponible) y del tipo de medio detectado.

Cambiar el comportamiento

Antes de la reproducción automática

En versiones de Windows anteriores a Windows XP, se leerá un archivo autorun.inf en cualquier tipo de unidad y se seguirán sus instrucciones. La tarea AutoRun, si se especifica, se ejecuta inmediatamente sin interacción del usuario. [ 9 ] Esto incluye los tipos de unidad DRIVE_REMOVABLE, DRIVE_FIXED y DRIVE_REMOTE .

AutoRun funcionará con unidades de red (el tipo de unidad DRIVE_REMOTE) que estén asignadas a una letra de unidad. AutoRun también funcionará con unidades de disquete que cuenten con controladores compatibles con AutoRun. [ 6 ]

La configuración predeterminada del Registro en las versiones de Windows anteriores a Windows XP (consulte NoDriveTypeAutoRun ) desactiva las unidades remotas y extraíbles para la iniciación de AutoRun, dejando los tipos de unidades fijas y de CD-ROM activos de forma predeterminada.

Presentamos la reproducción automática.

Con la introducción de la Reproducción automática en Windows XP, la acción de la etapa final (etapa 7 anterior) para algunos tipos de unidades cambió de ejecutar una aplicación a invocar la Reproducción automática. A partir de Windows Vista, el sistema de Reproducción automática está integrado en todos los aspectos del manejo de medios y no existe una ejecución automática de la tarea de Ejecución automática.

La configuración predeterminada del Registro agrega las unidades extraíbles a las que iniciaron la ejecución automática. En Windows XP y versiones posteriores, excepto en Windows Server 2003, solo los tipos de unidad Desconocido y Remoto no están activos para la ejecución automática.

El manejo del archivo autorun.inf varía significativamente entre las distintas versiones de Windows. Encontrará más detalles en el artículo sobre autorun.inf . En Windows 7, solo las unidades de tipo DRIVE_CDROM pueden especificar una tarea de ejecución automática, modificar el comportamiento al hacer doble clic o cambiar los menús contextuales.

Configuración del registro

AutoRun consulta los valores del Registro de Windows para decidir si debe iniciar acciones para una unidad o tipo de unidad en particular. Estos valores se pueden cambiar mediante varios métodos, uno de los cuales es mediante la Directiva de grupo .

Los nombres de entrada del Registro relevantes principales son NoDriveTypeAutoRuny NoDriveAutoRun. Estos existen tanto en configuraciones por máquina como por usuario, y su ubicación y prioridad en el Registro se describen con más detalle a continuación.

Tipos de accionamiento

Los tipos de unidades se distinguen por el nombre del tipo de la siguiente manera: [ 10 ]

Terminología del registro

El Registro de Windows es una base de datos jerárquica que almacena la configuración y las opciones del sistema operativo. La terminología puede resultar algo confusa, por lo que se resume brevemente aquí.

Una clave del Registro es similar a una carpeta que, además de valores, cada clave puede contener subclaves que a su vez pueden contener subclaves, y así sucesivamente.

Un valor del Registro consta de un par nombre-dato. La documentación de Microsoft suele usar el término «entrada» como equivalente. También usa «valor» en lugar de «dato» cuando resulta obvio a qué se refiere. Para evitar confusiones, en este artículo siempre se utiliza el término «entrada» al referirse al par nombre-dato.

Dos claves del Registro a las que se hace referencia con mucha frecuencia son HKEY_LOCAL_MACHINEla que contiene la configuración por máquina y HKEY_CURRENT_USERla que contiene la configuración para el usuario que ha iniciado sesión actualmente. Estas casi siempre se abrevian como HKLMy HKCUrespectivamente. Puede haber muchos usuarios de una máquina; su configuración se almacena en HKEY_USERS, HKCUque en realidad es solo un enlace al lugar apropiado en HKEY_USERS.

Cambiar la configuración del Registro

La configuración del Registro se puede cambiar directamente mediante la regeditherramienta gráfica o la reg.exeutilidad de línea de comandos. También se puede guardar en un archivo de texto [ 11 ] con la extensión .reg. Por ejemplo, " mychanges.reg". Al hacer doble clic en el archivo, la configuración se guarda en el Registro, siempre que los permisos lo permitan.

Se pueden modificar indirectamente mediante la Directiva de grupo, aplicada localmente a un único equipo GPEdit.msco a un dominio gpmc.msc.

Puede que sea necesario cerrar la sesión o reiniciar el ordenador para que los cambios realizados en el Registro surtan efecto.

Orden de evaluación

Las entradas NoDriveAutoRundel NoDriveTypeAutoRunRegistro pueden existir en dos ubicaciones: la configuración por usuario (en HKEY_CURRENT_USER) y la configuración por máquina (en HKEY_LOCAL_MACHINE). Si una entrada aparece en HKEY_LOCAL_MACHINE, cualquier entrada correspondiente en HKEY_CURRENT_USER se ignora por completo. Los valores de datos no se combinan de ninguna manera.

Al decidir si se activa la función AutoRun, se consultan ambas entradas del Registro. Si alguno de los valores indica que se debe deshabilitar una unidad, entonces se deshabilita AutoRun para esa unidad NoDriveAutoRun.NoDriveTypeAutoRun

Así, en el siguiente ejemplo:

El valor de datos tomado para NoDriveAutoRunes 0x08, lo que desactiva la unidad D, y el valor de datos tomado para NoDriveTypeAutoRunes 0x95, lo que desactiva las unidades extraíbles y de red. La entrada por usuario NoDriveAutoRunnunca se utiliza.

NoDriveTypeAutoRun

Esta entrada del Registro desactiva o activa la función de AutoRun en todas las unidades del tipo especificado. [ 12 ] Refleja la configuración de la Directiva de grupo de Autoplay correspondiente. Los datos válidos van de 0x00 a 0xFF en notación hexadecimal . Si la entrada no está presente, el valor de datos predeterminado es 0x95 o 0x91, según la versión de Windows utilizada. Una entrada presente en HKLM anula cualquier entrada presente en HKCU.

Los datos de entrada son un valor de mapa de bits, donde un bit establecido en 1 desactiva la ejecución automática en un tipo de unidad específico. La configuración de bits para cada tipo de unidad se muestra a continuación:

Configuración bit a bit del tipo de unidad
Configuración bit a bit del tipo de unidad

Tenga en cuenta que el bit número 1 no se utiliza y que el tipo "Desconocido" se representa dos veces. Si se establecen todos los bits a 1, se obtendría un valor hexadecimal de 0xFF, decimal 255, y se deshabilitaría la función AutoRun en todos los tipos de unidades.

La configuración predeterminada para esta entrada depende de la versión de Windows que se esté utilizando: [ 9 ] [ 13 ]

NoDriveAutoRun

Esta entrada del Registro habilita o deshabilita la función de ejecución automática en unidades individuales. [ 14 ] No está asociada a una directiva de grupo y no existe de forma predeterminada. El valor de los datos se considera 0 si la entrada no está presente. Una entrada presente en HKLM anula cualquier entrada presente en HKCU.

Los datos son un valor de mapa de bits de 32 bits (DWORD), de los cuales los 26 bits inferiores se utilizan para representar cada una de las 26 letras de unidad, de la A a la Z. Por lo tanto, el rango de datos válido es de 0x0 a 0x03FFFFFF. El bit menos significativo (el bit más a la derecha) representa la unidad A, y el bit número 26 desde la derecha representa la unidad Z.

Un bit configurado en 1 desactiva la función AutoRun en una unidad específica. Por ejemplo, si el valor de datos se establece en 0x8 (1000 binario), AutoRun se desactiva en la unidad D.

Política de grupo

El cuadro de diálogo de configuración de directivas de grupo en Windows XP muestra la opción para desactivar la reproducción automática.

Las únicas configuraciones de directiva de grupo disponibles para AutoRun afectan a las NoDriveTypeAutoRunentradas del Registro. La directiva está disponible por máquina o por usuario, según la ubicación de la entrada del Registro en HKLM o HKCU. [ 12 ] [ 14 ] Como se describió anteriormente , una configuración de directiva por máquina hará que se ignore la configuración de directiva por usuario.

Cuando una directiva está habilitada , la Directiva de grupo agrega la NoDriveTypeAutoRunentrada al Registro. Si la directiva está deshabilitada o configurada como "No configurada" , la Directiva de grupo elimina esta entrada del Registro para la directiva de máquina (en HKLM) y restablece el valor predeterminado del sistema para la directiva de usuario (en HKCU). Los valores predeterminados del sistema pueden entonces surtir efecto como se describe en la sección "NoDriveTypeAutoRun" .

Los nombres, ubicaciones y configuraciones posibles de las directivas varían ligeramente entre las versiones de Windows. La lista de configuraciones es relativamente corta y siempre se suma a la configuración predeterminada del sistema. Por lo tanto, en Windows 2000, al habilitar la directiva "Deshabilitar reproducción automática" y configurarla en "Unidades de CD-ROM", se deshabilita la ejecución automática (a diferencia de la reproducción automática) para las unidades de CD-ROM y DVD, las unidades extraíbles, las unidades de red y las unidades de tipo desconocido.

Esta configuración no permite habilitar la ejecución automática en unidades donde está deshabilitada de forma predeterminada ni deshabilitarla en unidades que no aparecen en la lista. Para habilitar o deshabilitar unidades o tipos de unidades específicos, es necesario editar el Registro manualmente.

Windows Server 2003, Windows XP y Windows 2000

La ubicación de la política por máquina es:

Directiva de grupo > Configuración del equipo > Plantillas administrativas > Sistema

La ubicación de la política por usuario es:

Directiva de grupo > Configuración de usuario > Plantillas administrativas > Sistema

La directiva correspondiente es "Desactivar la reproducción automática". En Windows 2000, la directiva se llama "Deshabilitar la reproducción automática".

Una vez habilitada la política, se puede configurar en "Todas las unidades" o "Unidades de CD-ROM". Esta última configuración agrega las unidades de CD-ROM a la lista existente de tipos de unidades deshabilitadas, como se describió anteriormente.

Windows Vista, Windows Server 2008

La ubicación de la política por máquina es: [ 15 ]

Configuración del equipo > Plantillas administrativas > Componentes de Windows > Directivas de reproducción automática

La ubicación de la política por usuario es:

Configuración de usuario > Plantillas administrativas > Componentes de Windows > Directivas de reproducción automática

La política correspondiente es "Desactivar la reproducción automática" y se puede configurar para unidades de CD-ROM, DVD-ROM y unidades extraíbles, o para todas las unidades.

Se agregaron dos políticas relacionadas en Vista y Server 2008: [ 16 ]

Comportamiento predeterminado para AutoRun
Establece el comportamiento predeterminado para los comandos AutoRun que se encuentran en los archivos autorun.inf.
Antes de Windows Vista, cuando se insertaba un medio que contenía un archivo autorun.inf que especificaba una tarea de AutoRun, la acción predeterminada era ejecutar automáticamente el programa sin intervención del usuario. A partir de Windows Vista, el comportamiento predeterminado es invocar la reproducción automática y mostrar la tarea de AutoRun como una de las opciones del cuadro de diálogo. Este comportamiento también se mantiene cuando esta directiva no está configurada o está deshabilitada.
Si esta política está habilitada, el comportamiento puede cambiarse a:
  • Desactive completamente los comandos autorun.inf o
  • Ejecutar automáticamente el comando autorun.inf como en versiones anteriores de Windows.
No marques la casilla "Hacer siempre esto"
Si esta política está habilitada, la casilla de verificación "Hacer siempre esto..." en el cuadro de diálogo de reproducción automática no estará marcada de forma predeterminada cuando se muestre el cuadro de diálogo.

Windows 7, Windows Server 2008 R2

En estas versiones de Windows, la capacidad de un archivo autorun.inf para configurar una tarea de ejecución automática, modificar el comportamiento de doble clic o cambiar los menús contextuales está restringida a unidades de tipo DRIVE_CDROM. No hay configuraciones de directiva que anulen este comportamiento. Las ubicaciones y configuraciones de las directivas son las mismas que en Windows Vista y Windows Server 2008, con la adición de: [ 16 ]

Desactivar la reproducción automática para dispositivos sin control de volumen.
Si esta política está habilitada, la reproducción automática se desactivará para los dispositivos que no sean de control de volumen .

Modificación del comportamiento de AutoRun

Al pulsar la tecla Mayús

Si se mantiene pulsada la tecla en un punto determinado de la secuencia de ejecución, Windows Vista abre el cuadro de diálogo de AutoPlay independientemente de cualquier configuración de AutoPlay que indique lo contrario. [ 8 ] Las versiones anteriores de Windows no ejecutan la tarea AutoRun. Es fundamental utilizar la tecla Mayús izquierda para este propósito, ya que mantener pulsada la tecla Mayús derecha durante ocho segundos activa FilterKeys. [ 6 ]⇧ Shift

Dado que hay que mantener pulsada la tecla Mayús hasta que Windows la detecte, puede pasar bastante tiempo antes de que surta efecto. El tiempo necesario depende principalmente del tiempo que tarda en reconocer el nuevo hardware y del tiempo que tardan las unidades de CD-ROM en arrancar. No es seguro confiar en este método.

Notificación de inserción automática

Ciertos eventos de notificación de cambio de medio pueden suprimirse modificando determinadas entradas del Registro. "Notificación de cambio de medio" es el término genérico; para las unidades de CD-ROM, el término específico es "Notificación de inserción automática".

Para las unidades de CD-ROM, cambiar el valor de esta entrada del Registro a 0 deshabilitará la Notificación de inserción automática solo para las unidades de CD-ROM. [ 17 ] Será necesario reiniciar Windows.

En Windows 95/98/ME, esta configuración se puede cambiar en el Administrador de dispositivos, al que se accede desde el icono Sistema en el Panel de control.

Configuración de ejecución automática para la unidad de CD-ROM en Windows 98

Aunque la entrada del Registro se llama "AutoRun", solo suprime el mensaje MCN. El mensaje MCN sí activa la ejecución automática, pero también le indica al explorador de archivos que actualice sus vistas y contenido.

Por lo tanto, como efecto secundario, esto desactiva la función de ejecución automática para las unidades de CD-ROM. Sin embargo, el Explorador ya no actualizará su vista al insertar un nuevo CD; mostrará el contenido del CD anterior hasta que se pulse el botón correspondiente o se seleccione Ver/Actualizar en el menú del Explorador. Esto podría generar mucha confusión entre los usuarios.F5

Por este motivo, no se debe deshabilitar el mensaje de notificación de cambio de medio a menos que no haya absolutamente ninguna alternativa; la función AutoRun se puede deshabilitar para unidades individuales mediante la Directiva de grupo o el Registro.

Esta entrada se utiliza para suprimir el mensaje MCN para un tipo específico de unidad de CD-ROM, [ 18 ] principalmente cambiadores de CD-ROM. Los datos son un conjunto de identificadores de dispositivo que coinciden con los identificadores que los propios dispositivos informan al sistema.

El valor predeterminado para esta entrada consiste en productos que Microsoft ha identificado en sus pruebas como incompatibles con la función AutoRun. Esta entrada no debe modificarse.

Política de edición del grupo

La función AutoRun puede desactivarse en unidades y tipos de unidades específicos mediante los métodos descritos en la sección de Directiva de grupo . Sin embargo, el Editor de directivas de grupo no está disponible en las versiones Home de Windows XP [ 19 ] y no ofrece opciones de selección de unidades más precisas.

Sin embargo, la Directiva de grupo sería el método aceptado para deshabilitar la ejecución automática en todo un dominio de Windows.

Archivos de registro

Se puede crear un archivo de configuración del Registro que, al ejecutarse, realice los cambios deseados en el Registro.

En el ejemplo anterior, la función AutoRun estaría deshabilitada para todas las unidades y para todos los usuarios. Este ejemplo debería ejecutarse como administrador y sería necesario reiniciar el equipo para que la configuración surta efecto por completo.

Mapeo de archivos de inicialización

Windows Vista y versiones posteriores de Windows cuentan con una configuración de directiva, "Comportamiento predeterminado para AutoRun", que permite impedir la lectura del archivo autorun.inf en cualquier volumen. Esto evita ciertos escenarios en los que el malware aprovecha la funcionalidad de autorun.inf para infectar un equipo. Las versiones anteriores de Windows no disponen de esta configuración de directiva, pero el uso de la asignación de archivos de inicialización constituye una solución eficaz. [ 20 ] [ 21 ]

Como el archivo autorun.inf es un archivo INI estándar de Windows , Windows utiliza las llamadas a la API correspondientes para obtener su configuración. Estas llamadas a la API se pueden redirigir mediante el método de asignación de archivos INI. El siguiente archivo del Registro ilustra la solución alternativa, donde toda la configuración de autorun.inf se obtiene únicamente de la HKEY_LOCAL_MACHINE\Software\DoesNotExistclave del Registro:

Como esta clave no existe, es como si el archivo autorun.inf no contuviera información de configuración. Esto se aplica a cualquier archivo autorun.inf, independientemente de su ubicación o del disco duro.

Dado que tanto la configuración de la política como esta solución alternativa desactivan la ejecución automática, la instalación de software desde un CD o DVD de instalación con ejecución automática ya no será automática. Será necesario consultar el archivo autorun.inf del CD y ejecutar manualmente el programa de instalación correspondiente.

Problemas y seguridad

Microsoft reconoció que "Debido a que el código puede ejecutarse sin el conocimiento o consentimiento del usuario, los usuarios podrían querer deshabilitar esta función por motivos de seguridad" y lanzó una "corrección" para deshabilitar AutoRun para los usuarios que no se sienten cómodos editando el registro. [ 13 ]

El error de desactivación de AutoRun

Desde Windows 2000 hasta Windows Server 2008, las entradas del Registro relevantes para AutoRun no se manejaban correctamente, lo que generaba una vulnerabilidad de seguridad. [ 22 ] Windows 95 y Windows 98 no se vieron afectados.

Cuando la función AutoRun está desactivada, Windows no debería avanzar más en la secuencia de activación que la comprobación del Registro. Sin embargo, analiza cualquier archivo autorun.inf que encuentre y realiza todas las acciones excepto la acción final de invocar la reproducción automática o ejecutar una aplicación.

Esto deja al usuario vulnerable a ataques de malware que utiliza el archivo autorun.inf para modificar el comportamiento del doble clic y del menú contextual. Hacer doble clic en el icono de la unidad infectará el equipo. Hacer clic con el botón derecho y seleccionar las opciones "Explorar" o "Abrir" del menú contextual no es una solución, ya que estas opciones pueden ser manipuladas por las entradas correspondientes del archivo autorun.inf.

Este error se corrigió en varias actualizaciones de seguridad, detalladas en el artículo 967715 de la Base de conocimientos de Microsoft . [ 13 ]

Otros temas

  • Si se agrega el equipo a un dominio de Active Directory, el NoDriveTypeAutoRunvalor puede restablecerse a un valor predeterminado. [ 23 ] Esto se debe a que la configuración de la directiva de grupo del dominio entra en vigor. Esto no es un error.
  • Algunos programas pueden modificar deliberadamente la configuración del Registro de AutoRun. Se sabe que las versiones antiguas de software de grabación de CD, como Roxio, modificaban la configuración de esta manera. [ 24 ]
  • Si la opción de seguridad de Directiva de grupo "Restringir el acceso al CD-ROM solo al usuario que ha iniciado sesión localmente" en:
    Configuración del equipo\Configuración de Windows\Configuración de seguridad\Directivas locales\Opciones de seguridad

    Si está activado (habilitado), entonces es posible que AutoRun no funcione. [ 24 ]

    Los instaladores de Windows también fallarán porque se denegará el acceso de "Sistema local" al CD-ROM. [ 25 ]

    Esta configuración de directiva de grupo refleja el valor de la entrada del registro:

    y debe establecerse en 0.
  • RealPlayer 10 interfiere con la funcionalidad de AutoPlay hasta el punto de que puede parecer que AutoRun o AutoPlay no funcionan en absoluto. [ 26 ] [ 27 ] [ 28 ]

Vectores de ataque

La función de ejecución automática se ha utilizado como vector de malware desde hace tiempo. Antes de Windows Vista, la acción predeterminada de una unidad de CD-ROM era seguir las instrucciones del archivo autorun.inf sin avisos ni advertencias. Esto convierte a los CD-ROM maliciosos en un posible vector de infección.

En la misma categoría se incluyen los CD-ROM de contenido mixto. Un CD de audio, que el usuario no esperaría que contuviera ningún software, puede incluir una sección de datos con un archivo autorun.inf. Algunas compañías, como Sony BMG , han utilizado este método para instalar malware que intenta proteger las pistas de audio contra la copia.

Las unidades flash compatibles con U3 , al emular una unidad de CD-ROM, también pueden provocar que Windows ejecute comandos del archivo autorun.inf que se encuentra en el CD-ROM emulado.

Dispositivos como el módem HSDPA Huawei E220 utilizan este método para instalar automáticamente los controladores del propio módem. Sin embargo, conectar una unidad flash de origen desconocido es una práctica imprudente. Herramientas como USB Switchblade han simplificado enormemente los ataques a unidades flash U3. Dada la facilidad para escribir scripts de ataque, el software antivirus puede resultar ineficaz para prevenir el robo de datos y contraseñas.

Captura de pantalla del gusano Conficker en acción en Windows 7

Con una unidad flash estándar, se pueden emplear ataques de ingeniería social para incitar al usuario a hacer clic en el elemento correspondiente en el cuadro de diálogo de reproducción automática. Una atractiva secuencia de comandos que prometa juegos gratuitos o pornografía atraería a muchos usuarios a la trampa. En cualquier momento, al hacer doble clic en el icono de la unidad, se ejecutará automáticamente el archivo autorun.inf, una trampa en la que podrían caer usuarios más avanzados.

Cualquier usuario puede configurar la reproducción automática para que tome diversas decisiones por él; al marcar la casilla correspondiente en el cuadro de diálogo de reproducción automática, el malware que se ejecuta en la unidad flash se vuelve silencioso y automático.

El malware AutoRun se ha extendido para usar discos duros, [ 29 ] marcos de fotos y otros dispositivos digitales. [ 30 ] El cuidado al manipular dispositivos externos es una prioridad de seguridad. La prevalencia de la infección por malware a través de AutoRun y ​​unidades flash USB se documentó en un estudio de Microsoft de 2011 [ 31 ] que analizó datos de más de 600 millones de sistemas en todo el mundo durante la primera mitad de 2011. El estudio encontró que el 26 por ciento de todas las infecciones por malware en sistemas Windows se debieron a unidades flash USB que explotaban la función AutoRun en Microsoft Windows . Este hallazgo coincidió con otras estadísticas, como el informe mensual de malware detectado con mayor frecuencia de la empresa antivirus ESET, que enumera el abuso de autorun.inf como el primero entre las diez principales amenazas en 2011. [ 32 ]

mitigación de ataques

Además de las precauciones básicas de seguridad, que incluyen [ 33 ]

La exposición a estos ataques puede minimizarse mediante el uso adecuado de la Directiva de grupo y la configuración del Registro. Las siguientes directivas de seguridad resumen las descritas en este artículo:

  • Desactivar la ejecución automática (pero consulta el error de desactivación de la ejecución automática ).
  • Utilice la directiva de grupo "Comportamiento predeterminado para AutoRun" en Vista (véase más arriba ) para deshabilitar los comandos de autorun.inf.
  • Utilice la asignación del archivo de inicialización para anular las secciones de autorun.inf.
  • En Windows 7, solo las unidades de CD y DVD pueden especificar aplicaciones como la tarea AutoRun en el archivo autorun.inf. Windows XP y versiones posteriores pueden actualizarse para que se comporten de la misma manera KB971029. [ 34 ] En febrero de 2011, esta actualización se agregó al canal oficial de Windows Update . [ 35 ] El comportamiento de la tarea AutoRun de Windows 7 ahora se convierte en el predeterminado para todas las versiones actuales del sistema operativo Windows.

Además, Microsoft ha recomendado las siguientes acciones, principalmente durante los ataques del gusano Conficker :

  • Evite la invocación de autorun.inf desde recursos compartidos de red mediante: [ 13 ]
    1. Eliminar cualquier archivo autorun.inf existente de la raíz de una unidad de red asignada.
    2. Denegar permisos de creación a la raíz de una unidad de red asignada.
  • Impida el uso de dispositivos de almacenamiento USB mediante:
    • Configuración USB dentro de la BIOS del sistema
    • Configuración adecuada del Registro como se describe en el artículo de la Base de Conocimientos 823732[ 36 ].
    • Configurar los dispositivos USB en modo de solo lectura para evitar la propagación de gusanos desconocidos (y el robo de datos propietarios) [ 37 ].

Véase también

Referencias

  1. 1 2 3 ¿Cuál es la diferencia entre AutoPlay y AutoRun? , Microsoft, Ayuda de Windows Vista
  2. Cómo recibir notificaciones sobre la inserción o extracción de un CD-ROM , Microsoft, Base de conocimientos
  3. Detección de inserción o extracción de medios , Microsoft, Biblioteca MSDN
  4. Función RegisterDeviceNotification , Microsoft, Biblioteca MSDN
  5. Creación de una aplicación habilitada para la ejecución automática , Microsoft, Biblioteca MSDN
  6. 1 2 3 4 Habilitar y deshabilitar la ejecución automática , Microsoft, Biblioteca MSDN
  7. Interfaz IQueryCancelAutoPlay , Microsoft, Biblioteca MSDN
  8. 1 2 Reproducción automática: preguntas frecuentes , Microsoft, Ayuda de Windows Vista
  9. 1 2 Cómo probar los archivos autorun.inf , Microsoft, Base de conocimientos
  10. Función GetDriveType , Microsoft, Biblioteca MSDN
  11. 1 2 Cómo usar un archivo de entradas de registro , Microsoft, Base de conocimientos
  12. 1 2 Registro de Windows 2000: NoDriveTypeAutoRun , Microsoft, TechNet
  13. 1 2 3 4 Cómo deshabilitar la función de ejecución automática en Windows , Microsoft, Base de conocimientos
  14. 1 2 Registro de Windows 2000: NoDriveAutoRun , Microsoft, TechNet
  15. Guía de seguridad de Windows Vista, Capítulo 3 , Microsoft, TechNet
  16. 1 2 Referencia de configuración de directivas de grupo para Windows y Windows Server , Microsoft, Descargas , Hojas de cálculo de Excel .
  17. Registro de Windows 2000: AutoRun , Microsoft, TechNet
  18. Registro de Windows 2000: AutoRunAlwaysDisable , Microsoft, TechNet
  19. Kit de recursos de Windows XP Pro, diferencias con Windows XP Home Edition , Microsoft, TechNet
  20. Gusanos de memorias USB Archivado el 31/10/2011 en Wayback Machine , blog de Nick Brown
  21. La mejor manera de deshabilitar la ejecución automática para protegerse de unidades flash USB infectadas. Archivado el 6 de junio de 2013 en Wayback Machine , Michael Horowitz - Informática defensiva.
  22. Windows Vista no maneja correctamente el valor de registro NoDriveTypeAutoRun , US-CERT
  23. El valor de la subclave NoDriveTypeAutoRun se restablece... , Microsoft, Base de conocimientos
  24. 1 2 La función de ejecución automática o la función de reproducción automática no funcionan... , Microsoft, Base de conocimientos
  25. Recibe el mensaje "La instalación finalizó prematuramente porque..." , Microsoft, Base de conocimientos
  26. Asistente para cámara y escáner, dejó de funcionar , foro de chat de Gladiator Security
  27. La reproducción automática no funciona con la cámara digital , foro de chat de Vista-XP
  28. Cómo reparar tu cámara Descarga de reproducción automática , foro de chat de tech-archive.net
  29. Troyano chino en discos duros Maxtor alarma a Taiwán , The Register , 12 de noviembre de 2007
  30. El malware se cuela en los dispositivos digitales , The Register , 11 de enero de 2008
  31. Informe de inteligencia de seguridad de Microsoft, volumen 11, enero-junio de 2011.
  32. Informe sobre amenazas globales, diciembre de 2011.
  33. Alerta de virus sobre el gusano Win32/Conficker , Microsoft, Base de conocimientos
  34. Actualización de la funcionalidad de reproducción automática en Windows , Microsoft, Base de conocimientos
  35. Información más detallada sobre la actualización del Aviso de seguridad 967940 , Microsoft, Blogs del Centro de respuesta de seguridad
  36. ¿Cómo puedo impedir que los usuarios se conecten a un dispositivo de almacenamiento USB? , Microsoft, Base de conocimientos
  37. Los dispositivos de almacenamiento extraíbles no se reconocen después de instalar Windows XP SP2 , Microsoft, Base de conocimientos
  • Referencia de AutoRun y ​​AutoPlay , Microsoft, Biblioteca MSDN
  • Gusanos de memorias USB , el blog de Nick Brown
  • Autorun Protector , un software independiente que evita que los gusanos de ejecución automática del PC y protege el dispositivo extraíble de infecciones procedentes de otras fuentes.
  • Guía de referencia de Dan McCloy para la ejecución automática
  • Security Watch Island Hopping: El atractivo contagioso de los obsequios promocionales de los proveedores , Revista TechNet
  • Figura 4: Código de ejemplo de querycancelautoplay , Microsoft Systems Journal , septiembre de 1998.
  • Asistente para reparar la reproducción automática , Centro de descargas de Microsoft
  • Pon a prueba tus defensas contra unidades flash USB maliciosas , blog de Computerworld, 24 de enero de 2009.
  • La mejor manera de desactivar la función Autorun para protegerse de unidades flash USB infectadas , blog de Computerworld, 30 de enero de 2009.
  • Cómo eliminar el virus AutoRun
  • Microsoft PowerToys , Microsoft, Tweak UI
  • Recurso de información en línea sobre la función de inicio automático de Microsoft Windows.
  • AutoRunConf es una herramienta de configuración sencilla para los ajustes de ejecución automática.
  • Cómo habilitar/deshabilitar la ejecución automática para una unidad (mediante el registro)
  • Deshabilitar la ejecución automática activa/desactiva la función de ejecución/reproducción automática de Windows.
  • Crea un menú de ejecución automática Crea tu propio menú de ejecución automática