Изменить реестр без HID

320
Filip Hazubski

Я работаю над программой, которая не позволяет подключать новые USB HID, но позволяет использовать такие устройства, как камеры, карты памяти и т. Д. Я выполнил то, что мне нужно, с помощью простых записей реестра. Все работало нормально, пока система не была заблокирована, потому что, по любой причине, HID, связанные с системой, были удалены.

В этом сценарии у меня есть работающая система Windows, но к ней невозможно подключить HID. Других портов кроме USB нет. Я даже не могу использовать восстановление системы, потому что оно доступно только:

  • перезапуск системы с зажатой клавишей SHIFT (без клавиатуры)
  • не удается запустить Windows 3 раза подряд (система загружается нормально)
  • с помощью панели управления (я думаю, без HID)

Итак, каковы мои варианты возврата из этого сценария в работающую систему без переустановки Windows? Может быть, я могу кое-что сделать, прежде чем сценарий будет подготовлен для этого случая?

Также (как указано в названии вопроса) это решило бы мое дело, если бы я мог изменить реестр.


Я не буду администратором устройства, поэтому предпочитаю более простые и простые решения. Однако, возможно, мне удастся подключиться к устройству через Интернет. Что-то вроде TeamViewer будет работать для меня, но я не хочу платить за лицензию.

0
ты можешь загрузиться с флешки? Harvey 8 лет назад 0
@ Харви Со мной все в порядке, но чем проще «средний пользователь», тем лучше. Filip Hazubski 8 лет назад 0
Я не уверен, что понимаю, что вы подразумеваете под этим. Таким образом, вам нужно решение, чтобы предоставить третьему лицу в случае сбоя системы? или вы пытаетесь восстановить вашу систему в настоящее время? Если это для клиента, вы могли бы предварительно подготовить загрузочную флешку для клиента, которую они могли бы просто загрузить, если у них возникнут проблемы Harvey 8 лет назад 0
@ Харви Я отредактировал свой вопрос. Оборудование с заблокированным USB будет использоваться клиентом, и мне нужно решение на случай, если что-то пойдет не так. Флешка с предварительно подготовленным программным обеспечением - хорошая идея, но она не идеальна - требует времени для создания программы и денег на флешки. Может быть, создать что-то вроде раздела восстановления? Filip Hazubski 8 лет назад 0
Хорошо, а как насчет создания сценария PowerShell для включения USB на определенный период времени каждый день? Конечно, это не идеальное решение, но вызывающе быстрое и дешевое. Например, у клиента будет окно с часами, скажем, в 8 вечера, чтобы подключить HID и исправить? Harvey 8 лет назад 0
Кроме того, идя по маршруту удаленного доступа, вы можете использовать старый Microsoft RDP, если устройство будет иметь статический IP-адрес и вы сможете перенаправить порт 3389 на устройство. Или создайте клиент-серверный скрипт Python, который вы можете удаленно отключить блокировку USB Harvey 8 лет назад 0
@ Харви Временной сценарий стоит рассмотреть. Отличная идея! Статический IP хрупок, но подойдет какой-нибудь простой клиент-серверный скрипт. Однако в этом случае мне нужно научиться делать это :) Не стесняйтесь размещать эти предложения в качестве ответа. Все они стоят того, чтобы их посетить. Filip Hazubski 8 лет назад 0

2 ответа на вопрос

2
Harvey

As discussed in the comments here are some suggestions to combat your problem:

  1. Use of a Bootable USB stick. You could use a Bootable USB with pre-prepared software in order to enter a "panic" mode which would Allow the use of USB Devices, or auto-matically re-configure the machine
  2. A time-sensitive PowerShell Script which will allow a time that USB devices are no longer blocked. Using Windows Task Scheduler you could have a script that could run @ 8pm to enable USB Devices and disable them again @ 9pm. This would give the client access to the machine 1 hour a day to fix or re-configure.
  3. Remote Access. You could use Windows Remote Desktop Connection to hook into the machine and reconfigure the device (We do it with the Intel Compute Sticks!). However this would require that you forwarded port 3389 from the router to the device AND you have a static IP (or Dynamic DNS) set up for that router. Failing this method, you could create a client/server script in Python which would give you some controls remotely without having to worry about port forwarding. There's a great tutorial for how this may work over @ thenewboston - Python Reverse Shell. The concept is to make the client machine contact the server over a TCP connection, server accepts the connection and then you can forward your system commands through to the client..
1
Filip Hazubski

У меня появилась еще одна идея, которую я решил реализовать.

Поскольку я блокирую только устройства HID, проблем с подключением карты памяти не возникает. Я создал фоновый процесс, который проверяет установленные диски и проверяет наличие в них определенного файла. Если содержимое файла правильное, фоновый процесс изменяет реестр и разблокирует ОС.

Мне нравится этот подход +1 Harvey 8 лет назад 0

Похожие вопросы