Русское сообщество AutoIt

  • Май 20, 2012, 12:17:37 *
  • Добро пожаловать, Гость
Пожалуйста, войдите или зарегистрируйтесь.

Войти
Расширенный поиск  

Новости:

Создана конференция в Jabber'е для обсуждения мелких вопросов касающихся AutoIt.

Всем у кого есть джаббер-клиент, могут присоединиться к конференции по адресу xmpp:autoit@conference.jabber.ru

Комната/Конференция/Чат не призвана заменить этот форум, а лишь для ускорения получения ответов на элементарные и короткие вопросы, которые возможно не требуют создания специальной темы на данном форуме. Для всех остальных, сколь-нибудь сложных и комплексных проблем - исключительно на форум. Комната является постоянной, но при заходе у пользователя будет отсутствовать право писать в общий чат.

Тема на форуме.

Реклама

Автор Тема: USBProtect - Блокировка USB устройств  (Прочитано 11226 раз - 2 votes) 

0 Пользователей и 1 Гость смотрят эту тему.

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****
  • Репутация: 1905
  • Online Online
  • Пол: Мужской
  • Сообщений: 3968
  • Версия AutoIt: 3+
    • Награды
AutoIt: 3.3.6.1
Версия: 1.1

Категория: Администратирование

Описание: Изначально, я хотел написать что-то вроде программы-прикола, но в результате получилась вполне себе серьезная утилита. Итак, программа состоит всего из одного исполняемого файла "USBProtect.exe" и предназначена для блокировки любых USB накопителей (для простоты, я дальше буду писать просто флешка), таких как флешка, внешний жесткий диск и т.д. Просто запускаем USBProtect и все, все флешки будут "намертво" заблокированы. При попытке открыть их, вы получите сообщение "Access is denied".

Теперь о дополнительных "плюшках". Вы можете запустить программу с ключем "/p" или "/protect". В этом случае, убить процесс через Windows Task Manager уже не получиться, USBProtect вам этого не даст сделать (можете попробывать). Для выгрузки программы из памяти запустите программу с ключом "/u" или "/unload" (естественно, всем об этом говорить не нужно). Далее, вы можете создать неблокируемые (избранные) флешки. Для этого вам нужно сделать следующее:

  • В корне необходимой флешки создайте текстовый файл с именем "Volume.dat".
  • Поместите первой строкой в этот файл уникальный идентификатор, который выдаст вам следующая функция. Этот идентификатор основан на серийном номере файловой системы флешки, поэтому при ее форматировании он изменится, и весь процесс нужно будет повторить заново.


  • Установите для файла "Volume.dat" атрибуты "скрытый" и "только чтение".

Теперь USBProtect не будет блокировать эту флешку, и вы можете спокойно ей пользоваться, в то время, как все остальные флешки будут заблокированы. Чтобы постоянно не проделывать вышеперечисленные действия, я написал небольшую утилиту USBResolve (в архиве), которая делает все тоже самое, но гораздо быстрее и безопаснее. Просто выберите необходимую флешку из списка и нажмите кнопку "Change Status" для ее блокировки/разблокировки. Все это естественно нужно делать при выгруженной USBProtect (в противном случае, флешка будет отсутствовать в списке) или на другом компьютере. И еще, разблокировать можно только те флешки, которые имеют файловую систему FAT32 или NTFS.

Ну и на последок, USBProtect не заносит никакие данные в реестр, они ей собственно и не нужны.

Файл: AU3, EXE

Замечание. Скрипт в исходниках полностью рабочий, но по соображениям безпасности, я исключил из него часть кода, связанную с защитой процесса. Я думаю, что тот, кто напишет что-то такое, для чего действительно понадобится защита процесса, в состоянии будет сам это реализовать.


Используемые библиотеки: WinAPIEx.au3 (v2.9)

Скриншот:


Источник: USBProtect (оффициальный форум)
Автор: Yashied
« Последнее редактирование: Август 28, 2010, 21:16:37 от Yashied »



  Записан
Думай, прежде чем говорить.

CreatoR [?]

  • Администратор
  • *
  • *****
  • Репутация: 1399
  • Online Online
  • Пол: Мужской
  • Сообщений: 5058
  • Версия AutoIt: 3.2.8.1+
  • AutoIt is simple, subtle, elegant
    • WWW
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #1, Отправлен: Август 22, 2010, 21:51:39 »
Yashied  [?]
Цитата
В этом случае, убить процесс через Windows Task Manager уже не получиться
У меня получилось, я убил дерево процессов, и вместе с wscript убился и процесс утилиты. Это кажется можно избежать перезапустив сам процесс утилиты, но тогда придётся использовать другой метод проверки процесса (не по его PID).

Цитата
Далее, вы можете создать неблокируемые (избранные) флешки. Для этого вам нужно сделать следующее
А можно это повесить на некий ключ в самой утилите, например: /exclude:L, чтобы при запуске с этим ключом утилита сама создавала файл с идентификатором для указанной буквы флэшки (L в нашем случае)?




  Записан
Правила, Поиск, Супер тема


AutoIt is simple, subtle, elegant.



«Не оказываю техподдержку через ПМ/ICQ, и по электронной почте - для этого есть форум. (C)»
«Законы Мэрфи неоспоримы!»


Мои работы

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1905
  • Online Online
  • Пол: Мужской
  • Сообщений: 3968
  • Версия AutoIt: 3+
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #2, Отправлен: Август 22, 2010, 22:19:15 »
У меня получилось, я убил дерево процессов, и вместе с wscript убился и процесс утилиты. Это кажется можно избежать перезапустив сам процесс утилиты, но тогда придётся использовать другой метод проверки процесса (не по его PID).

Я не думаю, что те люди, которым мы теоретически хотим ограничить доступ к USB, чего-нибудь поймут из того, что здесь написано.

:)

А можно это повесить на некий ключ в самой утилите, например: /exclude:L, чтобы при запуске с этим ключом утилита сама создавала файл с идентификатором для указанной буквы флэшки (L в нашем случае)?

Можно, но зачем? Моя идея заключалась в следующем: есть несколько офисных компьютеров за которыми сидят любители втыкать в USB все, что не попадя, и запускать все, что только можно запустить (я с такими почти каждый день сталкиваюсь, естественно, слово процесс или PID для них китайская грамота). Мы устанавливаем под админом на эти компьютеры USBProtect, прописываем его в автозагрузку в HKEY_LOCAL_MACHINE и даем доступ к этому разделу только на чтение. Далее, на своем боссовском компьютере маркируем "нужные" флешки или переносные жесткие диски. Вот и все. Теперь этот народ может использовать только то, что "доктор прописал", а свои насквозь пропитанные вирусами флешки пусть открывают дома. Я у себя на работе уже поставил USBProtect, подожду результатов. Раньше, я в среднем раз в месяц восстанавливал (спасибо Acronis True Image) несколько компьютеров по причине убийства их вирусами. Сейчас подожду и посмотрю, что будет...

А так, если в автозагрузку прописать букву диска, то может так случиться, что эта буква окажется у другого устройства.



Добавлено: Август 22, 2010, 22:35:02
А вообще, если кто этим заинтересуется, пишите сюда, будем думать, что можно улучшить или добавить. Можно вообще заблокировать все, что не несъемные жесткие диски. Таким образом, из вне уже ничего не проникнит (интернет я в расчет не беру, это отдельная тема).
« Последнее редактирование: Август 22, 2010, 22:35:02 от Yashied, Причина: Объединение сообщений »



  Записан

CreatoR [?]

  • Администратор
  • *
  • *****
  • Репутация: 1399
  • Online Online
  • Пол: Мужской
  • Сообщений: 5058
  • Версия AutoIt: 3.2.8.1+
  • AutoIt is simple, subtle, elegant
    • WWW
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #3, Отправлен: Август 23, 2010, 00:55:06 »
Yashied  [?]
Цитата
те люди, которым мы теоретически хотим ограничить доступ к USB, чего-нибудь поймут из того, что здесь написано
Ну просто ты бросил вызов (“можете попробывать”), вот я долго не думал и прибил всё дерево :) (у меня Process Explorer, там оно сразу видно).

Цитата
Можно, но зачем?
Чтобы не мучаться со скриптом. И ещё, а что если твою прогу будет использовать кто-то у кого нет аутоита, и кто не имеет к нему никакого отношения (погуглил и попал на эту тему), ему будет проще запустить прогу с соответствующим ключом чем скачивать AutoIt и запускать скрипт.
Upd: Впрочем утилита «USBResolve» это и делает.

Цитата
даем доступ к этому разделу только на чтение
Утилита это делает? насколько я понял она полностью разблокирует флэшку после добавления файла «Volume.dat».

Цитата
если в автозагрузку прописать букву диска, то может так случиться, что эта буква окажется у другого устройства.
Ты меня не понял, в автозагрузку не нужно писать этот ключ, он нужен для одноразового запуска, чтобы утилита сама поместила файл «Volume.dat» на флэшку, т.е чтобы она разблокировала её для дальнейшей работы утилиты.




  Записан

Guezt Gutsy [?]

  • Продвинутый
  • ***
  • Репутация: 75
  • Offline Offline
  • Пол: Мужской
  • Сообщений: 333
  • Версия AutoIt: 3.3.6.1
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #4, Отправлен: Август 23, 2010, 01:45:35 »
"Наши непобедимы", пробовал все с USB делать когда работал с "любителями повтыкать" )) Помогает лишь одно Полная блокировка через реестр доступа к дискам и отключение автозапуска с них а так же блокировка на запуск: "Выполнить...", "диспетчер задач" и открытие\редактирование реестра... убить можно было только "извращенным" способом - создать текстовый файл на рабочем столе переименовать его в *.bat и запустить ( там я прописывал Killtask на свой exe блокировки ) ну и нуб же я тогда был но работало, а так уставал просто морально каждый раз слушать У МЕНЯ НЕТ ВИРУОСВ на ФЛЕШКЕ У МЕНЯ АНТИВИРУС ДОМА!... блокирующего скрипта не осталось но его написать сейчас для меня да и вас 10-15 минут с отладкой и проверкой на работу в автозагрузке... а вот одно из моих первых "творений" с GUI по конкретной блокировке и ограничению доступа к дискам где-то есть там нубо-код в лоб ))) мне даже стыдно его выкладывать ))) я так и не смог придумать алгоритм хотя точно знаю что он где-то на XOR Bit - овом уровне и не просто есть а очень очень простой )))
вот так выглядит
если это достойно попасть в готовые примеры то я выложу "код "влоб""
 )))
просто когда узнал что аналог данной проги стоит 40 евро - был рад что выложил бесплатно, но когда узнал что данная опция идет в XPTweaker - который так же бесплатный - расстроился )) Но в итоге вообще забыл про это все до прочтения данной темы )))




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1905
  • Online Online
  • Пол: Мужской
  • Сообщений: 3968
  • Версия AutoIt: 3+
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #5, Отправлен: Август 23, 2010, 02:56:23 »
Guezt, если твоя утилита работает, то выкладывай конечно, почему бы и нет. Но у меня стояла задача оставить работоспособными некоторые флешки, а не все скопом отрубить.



Добавлено: Август 23, 2010, 02:57:06
Утилита это делает?

Это делаешь ты, как администратор отдельно взятого компьютера.




  Записан

CreatoR [?]

  • Администратор
  • *
  • *****
  • Репутация: 1399
  • Online Online
  • Пол: Мужской
  • Сообщений: 5058
  • Версия AutoIt: 3.2.8.1+
  • AutoIt is simple, subtle, elegant
    • WWW
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #6, Отправлен: Август 23, 2010, 04:26:30 »
Yashied  [?]
Цитата
Это делаешь ты, как администратор отдельно взятого компьютера.
Не понял, тогда зачем мне утилита? было бы неплохо иметь в ней возможность исключать из блокировки отдельные флэшки, но позволять с них только чтение.




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1905
  • Online Online
  • Пол: Мужской
  • Сообщений: 3968
  • Версия AutoIt: 3+
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #7, Отправлен: Август 23, 2010, 09:13:12 »
Не понял, тогда зачем мне утилита? было бы неплохо иметь в ней возможность исключать из блокировки отдельные флэшки, но позволять с них только чтение.

Не, я имел в виду "только чтение" для раздела реестра, чтобы нельзя было убить автозагрузку программы из реестра.




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1905
  • Online Online
  • Пол: Мужской
  • Сообщений: 3968
  • Версия AutoIt: 3+
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #8, Отправлен: Август 26, 2010, 03:59:16 »
Обновил программу до версии 1.1.

Список изменений:
« Последнее редактирование: Август 26, 2010, 04:16:42 от Yashied »



  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1905
  • Online Online
  • Пол: Мужской
  • Сообщений: 3968
  • Версия AutoIt: 3+
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #9, Отправлен: Август 28, 2010, 02:22:27 »
Обновил программу, версия осталась прежней.

Список изменений:




  Записан

Guezt Gutsy [?]

  • Продвинутый
  • ***
  • Репутация: 75
  • Offline Offline
  • Пол: Мужской
  • Сообщений: 333
  • Версия AutoIt: 3.3.6.1
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #10, Отправлен: Август 31, 2010, 00:12:48 »
Yashied  [?]
Цитата
любители втыкать в USB все, что не попадя, и запускать все, что только можно запустить
OffTopicА где вероятность того, что "разрешенная" флешка или другое USB устройство не побывает в другом USB порту вообще не пойми какого устройства включая ПК о котором ты можешь только догадываться?! что-то Вроде "-Вот! эта флешка читается у меня на рабочем компе, а другие "почему-то" нет давай скинь на нее... ну а дальше ты сам понял да? :) Извини за оффтоп но столько труда убивает простая наивная "почему-то" наших "любимых" пользователей :)




  Записан

net7wolf [?]

  • Новичок
  • *
  • Репутация: 0
  • Offline Offline
  • Сообщений: 7
  • Версия AutoIt: AutoIt: 3.3.6.1
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #11, Отправлен: Май 19, 2011, 04:52:47 »
Yashied  ,   я конечно чайник, но прога очень заинтересовала. Только, очень охота ,чтобы работала под ХР. и для тех кто в танке был отдельный ехе для выгрузки.


PS. хотя бы для ХР. очень надо.




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1905
  • Online Online
  • Пол: Мужской
  • Сообщений: 3968
  • Версия AutoIt: 3+
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #12, Отправлен: Май 19, 2011, 13:38:04 »
USBProtect может работать под XP только с правами администратора. В этом случае, вы потеряете возможность блокировки процесса в "Диспетчере задач". Только так.




  Записан

net7wolf [?]

  • Новичок
  • *
  • Репутация: 0
  • Offline Offline
  • Сообщений: 7
  • Версия AutoIt: AutoIt: 3.3.6.1
    • Награды
Re: USBProtect - Блокировка USB устройств
« Ответ #13, Отправлен: Май 20, 2011, 05:56:26 »
Yashied , мне сайдёт и такая. она же будет работать если ехе файл переименовать, а там как вариант найти в msconfig  в автозагрузке не  очень нужную прогу и подсавить туда наш файлик с её именем.

Скинь ехе под ХР, и что там нужно куда сделать для выгрузки программы, тоже было бы не плохо.




  Записан

Yashied [?]

  • Глобальный модератор
  • AutoIt MVP
  • *
  • *****

  • Автор темы
  • Репутация: 1905
  • Online Online
  • Пол: Мужской
  • Сообщений: 3968
  • Версия AutoIt: 3+
    • Награды




  Записан
 


Похожие темы
Тема Автор Ответов Просмотров Последний ответ
BlockInputEx - Расширенная блокировка мышки и клавиатуры
UDF - Пользовательские функции
CreatoR 39 9972 Последний ответ Май 04, 2012, 19:57:49
от CreatoR
Блокировка подключаемых устройств
AutoIt для новичков
Александр 8 3129 Последний ответ Сентябрь 14, 2011, 13:22:20
от madmasles
Обнаружение подключения USB устройств
Полезняшки
Yashied 10 4075 Последний ответ Ноябрь 12, 2010, 15:14:33
от Yashied
Блокировка IP
Стол заказов
beliy 8 1806 Последний ответ Апрель 05, 2011, 12:46:07
от Kaster
Как автоматически обновить конфигурацию оборудования в диспетчере устройств?
Стол заказов
nikhama 2 573 Последний ответ Август 10, 2011, 09:04:33
от madmasles
Блокировка компьютера
AutoIt для новичков
_Lexa98_ 6 495 Последний ответ Февраль 11, 2012, 12:29:16
от _Lexa98_
Блокировка и разблокировка папки через команды CMD
AutoIt для новичков
Viktor1703 3 186 Последний ответ Апрель 09, 2012, 16:57:10
от Viktor1703
Flash-Key 0.8.6b - Блокировка ПК
Примеры и рабочие проекты
pavlo 7 469 Последний ответ Апрель 16, 2012, 11:42:45
от SECTOR
Блокировка играющих сотрудников и отправка их фото директору
Общение
tkartlis 21 852 Последний ответ Апрель 23, 2012, 23:05:28
от zlo-kazan
Перенесено: Блокировка играющих сотрудников и отправка их фото директору
Стол заказов
madmasles 0 136 Последний ответ Апрель 21, 2012, 23:58:33
от madmasles


Реклама

* Последние сообщения на форуме
post Re: Проблема с циклами While
[AutoIt для новичков] Yashied Сегодня в 12:14:25
post Сглаживание рывков при передачи новых координат игрока по TCP/IP
[Общение] Ganibal95 Сегодня в 12:10:37
post Перенесено: Уроки программирования и автоматизации посредством AutoIt для чайников
[AutoIt для новичков] Yashied Сегодня в 12:09:28
post Re: Защита исходного кода программы
[AutoIt для новичков] iamOmg Сегодня в 12:09:05
post Проблема с циклами While
[AutoIt для новичков] Andeangl Сегодня в 11:03:15
post Уроки программирования и автоматизации посредством AutoIt для чайников
[Инструменты и помощь по AutoIt] aak Сегодня в 09:41:45
post Re: Как спарсить ссылку внутри тега "td" определенного класса
[Регулярные выражения и прочее] eropov Сегодня в 05:27:00
post Re: Ограничение доступа(блокировка) к компьютеру если не вставлен носитель с ключом
[AutoIt для новичков] Pat4005 Сегодня в 01:02:55
post Re: Развитие русской справки
[Инструменты и помощь по AutoIt] CreatoR Сегодня в 00:02:03
post Re: Развитие русской справки
[Инструменты и помощь по AutoIt] CreatoR Май 19, 2012, 23:55:37

* Пользователи онлайн
  • Dot Гостей: 94
  • Dot Скрыт: 1
  • Dot Пользователей: 26
  • Dot Пользователи Online: