Администрирование автозагрузки в Windows
Дата: 04/09/2005
Тема: Программы, ОС, их настройка и установка


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

Итак, начнем.

В системном реестре автозагрузка представлена в разделах:

HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersion
Run
- программы, которые запускаются при входе пользователя в систему (для текущего пользователя). (Windows 98, 2000, XP)

HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersion
RunOnce -
программы, которые запускаются только один раз при входе пользователя в систему. После этого ключи программ автоматически удаляются из данного раздела реестра. (Windows 98, 2000, XP)

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows
CurrentVersionRun
- программы, которые запускаются при входе в систему. Данный раздел отвечает за запуск программ для всех пользователей системы. (Windows 98, 2000, XP)

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows
CurrentVersion

RunOnce - программы, которые запускаются только один раз при входе пользователя в систему. После этого параметры программ автоматически удаляются из данного раздела. Этот раздел отвечает за запуск программ для всех пользователей системы. (Windows 98, 2000, XP)

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows
CurrentVersionRunOnceEx
- программы, которые запускаются только один раз, при загрузке системы. После этого ключи программ автоматически удаляются из данного раздела реестра. Данный раздел отвечает за запуск программ для всех пользователей системы. (Windows 98, 2000, XP)

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows
CurrentVersionRunServices
-, HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows
CurrentVersionRunServices -
службы, которые загружаются при входе пользователя в Windows. (Windows 98)

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows
CurrentVersion RunServicesOnce
- службы, которые загружаются один раз при загрузке системы. (Windows 98)

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices – раздел содержит подразделы с названиями драйверов и служб, которые могут загружаться на любой стадии загрузки Windows 2000, XP. То, на каком этапе загрузки ОС будет загружен драйвер или служба отвечает параметр Start типа DWORD. Параметр Start может принимать значения:

0х0 – такое значение имеют низкоуровневые драйверы, например драйверы дисков, которые загружаются на самом раннем этапе загрузки – загрузки ядра. В случае, если какой – либо драйвер, имеющий данное значение, не был загружен система автоматически перезагружается. За загрузку драйверов, имеющих такое значение отвечает загрузчик ОС.

0х1 – данное значение имеют драйверы, которые загружаются и инициализируются после инициализации ядра ОС. В отличие от драйверов со значением параметра Start 0х0, драйверы устройств со значением 0х1 загружаются не за счет вызовов BIOS, а с помощью драйверов устройств, загруженных на стадии загрузки ядра и только что инициализированных на этой стадии.

0х2 – данное значение имеют драйверы или службы, которые должны быть загружены SCM (Диспетчером Управления Сервисами).

0х3 – данное значение имеют драйверы или службы, запускаемые Диспетчером Управления Сервисами, только в случае получения явной инструкции на загрузку.

0х4 - такое значение имеют драйверы или службы, которые не загружаются. Windows 2000, XP устанавливают в этот режим драйверы устройств в случае невозможности их загрузки SCM. Исключение составляют лишь драйверы файловых систем, которые загружаются, даже при установленном значении Start в 0х4.

Знание вышеописанных разделов необходимо при сбое системы и невозможности ее загрузки в обычном режиме, так как в таком случае ОС можно загрузить в безопасном режиме и отредактировать соответствующие разделы системного реестра или запустить утилиту конфигурирования системы MSConfig, входящую в поставку ОС. Однако, что делать если ОС не загружается и с минимальным, жизненно необходимым набором драйверов и служб, т. е. в безопасном режиме? Если это стало происходить после установки драйвера или программы, тогда стоит посмотреть список драйверов и служб, загружаемых в безопасном режиме, и проверить нет ли там драйверов от сторонних разработчиков. Эту информацию можно найти в разделе HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl
SafeBoot

Значит можно загрузиться с boot-дискеты MS-DOS, скопировать файлы отвечающие за реестр и отредактировать данный раздел на другом компьютере.

В системах Windows 9x еще одним местом запуска кода может служить раздел

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesVxD. Как видно из названия, из данного раздела загружаются виртуальные драйверы. В Windows 2000/XP программы может запускать Диспетчера Сеансов на этапе своей загрузки. Соответствующий раздел:

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl
Session Manager

параметр: BootExecute.

Но вышеописанные способы не единственные для управления автозагрузкой. В Windows 2000 для добавления программ в автозапуск можно воспользоваться Microsoft Management Console (MMC). В частности, через MMC можно отключать автозагрузку программ или подключать необходимые программы. Для этого: откройте оснастку «Групповая политика» в Windows 2000, перейдите на вкладку «Конфигурация компьютера - Административные шаблоны – Система». В правой части оснастки перейдите на пункт «Запускать указанные программы при входе в систему». По умолчанию эта политика не задана, но вы можете добавить туда программу следующим способом: включаем политику, нажимаем кнопку «Показать – Добавить», указываем путь к программе, при этом если запускаемая программа находится в папке ..WINDOWSSystem32 то можно указать только название программы, иначе придется указать полный путь к программе. При этом в системном реестре в разделе

HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows
CurrentVersionPolicies
создастся подраздел ExplorerRun с ключами добавленных программ.

Для задания программ автозапуска только для текущего пользователя создайте разделы ExplorerRun в ветви

HKEY_CURRENT_USERSoftwareMicrosoftWindows
CurrentVersionPolicies

При этом программы из этого списка не отображаются в списке программ доступных для отключения в MSConfig.exe, а также определяются не всеми менеджерами автозагрузки. Еще один тип автозагрузки – автозагрузка из особого списка –

HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrentVersionWindows

параметры:

load=«программа» – программы, запускаемые до входа пользователя в систему:

run=«программа» – программы, запускаемые после входа пользователя в систему.

Эти параметры - аналог автозагрузки из Win.ini в Windows 98.

Для того, чтобы игнорировать списки автозагрузки программ выполняемых однажды проделайте: групповая политика: «Конфигурация компьютера - Административные шаблоны - Система - Не обрабатывать список автозапуска программ, выполняемых однажды», если эту политику включить, то не будут запускаться программы, запускаемые из списка

HKEY_LOCAL_MACHINESoftwareMicrosoftWindows
CurrentVersionRunOnce

Если эта политика включена, в реестре создается следующий параметр:

HKEY_LOCAL_MACHINE SOFTWAREMicrosoftWindowsCurrentVersion

policiesExplorer

DisableLocalMachineRunOnce значение 1, тип DWORD.

Для отключения автозагрузки следует открыть запись «Отключить автозапуск» и отключить автозагрузку.

Аналогично настраивается политика для текущих пользователей: «Конфигурация пользователя - Административные шаблоны - Система - Не обрабатывать список автозапуска программ, выполняемых однажды». Параметры реестра:

HKEY_CURRENT_USERSOFTWAREMicrosoftWindows
CurrentVersion policiesExplorer

DisableLocalUserRunOnce значение 1, тип DWORD.

Одним из самых стандартных способов управления автозагрузкой – папка «Автозагрузка», в которой хранятся ярлыки к программам, которые запускаются после успешной регистрации пользователя в системе. Ярлыки в эту папку могут добавляться программами при их установке или пользователем самостоятельно. Существует две папки: общая - для всех пользователей и индивидуальная - для текущего пользователя. По умолчанию эти папки находятся в следующих директориях:
ROOTDocuments and SettingsAll UsersГлавное менюПрограммыАвтозагрузка - папка, программы из которой будут запускаться для всех пользователей ОС.
ROOTDocuments and SettingsUsernameГлавное менюПрограммыАвтозагрузка - это папка, программы из которой будут запускаться для текущего пользователя (Username – текущий пользователь). Таким образом для автоматического запуска программы после успешной регистрации пользователя в системе нужно создать ярлык к программе и поместить его в одну из вышеперечисленных папок. Следует также отметить, что если при входе пользователя в систему он зажмет клавишу Shift, то программы из папок для автозагрузки загружаться не будут.

Системный реестр не является единственным местом конфигурирования и администрирования автозагрузки программ. Автозагрузка также представлена в конфигурационных файлах ОС – Win.ini, System.ini. Разберем блоки этих файлов, откуда могут загружаться программы.

В файле Win.ini в Windows 98 автозагрузка представлена в блоке windows. Для этого определены два параметра «load» и «run». Значения этих параметров – файлы, которые должны загружаться при загрузке ОС. Если нужно указать несколько программ, то они перечисляются через запятую. Пробелы в именах файлов не допускаются. По умолчанию эти параметры содержат значения пустых строк. Загрузка программы происходит после успешной регистрации пользователя в системе. Пусть, например, нужно, чтобы автоматически загружалась программа msconfig из системного раздела с ОС. Тогда значение параметра load с пустой строки изменится на с:WindowsSystemmsconfig.exe, т. е.

load=с:WindowsSystemmsconfig.exe.

Автор: Baranov Artem







Это статья Информационный проект Ynks.Net
http://www.ynks.net

URL этой статьи:
http://www.ynks.net/modules.php?name=News&file=article&sid=125