PDA

Показать полную графическую версию : NoMoreAutorun - утилита для отключения автозапуска.


Страниц : [1] 2 3 4

volk1234
31-05-2009, 02:16
Любите ли вы вирусы проникающие на компьютеры на флэшках, так как их люблю я?

В общем решил я себе сделать подспорье в работе, небольшой скриптик, который отключает все возможные способы Автозапуска. Который, как известно, является наиглавнейшим после интернета способом распространения- выживания вирусов.
Проведя небольшое исследование я выяснил – для полноценной защиты необходимо отключить автозапуск со всех устройств кроме CD\DVD (с помощью параметра NoDriveTypeAutoRun ) и установить 2 обновления – KB967715 и KB971029. Обратите внимание KB967715, KB953252 и KB950582 абсолютно идентичны по функционалу и нет нужды устанавливать их на систему одновременно. Единственное – для Windows Vista подойдет только KB950582 – этот момент скрипт обрабатывает.
Также надо защитить все сменные носители от записи на них файлов autorun.inf – для предотвращения запуска вирусов с флэшки на компьютерах с включенным автозапуском.

Скачать:
rapidshare Ссылка (http://rapidshare.com/files/328955954/nmar_91230.rar)
oszone (см. вложение)
http://wiki.oszone.net/images/9/93/Nmar.png

Использование

Применим на системах Windows XP(RUS/ENG), Windows 2003 Server (RUS/ENG), Windows Vista (RUS/ENG);

В зависимости от использованного при запуске ключа утилита выполняет различные действия по отключению автозапуска.

GUI оболочка для скрипта.
Для облегчения использования скрипта начинающими пользователями участником конференции OsZone.net Drongo была сделана графическая оболочка (GUI).
Функционал GUI аналогичен работе скрипта, он формирует командную строку в зависимости от вашего выбора и запускает модифицированный вариант скрипта.

Опции GUI:

См. встроенну справку...


1. Работает с разделами (параметрами) реестра:

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer
NoDriveTypeAutoRun=0XDF (223)
HonorAutorunSetting=0x1
HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer
NoDriveTypeAutoRun=0XDF (223)
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf
@=@SYS:DoesNotExist (в данной версии @=@SYS:DoesIsAutorunKaput)
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\CancelAutoplay\Files
"*.*"=0
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2

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

2. Отключает \ запускает службу Определение оборудования оболочки (ShellHWDetection)

3. Определяет наличие в системе KB967715(KB953252, KB950582) и KB971029, при необходимости скачивает их с сайта Microsoft и устанавливает. Также есть ключ для установки этих обновлений даже если они есть в системе(принудительная установка)

4. Позволяет создать «неудаляемую» папку Autorun.inf, препятствующую записи вирусом своего файла autorun.inf – на текущем диске, на всех доступных дисках, на конкретном диске.

5. Разблокировать доступ к вышеуказанным веткам реестра (в случае закрытия разрешений на доступ к ним вирусом)

6. Запретить добавление новых USB устройств на компьютер (уже установленные будут работать)

7. Запретить использование всех носителей информации USB на компьютере

8. Запретить запись на носители информации USB на компьютере

9. Позволяет использовать ключи командной строки в заранее определенных автором комбинациях - «макросы» или сформировать свою последовательность команд из более мелких опциональных команд.

10. Сохраняет все оригинальные разрешения и значения параметров реестра в папку nmar_backup для возможности восстановления.

11. Ведет протокол работы в файл log.txt


В общем- то ничего революционного, просто полезные вещи для борьбы с вирусной заразой сведенные в одном файле. Надоело делать много разных действий руками...
Примечание:
В связи с тем, что блокируется доступ к некоторым веткам реестра, что не есть хорошо и возможны различные ошибки,
1. Я снимаю с себя любую ответственность за последствия;
2. Желательно использование утилиты на установленной и настроенной системе ( когда установлены все программы и службы, меньше вероятность, что одной из них срочно понадобится записать значение в один из защищаемых ключей);



nmar.cmd -ключ [опция]



Ключи:

-help - показывает короткую справку на английском языке;


-ms - (minimal settings) Рекомендуемый режим использования утилиты:
1. Отключает автозапуск (автовоспроизведение) на всех дисках кроме CD\DVD;
2. Устанавливает обновления KB967715(KB950582), KB971029 если они нужны;
3. Изменяет значения параметров NoDriveTypeAutorun=223, HonorAutoRunSetting=1 в разделах реестра HKLM(HKCU)\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;

-full - Более полный режим: выполняет все действия ключа –ms, плюс очищает ветку HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 от всех записей и защищает ее от изменений;


-nomore – Т.н. параноидальный режим (не рекомендуется на компьютерах использующих групповую политику):
1. Принудительно устанавливает обновления KB967715(KB950582), KB971029;
2. Изменяет значения параметров NoDriveTypeAutorun=223, HonorAutoRunSetting=1, *.* = "", @ = @SYS: DoesIsAutorunKaput в разделах реестра HKLM(HKCU)\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\CancelAutoplay\Files;
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf;
3. очищает ветку HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 от всех записей и защищает ее от изменений;
4. Отключает службу Определение оборудования оболочки (ShellHWDetection);
5. Закрывает ветки реестра указанные в п.2 на запись;


-kb - Принудительно устанавливает обновления KB967715(KB950582), KB971029.


-p - защитить диск(Создать защищенную папку Autorun.inf) с которого запущен скрипт;
-pd [x:] - защитить диск x: (Создать защищенную папку Autorun.inf);
-pall - защитить диск(Создать защищенную папку Autorun.inf) на всех доступных дисках;


-unlockall – открыть доступ на уровне разрешений ко всем ранее заблокированным объектам – файлам, ключам реестра;
Может использоваться для разблокировки этих объектов заблокированных вирусами. Рекомендуется в случае
ошибок или невозможности изменить параметры реестра, доступ к файлам. Если нет заранее сохраненных файлов настроек с разрешениями для объектов – применяются настройки разрешений по умолчанию – полный доступ Администраторов и Системе.

-do [опция] – выполняет действие заданное опцией, список опций ниже;
-l [опция] - выполняет блокировку доступа к объекту заданному опцией, список опций ниже;
-un [опция] - выполняет разблокировку доступа к объекту заданному опцией, список опций ниже;




Опции ключа [-do] :

reg1 - изменяет значение параметров реестра:

1. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;
NoDriveTypeAutorun=223;
или если было указанно другое значение NoDriveTypeAutorun=[значение] , если не указанно
применяется 223 – значение по умолчанию. Значения можно задавать как в десятичной так и
шестнадцатеричной системах счисления;

2. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;
HonorAutoRunSetting=1;

reg2 - изменяет значение параметров реестра:

1. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\CancelAutoplay\Files;
*.* = "";
2. HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf;
@ = @SYS: DoesIsAutorunKaput;



srvoff – Останавливает и отключает службу ShellHWDetection ;
srvon– Запускает ShellHWDetection ;

mountp - очищает ветку HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 от всех записей, информация содержащаяся в ветке сохраняется в REG- файл в папке nmar_backup для возможности восстановления.





Опции ключа [-l] :

reg1 - закрывает доступ к параметру реестра:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;

reg2 - закрывает доступ к параметрам реестра:
1. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\CancelAutoplay\Files;
2. HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf;

usbadd – запрещает установку новых USB устройств хранения (уже установленные будут работать);
usbuse - запрещает использование всех USB устройств хранения;
usbwrite - запрещает запись на USB устройства хранения данных. Чтение с устройств доступно;
mountp - закрывает доступ к параметру реестра:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2;




Опции ключа [-un] :

reg1 - открывает доступ и устанавливает значение ОС по умолчанию для параметра реестра:
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;

reg2 - открывает доступ и устанавливает значение ОС по умолчанию для параметров реестра:
1. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\CancelAutoplay\Files;
2. HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf;

usbadd - разрешает установку новых USB устройств хранения ;
usbuse - разрешает использование всех USB устройств хранения;
usbwrite - разрешает запись на USB устройства хранения данных;

mountp открывает доступ к параметру реестра:
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2;



Блокировка- разблокировка доступа к объектам осуществляется через установку разрешений с помощью утилиты subinacl от Microsoft. Текущие разрешения объекта перед изменениями сохраняются в папку nmar_backup для возможности восстановления.
Файлы именуются названием ключа программы + дата+ время+имя компьютера. Для восстановления информации эти файлы надо переписать в одну папку со скриптом и переименовать, удалив часть имени справа от подчеркивания (включая подчеркивание). Пример: mountp_20091129_150201_comp13.log -> mountp.log. Только в этом случае сохраненная информация о разрешениях объектов будет использоваться, если программа не находит такого файла для какого- либо объекта – она применяет разрешения по умолчанию: полный доступ группе Администраторы и группе Система.
При блокировке доступа задается разрешение группе Все на чтение. Остальные группы удаляются.
Применение ключа –unlockall без файлов с информацией о разрешениях объектов приведет к заданию у всех объектов
на которые воздействует скрипт разрешений по умолчанию (по умолчанию для скрипта, а не для ОС). Поэтому применяйте этот ключ перед другими только в случае необходимости разблокировки объектов.



Для корректной работы ключа –l usbadd необходимо предварительно подготовить компьютер – удалить все ненужные USB устройства (а также их тома)из консоли оснастки Диспетчер оборудования, предварительно включив режим Показать скрытые устройства в меню Вид.
Для корректной работы ключей –l usbadd, –l usbuse, –un usbadd, –un usbuse рекомендуется перезагрузить компьютер после их применения.
Для корректной работы ключа –l usbwrite необходимо отключить все USB устройства хранения данных от компьютера.


Авторские права

(с) 2009-2010 volk1234 – Скрипт NoMoreAutorun
(с) 2009-2010 Drongo – GUI оболочка NoMoreAutorun
(с) 2009 amel – секция скрипта для скачивания обновлений и обработки ключей
(с) 2010 crashtuak – тихий режим командной строки в GUI
(с) Microsoft – утилита subinACL.exe
(с) http://curl.haxx.se – утилита curl.exe


Данный скрипт может распространятся в некоммерческих целях абсолютно свободно.

Severny
31-05-2009, 10:00
Останавливает и отключает службы Восстановления системы и Автоматического обновления; »
Зачем?

volk1234
31-05-2009, 12:57
Службы прямого отношения к автозапуску не имеют, однако если зловред посстоянно висит в памяти и использует службу восстановления для восстановления файлов, то просто удаление Autorun.inf не поможет - он после перезагрузки может поменять настройки автозапуска снова. Вообщето службы я останавливал до появления в скрипте regperm.exe который просто блокирует ветки на запись.
Автоматическое обновление останавливается на случай его работы, дабы не нарушить ход обновления с заменой системных файлов и реестра.
Подразумевается, что это временные действия, после перезапуска системы службы запустить вручную...
Ссылки на загрузку есть и в базе знаний, но за ваши спасибо подниму в шапку...

okshef
02-06-2009, 05:55
однако если зловред посстоянно висит в памяти »
можно советовать применять утилиту в SafeMode
P.S. А автозапуск с дисков (CD), я бы все-таки оставил.

volk1234
02-06-2009, 09:31
okshef
В данной теме просто предлогается мой скрипт, который я применяю на работе.
Если кому пригодится - я рад.
Вы можете заменить в батнике одно значение сами- это просто. Я же буду вирусы давить на рабочих компьютерах по полной...

okshef
02-06-2009, 21:25
volk1234, согласен, но для домашних-то... Вот дочка сегодня: "Папа, хочу, чтобы диски запускались..."

mozgabyte
02-06-2009, 23:18
Предлагаю аналог VirusVaccine - скрипт для борьбы с autorun-вирусами (http://forum.oszone.net/thread-141713.html) :)

volk1234
03-06-2009, 19:33
okshef
дома вообще нет большого смысла использовать скрипты- автоматизация действий имеет смысл когда компьютеров >3,
иначе время затраченное на написание скрипта будет больше времени действий руками...
Ветки реестра известны, их значение тоже, regedit и вперед...запретить через разрешения всем изминения...
Не надо запрещать автозапуск с сидиромов, не запрещайте.
Или же в скрипте закомментировать строчку Reg Add "HKLM\SYSTEM\CurrentControlSet\Services\Cdrom" /v AutoRun /t REG_DWORD /d 0 /f >nul

Пример для дочки: От того, что она будет знать какой файл где лежит на диске( и какой надо запустить) хуже не будет, в конце концов, а вдруг у подруги к которой она понесет диск тоже отключен автозапуск сидирома.

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

mozgabyte
Назначения у скриптов разные.
Мой скрипт узко ориентирован (даже отключение служб может уберу)

Не вижу смысла использовать VirusVaccine для борьбы с вирусами, а если файл вируса будет называтся amvo3.pif(а не amvo.exe как написанно в скрипте ? Предложенный вами скрипт не удалит его.
Для удаления зловредных файлов существуют антивирусы, которые делают это намного надежнее и качественнее, чем скрипты.
Для профилактического удаления возможностей автозапуска - я сделал скрипт в шапке. Вот.

KiDs89
05-11-2009, 14:40
убрал из скрипта:
Reg Add "HKLM\SYSTEM\CurrentControlSet\Services\Cdrom" /v AutoRun /t REG_DWORD /d 0 /f >nul

Regperm.exe /k "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Cdrom" /D:%UG%:WCD /E


в дисках не работает автозапуск подскажите что ещё надо убрать/заменить, так как необходимо отключить автозапуск на всём кроме как CD/DVD.

Vadikan
08-11-2009, 18:43
volk1234, отключение автообновления и восстановления никуда не годится. Во втором случае юзер теряет еще и точки восстановления... Подразумевается, что это временные действия, после перезапуска системы службы запустить вручную... »
И кто это знает? Нужно продумать альтернативное решение - например, прописать команды для включения служб в RunOnceEx (HKLM).

volk1234
11-11-2009, 00:05
KiDs89
Еще изменить параметр
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer
NoDriveTypeAutoRun =255
на
NoDriveTypeAutoRun =223

0xff на 0xdf в шестнадцатиричной системе.


Vadikan и All

Извините - в связи с анулированием всех подписок на темы - не видел новых сообщений.

Согласен не очень удачный скрипт был - я его делал на скорую руку - для себя. С мыслью - ну, я то знаю, какие службы где отключены.
Сейчас, после завершения исследования (http://forum.oszone.net/post-1252489-138.html) в этой области, готовлю новый вариант - скрипт "монстр" с ключами запуска и разными степенями блокировки автозапуска,
начиная от "рекомендованого" MS - то есть 2 обновления (967715, 971029) и NoDriveTypeAutoRun =223 (остается автовоспроизведение с CDROM) и заканчивая брутальным и тотальным отключением всего, что относится к теме автозапуска на компьютере (теперь вместо regperm я использую subinacl для блокирования\разблокирования файлов и веток реестра на изменения).
Думаю уже скоро закончу. Но пока я могу только удалить скрипт или посоветовать им не пользоваться - если использование упомянутых служб критично.

volk1234
30-11-2009, 01:23
NoMoreAutorun v.9.11.29b

Выложил новый полностью переработанный скрипт NoMoreAutorun- теперь поддерживающий ключи командной строки.
Посторонние службы больше не затрагиваются. Функционал в шапке, поверьте он достойный.
Разрабатывалось как средство системного администрирования разнородной среды компьютеров.
Пока бета версия.

ура я добил этот скрипт !!!

Vadikan
30-11-2009, 09:26
volk1234, отлично, спасибо! Почему бы не обернуть скрипт в GUI - на том же AutoIt? Ключи запуска будут основной для опций, которые может выбрать пользователь. И повесим на софт-портал, как тут (http://soft.oszone.net/program/9336/MultiBoot/).

volk1234
30-11-2009, 10:33
Ну во-первых надо довести до ума, то, что я громко назвал короткая анлийская справка.

Во-вторых, я не очень дружу с GUI. Может скооперироватся с кем из хелперов - iskander-k вроде делал GUI для консольной программы...

Vadikan
30-11-2009, 11:21
Ну во-первых надо довести до ума, то, что я громко назвал короткая анлийская справка. »
Пока достаточно русского UI, а следовательно - англ. справка не должна быть препятствием.

Во-вторых, я не очень дружу с GUI. »
Надо поднять вопрос в форуме AutoIt просто, если не будет отклика - можно в программировании.

Drongo
30-11-2009, 14:42
volk1234, -ms - (minimal settings) Рекомендуемый режим использования утилиты:
1. Отключает автозапуск (автовоспроизведение) на всех дисках кроме CD\DVD;
2. Устанавливает обновления KB967715(KB950582), KB971029 если они нужны;
3. Изменяет значения параметров NoDriveTypeAutorun=223, HonorAutoRunSetting=1 в разделах реестра HKLM(HKCU)\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;
-full - Более полный режим: выполняет все действия ключа –ms, плюс очищает ветку HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 от всех записей и защищает ее от изменений;
-nomore – Т.н. параноидальный режим »Это взаимоисключающиеся режимы? Тоесть если выбрать -ms, то -full уже лучше не применять?

Drongo
30-11-2009, 15:52
И ещё вопрос.-do [опция]

reg1 - изменяет значение параметров реестра:

1. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;
NoDriveTypeAutorun=223;
2. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;
HonorAutoRunSetting=1;

reg2 - изменяет значение параметров реестра:Допустим я хочу применить команду -do с опциями reg1 и reg2. Как это сделать? Так?

-do reg1 reg2

volk1234
30-11-2009, 16:59
Drongo
Это взаимоисключающиеся режимы? »

Нет. Но вот например после -nomore уже не получится полноценно применить -full
т.к. блокируется ветка MountPoints2 и у -full не получится ее удалить и заново создать, а получится только backup рег-файл
с разрешениями, где всем разрешено только чтение....

Допустим я хочу применить команду -do с опциями reg1 и reg2. Как это сделать? Так? »

-do reg2 вообще редко применима - ибо отключает автозапуск и на CD

Последовательность команд не может быть обработана за один раз - не хотел усложнять скрипт.

надо писать так:

nmar.cmd -do reg1
nmar.cmd -do reg2

Вообще этот скрипт разрабатывался мной для интеграции в другие админ. скрипты - поэтому и сделанно управление через ключи.

Всем - особенно владельцам Висты советую запускать сначало cmd с правами Администратора естественно, а потом и нее уже выполнять последовательность комманд, так информативнее и Висте только так получится выполнить часть коммманд...

Drongo
30-11-2009, 17:41
надо писать так: »Понятно, это значит, что другие опции, работают так же.
[hr]
Опции ключа [-do] :

reg1 - изменяет значение параметров реестра:

1. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;
NoDriveTypeAutorun=223;
2. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\Explorer;
HonorAutoRunSetting=1;

reg2 - изменяет значение параметров реестра:

1. HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\AutoplayHandlers\CancelAutoplay\Files;
*.* = "";
2. HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\Autorun.inf;
@ = @SYS: DoesIsAutorunKaput;



srvoff – Останавливает и отключает службу ShellHWDetection ;
srvon– Запускает ShellHWDetection ;

mountp - очищает ветку HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2 от всех записей, информация содержащаяся в ветке сохраняется в REG- файл в папке nmar_backup для возможности восстановления.
[hr]

Запускается что-либо одно или в несколько подходов. Так?
nmar.cmd -do reg1
nmar.cmd -do reg2
nmar.cmd -do usbadd
nmar.cmd -do usbuse
nmar.cmd -do mountp

volk1234
30-11-2009, 20:37
Так, либо

nmar.cmd -full
nmar.cmd -l usbadd
nmar.cmd -l usbuse

Просто с большим количеством ключей усложняется проверка синтаксиса.

Повторюсь - всетаки главная цель - использование со скриптами - а там не сильно критично одной командой или несколькими это сделанно.

Жду предложений по улучшению функционала...




© OSzone.net 2001-2012