miércoles, 19 de septiembre de 2012

Registro de windows y software dedicado

A la hora de administrar una red local, entre otras muchas tareas que ya hemos visto, es posible que tengamos que controlar ciertos tipos de activades relativas a dispositivos conectados a las máquinas de los usuarios como dispositivos USB, teléfonos moviles, cámaras digitales, adaptadores WiFi, Bluetooth, etc. Los dispositivos conectados a través de puertos USB pueden acarrearnos muchos problemas de seguridad y fugas de información.

USB  audioria. Device Class ID USBSTOR Unique Instance ID

En esta ocasión veremos la forma de auditar este tipo de dispositivos, historial de uso y toda la información relativa a cada dispositivo conectado, así como fechas. Lo veremos a través del registro de Windows y programas diseñados para tal efecto y como pueden ser USB History Dump, USBDeview y DeviceLock Plug and Play Auditor.

El Registro de Windows.

Cuando a una máquina se conecta un dispositivo USB, el administrador Plug and Play recibe una notificación, consulta el descriptor de dispositivos para obtener información tal como el fabricante, etc para encontrar un driver o controlador para el dispositivo o cargar un nuevo controlador.  Todo esto queda reflejado en el archivo setupapi.log que registra información relativa a los dispositivos instalados, drivers y el historial de instalación y errores. También se almacenará  la fecha y la hora en que el dispositivo de almacenamiento extraíble USB se conectó al sistema por primera vez:

[2010/01/21 12:33:16 644.7 Driver Install]
#-019 Buscando Id. de hardware: usbstor\diskkingstondatatraveler_2.01.00,usbstor\diskkingstondatatraveler_2.0,usbstor\diskkingston,usbstor\kingstondatatraveler_2.01,kingstondatatraveler_2.01,usbstor\gendisk,gendisk
#-018 Buscando Id. compatibles: usbstor\disk,usbstor\raw
#-198 Línea de comando procesada: C:\WINDOWS\system32\services.exe
#I022 Encontrado “GenDisk” en C:\WINDOWS\Inf\disk.inf; Dispositivo: “Unidad de disco”; Controlador: “Unidad de disco”; Proveedor: “Microsoft”; Fab: “(Unidades de disco estándar)”; Nombre de sección:”disk_install”.
#I023 Sección de instalación actual: [disk_install.NT]. Rango: 0×00000006. Fecha de controlador efectiva: 07/01/2001.
#-166 Función de instalación de dispositivo: DIF_SELECTBESTCOMPATDRV.
#I063 El controlador seleccionado se instala desde la sección [disk_install] in “c:\windows\inf\disk.inf”.
#I320 El GUID de clase del dispositivo se conservará como {4D36E967-E325-11CE-BFC1-08002BE10318}.
#I060 Se ha establecido el controlador seleccionado.
#I058 Se ha seleccionado el mejor controlador compatible.
#-166 Función de instalación de dispositivo: DIF_INSTALLDEVICEFILES.
#I124 Realizando instalación sólo de copia de “USBSTOR\DISK&VEN_KINGSTON&PROD_DATATRAVELER_2.0&REV_1.00703120512562&0″.
#-166 Función de instalación de dispositivo: DIF_REGISTER_COINSTALLERS.
#I056 Coinstaladores registrados.
#-166 Función de instalación de dispositivo: DIF_INSTALLINTERFACES.
#-011 Instalando sección [disk_install.NT.Interfaces] desde “c:\windows\inf\disk.inf”.
#I054 Se han instalado las interfaces.
#-166 Función de instalación de dispositivo: DIF_INSTALLDEVICE.
#I123 Realizando instalación completa de “USBSTOR\DISK&VEN_KINGSTON&PROD_DATATRAVELER_2.0&REV_1.00703120512562&0″.
#I121 La instalación del dispositivo de “USBSTOR\DISK&VEN_KINGSTON&PROD_DATATRAVELER_2.0&REV_1.00\0703120512562&0” terminó correctamente.

A continuación genera una entrada en el registro denominada Device Class ID en HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR que identifica la clase del dispositivo. 

Bajo esta clave se crea otra clave ID de formá uníca ó Unique Instance ID utilizando el número de serie del dispositivo o de no haberlo obtenido o encontrado, el sistema genera un identificador también único. Eso lo podemos identificar si el segundo carácter del identificador ( Unique Iinstance ID ) contiene el símbolo &.

Lo vemos:

USB  audioria. Device Class ID USBSTOR Unique Instance ID

En rojo tenemos el Device Class ID y en azul el Unique Instance ID.
En la ventana de la derecha del editor de registro vemos también:

USB  audioria. Device Class ID USBSTOR Unique Instance ID ParentIDPrefix

Observamos que el ClassGUID 4D36E967-E325-11CE-BFC1-08002BE10318 lo tenemos también en el fragmento del archivo setupapi.log que tenemos más arriba.
Observad el ParentIdPrefix: 7&146f1415&0 que lo usaremos un poco más abajo.
Si realizamos una búsqueda en el registro por el valor de Unique Instance ID que más arribas tenemos marcado en azul: 0703120512562&0 vemos que lo encontramos en:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceClasses

USB  audioria. Device Class ID USBSTOR Unique Instance ID ParentIDPrefix

Enmarcado en rojo tenemos el valor de Unique Instance ID que más arribas tenemos marcado en azul: 0703120512562&0

Un poco más abajo tenemos otra subclave que contiene el ParentIdPrefix: 7&146f1415&0 :

USB  audioria. Device Class ID USBSTOR Unique Instance ID ParentIDPrefix

Estas dos subclaves anteriores corresponden a Class GUID keys de disco y de volumen.
Tenemos otra clave HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices

Aquí y con el valor de ParentIdPrefix, veremos en que volumen se montó el dispositivo USB. Solo tenemos que editar el valor binario para en la parte en Haxadecimal buscar el valor ParentIdPrefix mencionado:

USB  audioria. Device Class ID USBSTOR Unique Instance ID ParentIDPrefix

En este caso no aparece el volumen. Puede ocurrir. En la mayoría si:

USB  audioria. Device Class ID USBSTOR Unique Instance ID ParentIDPrefix

En este último caso, y buscando en la clave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR vemos que se trata de un dispositivo similar para el cual se ha creado un Unique Instance ID diferente:

USB  audioria. Device Class ID USBSTOR Unique Instance ID

Vamos ahora con las fechas y otras informaciones que nos pueda aportar las claves. Si volvemos a HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceClasses y elegimos la subclave que nos interesa, por ejemplo, las mismas marcadas en el ejemplo más arriba reseñado, hacemos lo siguiente: botón derecho del ratón y explortar en archivo .txt, si lo editamos encontraremos:

USB  audioria. Device Class ID USBSTOR Unique Instance ID ParentIDPrefix

Software para auditar eventos de dispositivos USB.
Para esta tarea tenemos programas como USBDeview o DeviceLock Plug and Play Auditor que, además, puede auditar Firewire (IEEE 1394) y PCMCIA. Para usar en la consola DOS, tenemos también USB History Viewing. que, además, puede auditar Firewire (IEEE 1394) y PCMCIA. Para usar en la consola DOS, USB History Dump.

DeviceLock Plug and Play Auditor

Con DeviceLock Plug and Play Auditor  podenos escanear una red local en busca de dispositivos en pouertos USB:

DeviceLock Plug and Play Auditor scan

La información que nos aporta es mucha y como vemos más abajo tenemos dispositivos moviles Nokia, USB extraibles, etc y además información de si está en este momento en uso:

DeviceLock Plug and Play Auditor scan

Para poder entrar en las máquinas a escanear, previamente hay que introducir las credenciales desde el menu File > Credentials..
Tenemos las siguientes columnas de información:
  • Description: la descripción del dispositivo que proporciona su fabricante.
  • Device Information: información adicional relativa al dispositivo proporcionada por el fabricante.
  • Connected to: interfaz donde está conectado el dispositivo (USB, FireWire oPCMCIA).
  • Class: la clase del dispositivo proporcionada por Windows.
  • Class description: la descripción de la clase del dispositivo proporcionada por Windows.
  • Present: indica si el dispositivo está actualmente conectado o no (Yes o No).
  • DeviceID: texto proporcionado por el fabricante que identifica un dispositivo en particular.
  • Driver: nombre del controlador que está controlando este dispositivo.
USBDView.

Al ejecutar el programa:

USBDview

botón derecho del ratón en cualquiera de los items y Propiedades.
Como veis no tiene mucha historia:
USBDview
USB History Dump.

Lo ejecutamos desde una consola DOS:

USB  audioria. USB history dump

Aquí tenemos información relativa a:
  • Unique InstanceID
  • ParentIdPrefix
  • en que unidad se montó el dispositivo por última vez
  • Disk Stamp y Volume Stamp.
Del los ejemplos que hemos visto más arriba en el registro de Windows:

(6) — Kingston DataTraveler 2.0 USB Device
instanceID: 0703120512562&0
ParentIdPrefix: 7&146f1415&0
Driver:{4D36E967-E325-11CE-BFC1-08002BE10318}002
Disk Stamp: 05/13/2010 07:56
Volume Stamp: 05/13/2010 07:56
instanceID: 2008012500000000000002AB&0
ParentIdPrefix: 7&15730ba3&0
Driver: {4D36E967-E325-11CE-BFC1-08002BE10318}011
Disk Stamp: 04/15/2010 13:35
Volume Stamp: 04/15/2010 13:35
instanceID: 20080125000000000000039D&0
ParentIdPrefix: 7&154fd82a&0
Last Mounted As: \DosDevices\E:
Driver: {4D36E967-E325-11CE-BFC1-08002BE10318}003
Disk Stamp: 05/13/2010 12:03
Volume Stamp: 05/13/2010 12:03

—————


No hay comentarios:

Publicar un comentario

Nota: solo los miembros de este blog pueden publicar comentarios.