
Necesito ayuda para juntar las piezas para hacer esto:
- Ejecute un script o programa que deshabilite los dispositivos de almacenamiento USB.
- Registre cualquier montaje de dispositivo bloqueado en el registro de eventos del sistema.
- Ejecute un segundo script o programa (o cancele el programa en ejecución desde el paso 1) y vuelva a habilitar los dispositivos de almacenamiento USB.
(Mi aplicación se ejecuta en PC en laboratorios públicos para crear una "zona de pruebas" de acceso restringido en la que un usuario realiza una prueba. Necesito bloquear los dispositivos de almacenamiento USB para evitar trampas)
Mis limitaciones:
- Mi solución se ejecutará en computadoras públicas sobre las que no tengo control. Cualquier cosa que requiera reiniciar, modificar el BIOS o alterar físicamente la computadora no funcionará.
- Puedo suponer que la solución se ejecutará como administrador, pero puntos de bonificación si funciona para alguien que no es administrador.
- Sólo me preocupa Windows XP en este momento. Puntos de bonificación por compatibilidad con Vista o Win7.
Soluciones parciales:
Bloquear el montaje automático de dispositivos medianteKB 823732. Rápido y fácil, pero:
- No recibo notificaciones cuando un dispositivo está bloqueado. (Quiero saber si alguien intenta hacer trampa, incluso si está bloqueado)
- De acuerdo aEste artículo, si el controlador de almacenamiento USB aún no está instalado, el sistema Plug-N-Play lo instalará en el primer uso, sobrescribiendo la clave de registro y permitiendo el acceso.
Deshabilite el almacenamiento USB a través de la Política de grupo (KB 555324).
- Puedoguionla aplicación de estas políticas a la computadora local en tiempo de ejecución,sin reiniciar?
- ¿Con qué facilidad puedo revertir la póliza a su estado anterior cuando termine?
- ¿Aparecerán los dispositivos bloqueados en el registro de seguridad?
Modificar las ACL para USBSTOR.SYS, como se muestra en esta pregunta de SF]4.
- Si niego los derechos sobre el archivo para la clase actual de usuario, ¿mi script de reversión podrá devolverle los derechos?
- Si niego los derechos sobre el archivo, ¿cómo me aseguro de que cualquier intento de montaje del dispositivo se registre en el registro de seguridad?
Estoy abierto a soluciones en .NET o al uso de archivos por lotes o scripts de PowerShell.
(Nota: esto está relacionado conmi pregunta similar y generosa de Stack Overflow. Si le interesa el representante de SO, no dude en responder allí también)
Respuesta1
Para implementar la política de grupo no es necesario reiniciar. Ejecutar gpupdate /force (dos veces) en el cliente es suficiente (use psexec para eso, por ejemplo).
Si desea revertir la política, simplemente desvincúlela del sistema operativo y vuelva a ejecutar gpupdate /force en el cliente (nuevamente con psexec).
Si las computadoras no están en AD y no puede implementar políticas de grupo, aún puede obtener los mismos resultados con las importaciones de registros. Eche un vistazo a la plantilla de administración que usaría en AD e importe los cambios de registro con reg.exe y psexec. Otra opción sería usar wpkg (http://wpkg.org) donde tiene una definición xml de acciones para instalar/desinstalar cosas. Funciona muy bien y no cuesta nada.