Аннотация
В данной статье описано, как разделы реестра Run, RunOnce, RunServices, RunServicesOnce и RunOnceSetup связаны друг с другом и с папкой «Автозагрузка». Также в статье описывается порядок загрузки данных разделов.
Сведения, содержащиеся в этой статье, являются дополнением к следующей статье базы знаний Майкрософт:
137367 Назначение разделов «Run» системного реестра WindowsСм. в данной статье подробные сведения о каждом из этих разделов.
Дополнительная информация
В операционных системах Microsoft Windows 95, Windows 98 и Windows Millennium Edition (Me), в которых поддерживаются все разделы, данные разделы загружаются в следующем порядке:
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServicesOnce
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices
<Запрос на вход>
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnce
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
Папка «Автозагрузка»
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnceЗа исключением раздела HKEY_LOCAL_MACHINE…RunOnce, все разделы и записи в них загружаются асинхронно. Таким образом, все записи в разделах RunServices и RunServicesOnce могут выполняться одновременно.
Записи раздела HKEY_LOCAL_MACHINE…RunOnce загружаются синхронно, в неопределенном порядке.
Поскольку раздел HKEY_LOCAL_MACHINE…RunOnce загружается синхронно, все его записи должны быть загружены до того, как загрузятся записи разделов HKEY_LOCAL_MACHINE…Run, HKEY_CURRENT_USER…Run, HKEY_CURRENT_USER…RunOnce и папки «Автозагрузка».
Разделы RunServicesOnce и RunServices загружаются до входа пользователя в систему Windows 95, Windows 98 или Windows Me. Поскольку эти два раздела запускаются неодновременно с диалоговым окном входа в систему, их запуск может продолжаться и после входа пользователя. Однако, поскольку раздел HKEY_LOCAL_MACHINE…RunOnce должен загружаться синхронно, его записи не начнут загружаться, пока не закончится загрузка разделов RunServicesOnce и RunServices.
Так как конфигурация системы может быть различной (например, компьютер может быть сконфигурирован на автоматический вход в систему), следует иметь в виду, что загрузка приложения, которое зависит от других приложений, выполняющихся по завершении загрузки данных разделов, начнется только после полной загрузки этих приложений. В остальном же приведенное выше описание относится также к Microsoft Windows NT 4.0, Windows 2000 и Windows XP.
Примечания.
-
Система Windows NT 3.51 не поддерживает разделы RunOnce.
-
При запуске Windows 2000 и Windows XP в безопасном режиме разделы RunOnce игнорируются.
Ссылки
Дополнительные сведения о разделе реестра RunOnceEx см. в следующей статье базы знаний Майкрософт:
232487 Описание раздела реестра RunOnceEx (эта ссылка может указывать на содержимое полностью или частично на английском языке)Дополнительные сведения см. также в следующей статье базы знаний Майкрософт:
137367Назначение разделов «Run» системного реестра Windows
Нужна дополнительная помощь?
Есть программы, которые автоматически запускаются при загрузке системы независимо от того, хотите вы этого или нет. Поиск и остановка таких программ — сизифов труд. Автоматический запуск программ операционной системой Windows возможен из двух папок и восьми главных разделов реестра. Ниже перечислены 10 мест, откуда Windows XP, Windows 2000, Windows NT f также Windows 7 могут автоматически запускать программы в процессе загрузки системы.
10. Папка Startup.
Пользовательская папка Startup является одним из распространенных мест расположения программ, которые Windows автоматически загружает на начальном этапе работы. Папка может иметь следующий полный путь: Documents and Settings, user, Start Menu, Programs, Startup. После миграции из NT папку Startup можно найти в WinNT, Profiles, user, Start Menu, Programs, Startup.
9. Папка All Users Startup.
Еще одно распространенное место, где могут храниться автоматически запускаемые программы. Если содержимое папки Startup определяет программы, которые автоматически запускаются только для данного зарегистрировавшегося пользователя, то папка All Users Startup автоматически запускает программы вне зависимости от того, кто зарегистрировался в системе. Полный путь папки: Documents and Settings, All Users, Start Menu, Programs, Startup. После миграции из NT папку можно найти в WinNT, Profiles, user, Start Menu, Programs, Startup.
8. Раздел load.
Несколько подразделов реестра также могут автоматически запускать программы. Одно из таких тайных мест — параметр реестра load в подразделе
HKEY_CURRENT_USERSoftwareMicrosoftWindowsNTCurrentVersionWindowsload.
7. Параметр Userinit.
Параметр Userinit в разделе
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWinlogonUserinit
также может инициировать запуск программ на этапе загрузки системы. Обычно данный параметр содержит значение userinit.exe, но он может принимать значения переменных, разделяемых запятыми, так что другие программы могут добавляться в конец записи.
6. Параметр ExplorerRun.
В отличие от load и Userinit, параметр ExplorerRun находится в двух корневых разделах —
HKEY_CURRENT_USER
и
HKEY_LOCAL_MACHINE
Полные названия подразделов с параметрами
ExplorerRun: HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerRun
и
KEY_LOCAL_MACHINESOFTWAREMicrosoftWindows CurrentVersionPoliciesExplorerRun.
5. Параметр RunServicesOnce.
Параметр RunServicesOnce предназначен для запуска служебных программ до того, как пользователь зарегистрируется в системе, и до того, как запустятся программы из других подразделов. Параметр RunServicesOnce вы найдете в подразделах
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunServicesOnce
и
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows CurrentVersionRunServicesOnce.
4. Параметр RunServices.
Программы, перечисленные в RunServices, запускаются сразу после указанных в RunServicesOnce и до того, как пользователь зарегистрируется в системе. Параметр RunServices можно найти в подразделах
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunServices
и
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices.
3. Параметр RunOnceSetup.
Значение по умолчанию для RunOnceSetup определяет программы для запуска после регистрации пользователя. Параметр RunOnceSetup есть в корневых разделах
HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE.
Полные названия подразделов:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnceSetup
и
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnceSetup.
2. Параметр RunOnce.
Обычно параметр RunOnce используется для автоматического запуска программ различными средствами настройки. Этот параметр можно найти в подразделах
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce
и
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce
Параметр RunOnce в корневом разделе HKEY_LOCAL_MACHINE запускает соответствующие программы непосредственно после регистрации пользователя и до того, как запустятся программы, указанные в других параметрах Run. Параметр RunOnce в корневом разделе HKEY_CURRENT_USER запускает программы после того, как операционная система обработает другие параметры Run и содержимое папки Startup. Работая в XP, можно также проверить параметр RunOnceEx в подразделе
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx.
1. Параметр Run.
Несомненно, самое распространенное местоположение программ автозапуска — параметр Run, он находится в подразделе
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
и в
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun
Параметр Run в корневом разделе HKEY_LOCAL_MACHINE запускает программы непосредственно перед параметром Run в корневом разделе HKEY_CURRENT_USER, и указанные в обоих параметрах программы запускаются раньше, чем программы из папки Startup.
Содержание
- Run and RunOnce Registry Keys
- INFO: Описание разделов реестра Run, RunOnce, RunServices, RunServicesOnce и Startup
- Аннотация
- Дополнительная информация
- Ссылки
- RunOnce Registry Key
- Программы автоматически запускающиеся при загрузке системы
- 990x.top
- Простой компьютерный блог для души)
- RunOnce что это в автозагрузке? (процесс runonce.exe)
Run and RunOnce Registry Keys
Run and RunOnce registry keys cause programs to run each time a user logs on. The data value for a key is a command line no longer than 260 characters. Register programs to run by adding entries of the form description—string=commandline. You can write multiple entries under a key. If more than one program is registered under any particular key, the order in which those programs run is indeterminate.
The Windows registry includes the following four Run and RunOnce keys:
By default, the value of a RunOnce key is deleted before the command line is run. You can prefix a RunOnce value name with an exclamation point (!) to defer deletion of the value until after the command runs. Without the exclamation point prefix, if the RunOnce operation fails, the associated program will not be asked to run the next time you start the computer.
By default, these keys are ignored when the computer is started in Safe Mode. The value name of RunOnce keys can be prefixed with an asterisk (*) to force the program to run even in Safe Mode.
A program that is run from any of these keys should not write to the key during its execution because this will interfere with the execution of other programs registered under the key. Applications should use the RunOnce key only for transient conditions, such as to complete application setup. An application must not continually recreate entries under RunOnce because this will interfere with Windows Setup.
Источник
INFO: Описание разделов реестра Run, RunOnce, RunServices, RunServicesOnce и Startup
Аннотация
В данной статье описано, как разделы реестра Run, RunOnce, RunServices, RunServicesOnce и RunOnceSetup связаны друг с другом и с папкой «Автозагрузка». Также в статье описывается порядок загрузки данных разделов.
Сведения, содержащиеся в этой статье, являются дополнением к следующей статье базы знаний Майкрософт:
137367 Назначение разделов «Run» системного реестра WindowsСм. в данной статье подробные сведения о каждом из этих разделов.
Дополнительная информация
В операционных системах Microsoft Windows 95, Windows 98 и Windows Millennium Edition (Me), в которых поддерживаются все разделы, данные разделы загружаются в следующем порядке:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnceЗа исключением раздела HKEY_LOCAL_MACHINE. RunOnce, все разделы и записи в них загружаются асинхронно. Таким образом, все записи в разделах RunServices и RunServicesOnce могут выполняться одновременно.
Записи раздела HKEY_LOCAL_MACHINE. RunOnce загружаются синхронно, в неопределенном порядке.
Поскольку раздел HKEY_LOCAL_MACHINE. RunOnce загружается синхронно, все его записи должны быть загружены до того, как загрузятся записи разделов HKEY_LOCAL_MACHINE. Run, HKEY_CURRENT_USER. Run, HKEY_CURRENT_USER. RunOnce и папки «Автозагрузка».
Разделы RunServicesOnce и RunServices загружаются до входа пользователя в систему Windows 95, Windows 98 или Windows Me. Поскольку эти два раздела запускаются неодновременно с диалоговым окном входа в систему, их запуск может продолжаться и после входа пользователя. Однако, поскольку раздел HKEY_LOCAL_MACHINE. RunOnce должен загружаться синхронно, его записи не начнут загружаться, пока не закончится загрузка разделов RunServicesOnce и RunServices.
Так как конфигурация системы может быть различной (например, компьютер может быть сконфигурирован на автоматический вход в систему), следует иметь в виду, что загрузка приложения, которое зависит от других приложений, выполняющихся по завершении загрузки данных разделов, начнется только после полной загрузки этих приложений. В остальном же приведенное выше описание относится также к Microsoft Windows NT 4.0, Windows 2000 и Windows XP.
Система Windows NT 3.51 не поддерживает разделы RunOnce.
При запуске Windows 2000 и Windows XP в безопасном режиме разделы RunOnce игнорируются.
Ссылки
Дополнительные сведения о разделе реестра RunOnceEx см. в следующей статье базы знаний Майкрософт:
232487 Описание раздела реестра RunOnceEx (эта ссылка может указывать на содержимое полностью или частично на английском языке)Дополнительные сведения см. также в следующей статье базы знаний Майкрософт:
137367Назначение разделов «Run» системного реестра Windows
Источник
RunOnce Registry Key
All versions of Windows support a registry key, RunOnce, which can be used to specify commands that the system will execute one time and then delete.
In WindowsВ 8 and WindowsВ 8.1, RunOnce entries for installation of software-only SWENUM devices are processed during device installation. Other RunOnce entries are added to the RunOnce key. These are applied the next time the system processes the RunOnce key. Device installation does not force the system to process RunOnce entries.
In WindowsВ 7 and previous versions, immediately after a device is installed, Windows executes the command stored under the RunOnce key and then removes the key. Additionally, each time the system starts, it executes the command stored under the RunOnce key and then removes the key. Therefore, if you put a command under the RunOnce key, you cannot easily predict when it is executed.
Immediately after a device has been installed, Windows executes the command stored under the RunOnce key and then removes the key. Additionally, each time the system starts, it executes the command stored under the RunOnce key and then removes the key. Therefore, if you put a command under the RunOnce key, you cannot easily predict when it is executed.
For device installations, RunOnce registry keys can be created by using add-registry-sections, which are specified through INF AddReg directives. Each add-registry-section has the following syntax:
reg-root, [subkey], [value-entry-name], [flags], [value]
The registry root (reg-root) and subkey values for the RunOnce registry key are as follows:
HKLM, «SoftwareMicrosoftWindowsCurrentVersionRunOnce»
The value-entry-name string is omitted from a RunOnce registry entry. The type of the entry, which is indicated by the Flags value, must be either REG_SZ (Flags value of 0x00000000) or REG_EXPAND_SZ (Flags value of 0x00010000). For an entry of type REG_SZ (the default), the Flags value can be omitted.
The value parameter in a RunOnce key specifies the command to be executed. This parameter is a quoted string that has the following format:
By default, a RunOnce key is deleted after the specified command is executed. You can prefix a RunOnce key value parameter with an exclamation point (!) to defer deletion of the key until after the command runs successfully. Without the exclamation point prefix, if the specified command fails, the RunOnce key will still be deleted and the command will not be executed the next time that the system starts.
Also, by default, the RunOnce keys are ignored when the system is started in Safe Mode. The value parameter of RunOnce keys can be prefixed with an asterisk (*) to force the command to be executed even in Safe Mode.
Consider the following guidelines when you create a value string entry:
Rundll32 can appear either with or without its .exe file name extension.
DllName is the full path of a DLL or executable image. Except for a required terminating comma, the expression must not otherwise contain any commas. If no file name extension is supplied, the default extension is .dll.
EntryPoint is the name of the entry point within the DLL indicated by DllName.
Arguments is an optional substring that contains any arguments that must be passed to the specified DLL.
Exactly one space must separate the EntryPoint string from the Arguments substring.
The following code example shows the add-registry-section entry that stores a command and its arguments under the RunOnce key:
The following rules apply when you use RunOnce registry keys for device installations:
These registry keys must be used only for installations of software-only devices that are enumerated by SWENUM, the software device enumerator.
RunOnce keys must consist only of calls to Rundll32.exe. Otherwise, WHQL will not digitally sign the driver package.
The code to be executed must not prompt for user input.
Server-side installations execute in a system context. For this reason, you must be certain that the code to be executed contains no security vulnerabilities and that file permissions prevent the code from being maliciously modified.
Starting with Windows Vista, the system will not execute the commands specified by the RunOnce keys if a user without administrator privileges is logged on to the system. This could lead to incomplete or corrupted installations following a system restart.
Before the device installation application creates the RunOnce entries, it informs the current user that a user who has administrator privileges must log on after a system restart.
Источник
Программы автоматически запускающиеся при загрузке системы
Есть программы, которые автоматически запускаются при загрузке системы независимо от того, хотите вы этого или нет. Поиск и остановка таких программ — сизифов труд. Автоматический запуск программ операционной системой Windows возможен из двух папок и восьми главных разделов реестра. Ниже перечислены 10 мест, откуда Windows XP, Windows 2000, Windows NT f также Windows 7 могут автоматически запускать программы в процессе загрузки системы.
10. Папка Startup.
Пользовательская папка Startup является одним из распространенных мест расположения программ, которые Windows автоматически загружает на начальном этапе работы. Папка может иметь следующий полный путь: Documents and Settings, user, Start Menu, Programs, Startup. После миграции из NT папку Startup можно найти в WinNT, Profiles, user, Start Menu, Programs, Startup.
9. Папка All Users Startup.
Еще одно распространенное место, где могут храниться автоматически запускаемые программы. Если содержимое папки Startup определяет программы, которые автоматически запускаются только для данного зарегистрировавшегося пользователя, то папка All Users Startup автоматически запускает программы вне зависимости от того, кто зарегистрировался в системе. Полный путь папки: Documents and Settings, All Users, Start Menu, Programs, Startup. После миграции из NT папку можно найти в WinNT, Profiles, user, Start Menu, Programs, Startup.
8. Раздел load.
Несколько подразделов реестра также могут автоматически запускать программы. Одно из таких тайных мест — параметр реестра load в подразделе
7. Параметр Userinit.
Параметр Userinit в разделе
также может инициировать запуск программ на этапе загрузки системы. Обычно данный параметр содержит значение userinit.exe, но он может принимать значения переменных, разделяемых запятыми, так что другие программы могут добавляться в конец записи.
6. Параметр ExplorerRun.
В отличие от load и Userinit, параметр ExplorerRun находится в двух корневых разделах —
Полные названия подразделов с параметрами
5. Параметр RunServicesOnce.
Параметр RunServicesOnce предназначен для запуска служебных программ до того, как пользователь зарегистрируется в системе, и до того, как запустятся программы из других подразделов. Параметр RunServicesOnce вы найдете в подразделах
4. Параметр RunServices.
Программы, перечисленные в RunServices, запускаются сразу после указанных в RunServicesOnce и до того, как пользователь зарегистрируется в системе. Параметр RunServices можно найти в подразделах
3. Параметр RunOnceSetup.
Значение по умолчанию для RunOnceSetup определяет программы для запуска после регистрации пользователя. Параметр RunOnceSetup есть в корневых разделах
HKEY_CURRENT_USER и HKEY_LOCAL_MACHINE.
Полные названия подразделов:
2. Параметр RunOnce.
Обычно параметр RunOnce используется для автоматического запуска программ различными средствами настройки. Этот параметр можно найти в подразделах
Параметр RunOnce в корневом разделе HKEY_LOCAL_MACHINE запускает соответствующие программы непосредственно после регистрации пользователя и до того, как запустятся программы, указанные в других параметрах Run. Параметр RunOnce в корневом разделе HKEY_CURRENT_USER запускает программы после того, как операционная система обработает другие параметры Run и содержимое папки Startup. Работая в XP, можно также проверить параметр RunOnceEx в подразделе
1. Параметр Run.
Несомненно, самое распространенное местоположение программ автозапуска — параметр Run, он находится в подразделе
Параметр Run в корневом разделе HKEY_LOCAL_MACHINE запускает программы непосредственно перед параметром Run в корневом разделе HKEY_CURRENT_USER, и указанные в обоих параметрах программы запускаются раньше, чем программы из папки Startup.
Источник
990x.top
Простой компьютерный блог для души)
RunOnce что это в автозагрузке? (процесс runonce.exe)
Ребята всем хеллоушки. Сегодня мы с вами поговорим о такой штуке как RunOnce, которую вы видимо нашли в автозагрузке, верно? И мне что-то это не нравится.. А все дело в том, что RunOnce это название раздела реестра, откуда запускаются проги и вроде это только одноразовая автозагрузка.. Но не в этом суть. А в том что RunOnce — это название раздела реестра и почему у вас что-то сидит в автозагрузке с таким же названием? Может это попытка вас ввести в заблуждение? Типа чтобы вы поискали в интернете что такое RunOnce.. узнали что это раздел реестра и подумали — а, все нормально, эта штука безопасна.. моя первая мысль — что-то здесь нечисто…
Первое что я подумал — это вирус какой-то. Искал в интернете признаки того что это вирус и не нашел. Но я искал дальше и все таки нашел окно Конфигурация системы (msconfig) и тут я кое-что интересное обнаружил, а ну гляньте:
Ну просто нет слов. Сидит себе Runonce и запускается еще из системной папки:
И что это такое runonce.exe? Поискал у себя (Win + E > поле в правом верхнем углу) и опачки, оказывается такой файл реально существует:
Для справки я вот ребята нашел инфу о том что такое в реестре RunOnce и RunOnceEx:
То есть что такое RunOnce в реестре мы теперь знаем.
А вот файл runonce.exe.. что он делает? Мне стало очень интересно. Начал переворачивать все в интернете чтобы найти инфу. На одном форуме чел спрашивает, опасен ли runonce.exe и ему отвечают что нет, в Windows 7 такая штука может быть.
На форуме Касперского чел пишет что у него при включении компа выскакивает окно с C:WindowsSystem32runonce.exe и выскакивает после выбора пользователя, и еще пишется такое:
The NTVDM CPU has encountered an illegal instruction
Чел также пишет что ноут может во время работы сам перезагружаться. Короче ребята, я думал вам тут напишу рецепт решения траблы, но увы, дело в том что там на форуме ему сказали что-то выполнить в AVZ, какой-то скрипт, но суть в том что ему это помогло! Вот ссылка на тему (это официальный форум Касперского):
Какой вывод? В крайнем случае идите на форум этот и там по инструкции создайте тему и опишите траблу и вам скорее всего помогут
Значит ребята. Я посмотрел еще раз интернет, поискал инфу и не совсем все понятно — вирус это или нет. Должно ли быть так или нет, толком непонятно.
Ну и что делать, спросите вы? Мой план такой. Нужно создать точку восстановления и потом отключить Runonce из автозагрузки. Если будут траблы — есть точка восстановления. Если траблов не будет — в будущем Runonce можно будет удалить из автозагрузки полностью.
Значит создаем точку восстановление — зажимаем Win + R, вставляем в поле команду:
Нажали ОК, появится окно Свойства системы, выбрали системный диск и мышкой жмем по Создать (а если нужно будет восстановиться то кнопка выше так и называется):
Называть советую так чтобы было просто и понятно, я так и назову — До удаления Runonce:
Ну и все отличненько:
Все, точку мы создали, теперь можно смелее уже быть. По поводу автозагрузки, ее я анализирую при помощи AnVir Task Manager, это бесплатный инструмент для просмотра автозагрузки. Скачайте ее, реально она годная прога. У меня она уже установлена, вот я ее запустил и вот как она выглядит:
Тут вам нужно найти Runonce и нажать по нему правой кнопкой и выбрать в менюхе Отключить (я для примера выбрал amigo):
После этого из автозагрузки Runonce будет отключено и перемещено в раздел Карантин. Теперь необходимо сделать перезагрузку, после которой в принципе процесса runonce.exe в диспетчере быть не должно.
Я думал еще переименовать файл runonce.exe в папке System32, но вот подумал, он вроде идет как системный.. я пошел в папку System32, нашел файл этот и нажал по нему правой кнопкой, выбрал свойства и на вкладке Подробно в поле Описания файла вот что указано:
То есть это какая-то программа завершающей стадии установки.
Так, что теперь делать? Самое правильное — проверить комп антивирусными утилитами. Не ленитесь ребята, я серьезно! Всего нужно проверить тремя — это Dr.Web CureIt!, AdwCleaner, HitmanPro. Ребята, настоятельно советую вам проверить всеми этими утилитами. Dr.Web CureIt! скачать можно вот тут (официальный сайт):
Вот как выглядит утилита:
Вторую, то есть AdwCleaner можно скачать отсюдова (тоже офф сайт):
И как выглядит (ну у вас скорее всего будет на русском все):
Ну и HitmanPro, скачать можно тут (офф сайт):
Всеми тремя утилитами пользоваться легко, если что — смотрите инструкции в интернете, их много. Даже если утилиты не найдут угрозы в Runonce, то такая проверка компа только на пользу, ибо могут быть найдены и другие вирусы всякие. Уж поверьте мне они у вас могут быть.
Забыл сказать! Когда в AnVir Task Manager отключите Runonce, то смотрите потом пару дней не будет ли проблем. Если не будет, то идете в раздел Карантин и оттуда уже удаляете Runonce.. стоп, стоп, стоп! А может не нужно удалять? Ведь оно все равно отключено.. в связи с тем что отключено и не мешает, я бы оставил, даже не знаю зачем.. Но я узнал кое-что важное! Оказывается что в AnVir Task Manager при удалении пункта из Карантина, то там еще можно удалить сразу файл! Ну вот я нажал правой кнопкой например по Microsoft-Windows-DiskDiagnosticResolver (что за дичь не знаю) и выбрал в Редактировать > Удалить запись:
И вот теперь смотрите, появилось окошко и тут можно поставить галочку — в итоге будет и файл удален, который запускается этой записью:
Даже есть опция автоматического удаления — то есть если появится, то AnVir Task Manager сразу удалит! Ну прога какая-то прям интеллектуальная, круто одним словом! Это я вам просто показал, удалять Runonce так не нужно, это просто пример. Но опция уж реально очень полезная.
Итак, написал я тут конечно многовато.. давайте подведем итоги кратко так бы сказать.
На этом все друзья. Очень надеюсь что мои советы кому-то все таки реально помогли. Если что не так, то извините. Удачи вам и будьте счастливы!
Источник
Windows 10, поставляется с опциями для автозапуска пользовательских файлов или программ при старте операционной системы.
Это хорошо с одной стороны, так как это позволяет пользователям выбрать программы, которые будут загружаться после старта Windows. Автозагрузка, например, просто необходима таким программам как Антивирус, для обеспечения безопасности, сразу после загрузки Системы.
Но с другой стороны, не все так радужно так как программы могут сами добавляться в Автозагрузку во время установки.
По причине того — что часто не должным образом сведения доведены до пользователя, иногда программы которые используются крайне редко выполняются все время, вызывая задержки запуска вашей операционной системы.
Где хранятся записи Автозагрузки в Windows 10.
Если вы впервые озадачились автозагрузкой Windows 10, вы будете удивлены количеством мест для автозагрузки — как в виде папок на диске, в реестре, планировщик задач и с помощью групповой политики Windows.
В пользу того что организация Автозагрузки является довольно сложной говорит тот факт, что Windows поддерживает записи автозагрузки как для отдельных пользователей, так и для всех пользователей системы, а если установлена 64-разрядная версия Windows10, то используется, еще одна эксклюзивная запись для 64-битных версий.
Места хранения записей для Автозагрузки можно разделить на три группы
Папка Автозагрузка
Реестр
Планировщик заданий
Вы можете также использовать групповую политику для добавления программ в автозапуск (только если они есть в реестре Windows).
Папка Автозагрузка в Windows 10.
Папка Автозагрузка идеально подходит, когда речь идет о добавлении пользовательских программ в автозагрузку. Кроме того, очень легко добавить или удалить ярлык программы из автозагрузки.
Чтобы доступ к папке проще, Microsoft добавила ключевые слова, которые помогут вам открыть их быстро. Просто скопируйте в Адресную строку Проводника, один из представленных ниже вариантов.
Открыть папку Автозапуск для текущего пользователя
shell:startup
%appdata%MicrosoftWindowsStart MenuProgramsStartup
C:UsersUSERNAMEAppDataRoamingMicrosoftWindowsStart MenuProgramsStartup
Открыть папку Автозапуск для всех пользователей
shell:common startup
%programdata%MicrosoftWindowsStart MenuProgramsStartup
C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp
Места для хранения записей Автозагрузки: Реестр
Большая часть записей автозагрузки находятся в реестре Windows.
Нажмите Win + R и введите команду Regedit в диалоговом окне Выполнить
, нажмите Enter, чтобы открыть Реестр.
Ключи Автозагрузки (индивидуальные пользовательские)
HKCUSOFTWAREMicrosoftWindowsCurrentVersionRun
HKCUSOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionRun (only on 64-bit systems)
HKCUSoftwareMicrosoftWindows NTCurrentVersionWindowsRun
HKCUSoftwareMicrosoftWindowsCurrentVersionRunOnce (runs the program/command only once, clears it as soon as it is run)
HKCUSoftwareMicrosoftWindowsCurrentVersionRunOnceEx (runs the program/command only once, clears it as soon as execution completes)
HKCUSoftwareMicrosoftWindowsCurrentVersionRunServices
HKCUSoftwareMicrosoftWindowsCurrentVersionRunServicesOnce
Ключи Автозагрузки (все пользователи)
HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun
HKLMSOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionRun (only on 64-bit systems)
HKLMSoftwareMicrosoftWindowsCurrentVersionRunOnce (runs the program/command only once, clears it as soon as it is run)
HKLMSoftwareMicrosoftWindowsCurrentVersionRunOnceEx (runs the program/command only once, clears it as soon as execution completes)
HKLMSystemCurrentControlSetServices
HKLMSoftwareMicrosoftWindowsCurrentVersionRunServices
HKLMSoftwareMicrosoftWindowsCurrentVersionRunServicesOnce
Другие ключи автозагрузки.
Active Setup — для выполнения команды один раз для каждого пользователя при входе в систему.
HKLMSOFTWAREMicrosoftActive SetupInstalled Components
HKLMSOFTWAREWow6432NodeMicrosoftActive SetupInstalled Components
Незадокументированно.
HKLMSOFTWAREMicrosoftWindowsCurrentVersionExplorerSharedTaskScheduler
HKLMSOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionExplorerSharedTaskScheduler
Shell записи, связанные с автозагрузкой, например, элементы отображаемые при нажатии правой кнопкой мыши на файлы или папки.
HKLMSOFTWAREMicrosoftWindowsCurrentVersionExplorerShellServiceObjects
HKLMSOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionExplorerShellServiceObjects
HKLMSOFTWAREMicrosoftWindowsCurrentVersionShellServiceObjectDelayLoad
HKLMSOFTWAREWow6432NodeMicrosoftWindowsCurrentVersionShellServiceObjectDelayLoad
HKCUSoftwareClasses*ShellExContextMenuHandlers
HKLMSoftwareWow6432NodeClasses*ShellExContextMenuHandlers
HKCUSoftwareClassesDriveShellExContextMenuHandlers
HKLMSoftwareWow6432NodeClassesDriveShellExContextMenuHandlers
HKLMSoftwareClasses*ShellExPropertySheetHandlers
HKLMSoftwareWow6432NodeClasses*ShellExPropertySheetHandlers
HKCUSoftwareClassesDirectoryShellExContextMenuHandlers
HKLMSoftwareClassesDirectoryShellExContextMenuHandlers
HKLMSoftwareWow6432NodeClassesDirectoryShellExContextMenuHandlers
HKCUSoftwareClassesDirectoryShellexDragDropHandlers
HKLMSoftwareClassesDirectoryShellexDragDropHandlers
HKLMSoftwareWow6432NodeClassesDirectoryShellexDragDropHandlers
HKLMSoftwareClassesDirectoryShellexCopyHookHandlers
HKCUSoftwareClassesDirectoryBackgroundShellExContextMenuHandlers
HKLMSoftwareClassesDirectoryBackgroundShellExContextMenuHandlers
HKLMSoftwareWow6432NodeClassesDirectoryBackgroundShellExContextMenuHandlers
HKLMSoftwareClassesFolderShellExContextMenuHandlers
HKLMSoftwareWow6432NodeClassesFolderShellExContextMenuHandlers
HKLMSoftwareClassesFolderShellExDragDropHandlers
HKLMSoftwareWow6432NodeClassesFolderShellExDragDropHandlers
HKLMSoftwareMicrosoftWindowsCurrentVersionExplorerShellIconOverlayIdentifiers
HKLMSoftwareWow6432NodeMicrosoftWindowsCurrentVersionExplorerShellIconOverlayIdentifiers
Следующие ключи указывают на драйверы, которые загружаются при запуске.
HKLMSOFTWAREMicrosoftWindows NTCurrentVersionFont Drivers
HKLMSoftwareMicrosoftWindows NTCurrentVersionDrivers32
HKLMSoftwareWow6432NodeMicrosoftWindows NTCurrentVersionDrivers32
Автозагрузка Разное.
HKLMSoftwareClassesFilter
HKLMSoftwareClassesCLSID{083863F1-70DE-11d0-BD40-00A0C911CE86}Instance
HKLMSoftwareWow6432NodeClassesCLSID{083863F1-70DE-11d0-BD40-00A0C911CE86}Instance
HKLMSoftwareClassesCLSID{7ED96837-96F0-4812-B211-F13C24117ED3}Instance
HKLMSoftwareWow6432NodeClassesCLSID{7ED96837-96F0-4812-B211-F13C24117ED3}Instance
KLMSystemCurrentControlSetControlSession ManagerKnownDlls
HKCUControl PanelDesktopScrnsave.exe
HKLMSystemCurrentControlSetServicesWinSock2ParametersProtocol_Catalog9Catalog_Entries
HKLMSystemCurrentControlSetServicesWinSock2ParametersProtocol_Catalog9Catalog_Entries64
Места хранения записей для Автозагрузки в Windows 10: Редактор групповой политики
Редактор групповой политики доступен только в профессиональных версиях Windows, в то время как ключи реестра, связанные с политикой доступны во всех версиях.
Нажмите Win + R и введите команду gpedit.msc в диалоговом окне Выполнить, нажмите Enter, чтобы открыть Редактор групповой политики.
Перейдите к следующим ключам, используя структуру дерева слева, чтобы проверить, изменять, добавлять или удалять записи с помощью политик.
Конфигурация компьютера → Административные шаблоны → Система → Вход в систему → Выполнить эти программы при входе в систему
Конфигурация пользователя → Административные шаблоны → Система → Вход в систему → Выполнить эти программы при входе в систему
Соответствующие ключи реестра:
HKLMSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerRun
HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerRun
Места хранения записей для Автозагрузки в Windows 10: Планировщик Задач
Вы можете открыть планировщик задач Windows для управления задачами на операционной системе Windows, выполните следующие
Нажмите Win + R и введите команду Taskschd.msc в диалоговом окне Выполнить, нажмите Enter, чтобы открыть Планировщик задач.
Вы также можете проверить задачи с помощью Проводника Windows / File Explorer.
C:WindowsЗадачи
C:WindowsSystem32Задачи
Файлы
Следующие файлы могут быть использованы для автозагрузки программ на старте Windows.
C:autoexec.bat
C:config.sys
C:WindowsWinstart.bat
C:WindowsWininit.ini
C:WindowsDosstart.bat
C:Windowssystem.ini
C:Windowswin.ini
C:WindowsSystemautoexec.nt
C:WindowsSystemconfig.nt
Надеюсь информация представленная в статье будет полезной!
Today was one of these days. Faced with a new problem I’ve never come across before. I was trying to configure a task to run once and only once on the server was provisioned for the first time. Something like a bootstrap script. In my quest to solve that problem, I came across a thing called Run and RunOnce registry keys!
What are Run(Once) registry keys?
Who knew that these things even existed, but here we are. So what do these keys really do? Let’s grab the definition from the official documentation on [MSDN](https://msdn.microsoft.com/en-us/library/aa376977(v=vs.85).aspx» target=»_blank)
Run and RunOnce registry keys cause programs to run each time that a user logs on. The data value for a key is a command line. Register programs to run by adding entries of the form
description-string=commandline
. You can write multiple entries under a key. If more than one program is registered under any particular key, the order in which those programs run is indeterminate.
The Windows registry contains these 4 keys:
- HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun
- HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
- HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnce
- HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce
Although they look very similar, there are subtle changes which we’ll need to highlight.
HKCU keys will run the task when a specific user, while HKLM keys will run the task at first machine boot, regardless of the user logging in.
The Run registry keys will run the task every time there’s a login. The RunOnce registry keys will run the taks once and then delete that key.
If you want to ensure that a RunOnce key is deleted only if its task is run successfully, you can prepend the key name value with an exclamation mark ‘!’.
In addition, if you want the RunOnce command to run even in Safe Mode, you can prepend the key name value with an asterisk ‘*’.
This is great at so many levels because you can execute some really powerful and complex tasks during the machine’s startup. In my case, I had to apply some DNS settings using PowerShell.
Configuration
You can configure the keys manually by firing up regedit.exe
and navigating to the appropriate key.
Then you need to add a new string, give it a name and configure the appropriate task as it’s value.
However, if you aren’t not a GUI enthusiast and you prefer scripting it (I like PoSH for most things these days), you can run the following command to configure a new RunOnce task. Open a new PowerShell window and type the following:
Set-ItemProperty "HKLM:SoftwareMicrosoftWindowsCurrentVersionRunOnce" -Name '!RegisterDNS' -Value "c:WINDOWSsystem32WindowsPowerShellv1.0powershell.exe -noexit -command 'Register-DnsClient'"
And that’s all there is to it. With a couple of lines of PowerShell or a few clicks in the GUI, we can quickly setup a task to run once or at every login for a specific user or every user. A handy little utility and, as we all know, it’s the small things/wins that count, right?
Многие сталкивались с порно баннерами, блокирующими экран, кому то необходимо прописать запуск программ без полной загрузки системы, а кто то просто хочет самостоятельно проверить компьютер на наличие разных лишних программ в автозапуске, которые сразу и не видны. Этому и посвящена статья ниже.
Утилита системной конфигурации MSConfig.exe
Начиная с Windows версии 98, Microsoft поставляет утилиту «MSConfig.exe», предоставляющую удобный интерфейс для управления файлами, запускающимися при загрузке Windows. Она находится в каталоге установки Windows. Ее можно запустить из диалогового окна «Выполнить». В ней нет возможности добавлять новый элемент с именем приложения или документа для автозапуска, но можно отключать, не удаляя, любой пункт из находящихся в списках. Есть еще одна интересная возможность — проверка правильности пути, соответствующего элементу автозапуска, и удаление из списков элементов, пути к которым не верны. Возможности этого приложение достаточно убогие и годятся для пользователей системы, но никак не для администраторов. Далее в статье я, по необходимости, буду ссылаться на эту утилиту.
Автозапуск из файлов инициализации
Изложение мест автозапуска будет вестись в хронологическом порядке, начиная с первых версий Windows и устаревших технологий. Файлы инициализации достались в наследство от 16-битных версий Windows 3.x. Microsoft несколько раз декларировала, что она избавляется от устаревших файлов, но на самом деле они до сих пор обрабатываются при запуске.
В файле «Win.ini» в разделе «[windows]» есть два параметра, которые могут служить местом для автозапуска. Первый параметр это «load», второй — это «run». Содержимое по умолчанию для них — это пустая строка. Имена файлов в них не должны содержать пробелов, указание полного имени файла в двойных кавычках не допускается. В них можно перечислить несколько имен файлов через запятую. Обычно они используются для загрузки драйверов, но могут загружать «троянских коней» или «клавиатурных шпионов».
Еще один файл инициализации, который может быть использован для автоматического запуска программ, — это файл «System.ini». В этом файле в разделе «[boot]» есть параметр «shell», который хранит имя оболочки Windows. Значение по умолчанию этого параметра — «Explorer.exe». Значение «shell» может содержать список приложений для автоматического запуска как параметры командной строки «Explorer.exe». Приложение «Explorer.exe» обрабатывает командную строку и пытается запускать приложения или документы, перечисленные в командной строке. Требования к формату параметра «shell» такие же, как и у вышеупомянутых параметров файла «Win.ini». В последнее время этот параметр начал широко использоваться для запуска сетевых червей. Это делает локализацию трудно обнаруживаемой, т.к. администраторы забывают просматривать этот параметр как место для запуска деструктивных приложений.
Утилита «MSConfig.exe» позволяет просматривать состояние и редактировать содержимое этих трех параметров: «load», «run», «shell», находящихся в файлах инициализации.
Папки автозапуска
Первая папка, которая отрабатывается после завершения загрузки Windows, — это папка «Автозагрузка», которая может хранить список ярлыков (*.lnk) приложений или документов. Ее состояние можно увидеть, выйдя из меню «Пуск» в подменю «Программы». Это — папка, относящаяся к «Текущему пользователю».
Чтобы найти ее размещение, сначала надо найти в системном реестре ключ «HKEY_CURRENT_USER SOFTWARE Microsoft Windows CurrentVersion Explorer User Shell Folders», хранящий размещение всех измененных папок, и отыскать там параметр «Startup» строкового типа. Если искомый параметр отсутствует, то ее размещение по умолчанию на жестком диске прописано в системном реестре в параметре «Startup» ключа «HKEY_CURRENT_USER SOFTWARE Microsoft Windows CurrentVersion Explorer Shell Folders».
Ярлыки к приложениям, находящимся в папке «Автозагрузка», отображаются в программе для настройки системы «MSConfig.exe». Если отключить автоматический запуск какого-нибудь элемента через «MSConfig.exe», то в папке «Программы» (она же и подменю в меню «Пуск») будет создана папка с названием «Отключенные элементы запуска», куда «MSConfig.exe» и переместит отключенный элемент. Для того чтобы временно исключить ярлык из автоматической загрузки, я прибегаю к более простому способу: у необходимого ярлыка я выставлю атрибут «скрытый» и при следующей загрузке он пропускается.
Следующая папка — это «Общая» для всех пользователей папка «Автозагрузки» (Common Startup Folder), которая также отрабатывается после загрузки Windows в поисках ярлыков с документами или приложениями. Увидеть ее в подменю «Пуск» можно в Windows NT или 2000. В Windows 9.x, ME ее содержимое не отображается. Она должна хранить ярлыки общие для профилей всех пользователей. В документации Microsoft (MSDN) сказано, что эта папка создавалась для Windows. Однако ее содержимое отрабатывается, даже если Windows 95, 98, ME работают в однопользовательском режиме.
В системном реестре ее размещение на жестком диске прописано в строковом параметре «Common Startup» ключа «HKEY_LOCAL_MACHINE SOFTWARE Micro-soft Windows CurrentVersion Explorer Shell Folders», который хранит измененные пути папок. При отсутствии этого параметра следует посмотреть размещение этой папки по умолчанию в параметре «Common Startup» ключа «HKEY_LOCAL_MA-CHINE SOFTWARE Microsoft Windows CurrentVersion Explorer Shell Folders».
Список исполнимых файлов, находящихся в «Общей» (для профилей всех пользователей) папке «Автозагрузка» также показываются «MSConfig.exe». Если отключить автоматический запуск какого-нибудь элемента через «MSConfig.exe», то в той же папке, где находится папка «Общего запуска», будет создана папка с названием «Отключенные элементы запуска», куда утилитой «MSConfig.exe» будут перемещены отключенные элементы запуска.
Администраторам следует обращать внимание на содержимое этой папки как место для возможного запуска приложений.
Системный реестр: автозапуск, общий для всех версий Windows
В системном реестре Windows есть ветвь «SOFTWARE Microsoft Windows CurrentVersion», содержащая несколько групп для автоматического запуска приложений. Все эти группы могут быть как в разделе HKEY_LOCAL_MACHINE, так и в разделе HKEY_CURRENT_USER. Изложение будет общим, и все может быть экстраполировано на оба этих раздела. Если Windows используется как многопользовательская среда, другими словами, это либо Windows версий NT/2000/XP, либо 95, 98, ME с задействованными профилями пользователей, то группы запуска следует искать также в разделе «HKEY_USERS .Default». Это раздел общий для всех пользователей системы. Если Windows 95, 98, ME работают в однопользовательском режиме, то раздел «HKEY_USERS .Default» идентичен разделу HKEY_CURRENT_USER.
Итак, я приведу полные пути к ключам: «SOFTWARE Microsoft Windows CurrentVersion Run», «SOFTWARE Microsoft Windows CurrentVersion RunOnce», «SOFTWARE Microsoft Windows CurrentVersion RunOnceEx», «SOFTWARE Microsoft Windows CurrentVersion RunOnce Setup», «SOFTWARE Microsoft Windows CurrentVersion RunServices», «SOFTWARE Microsoft Windows CurrentVersion RunServicesOnce», которые могут содержать строковые параметры, с именами приложений или документов запускающиеся при старте системы. Раздел реестра «RunOnce» не поддерживается в Windows NT 3.5. Имена строковых параметров, содержащихся в этих ключах, могут быть произвольными.
Далее я приведу несколько правил, ориентируясь на которые можно лучше понять процесс и очередность запуска приложений, прописанных в тех или иных местах автозапуска:
Ключи, содержащиеся в разделе HKEY_LOCAL_MACHINE, отрабатываются раньше соответствующих ключей, находящихся в разделе HKEY_CURRENT_USER.
Содержимое ключей системного реестра «RunServices», «RunServicesOnce» обрабатывается раньше параметров ключей «Run», «RunOnce».
Запуск «RunServices» и «RunServicesOnce» происходит до выдачи окна регистрации пользователя, далее идет асинхронно с диалогом регистрации и может продолжаться и после успешно проведенной регистрации. Приложения, прописанные в параметры системного реестра, содержащиеся в ключах «RunServices» и «RunServicesOnce», запускаются асинхронно, и поэтому может возникнуть ситуация, когда они будут работать одновременно.
Запуск приложений или документов, как это следует из самого названия, прописанных в ключах «RunOnce» и «RunServicesOnce», происходит один раз, независимо от того, был он успешным или нет. Параметр, находящийся в ключе «RunOnce» или «RunServicesOnce», удаляется до запуска приложения, имя которого он содержит.
Параметры, содержащиеся в ключах «Run», «RunOnce», запускаются синхронно и в неопределенном порядке, но после того, как закончило загрузку содержимое «RunServices» и «RunServicesOnce».
Ключи системного реестра обрабатываются в следующем порядке. Первыми отрабатывается содержимое «RunServices» и «RunServicesOnce» раздела HKEY_LOCAL_MACHINE. Далее выдается окно регистрации пользователя в системе. После этого операционная система переходит к обработке ключей «RunOnce» и «Run» раздела HKEY_LO-CAL_MACHINE, далее «Run» раздела HKEY_CURRENT_USER. Следующими запускаются элементы, содержащиеся в папке «Автозагрузка». После этого наступает очередь параметров ключа «RunOnce» раздела HKEY_CURRENT_USER.
Списками параметров, автоматически запускающих приложения при старте Windows, находящихся в ключах «RunServices» и «Run», можно управлять с помощью приложения для настройки системы «MSConfig.exe». Если отключить какой-либо элемент из списка, то «MSConfig.exe» переместит этот элемента в ключ «RunServices-» или «Run-» соответственно.
Следует обратить внимание на ключ «Setup», который может содержаться в ключе «RunOnce» как в разделе HKEY_LOCAL_MACHINE, так и в разделе HKEY_CURRENT_USER. Этот ключ используется как мастером установки Windows, так и мастером «установки — удаления» программ. При отработке параметров, содержащихся в этом ключе, отображается диалоговое окно с индикатором прогресса. Имя параметра используется как имя пункта в диалоговом окне. Аналогично содержимому ключа «RunOnce», пункты ключа «RunOnce Setup» удаляются и запускаются один раз.
Еще один ключ системного реестра, на который следует обратить внимание, — это «RunOnceEx». Приведу отличия запуска параметров, находящихся в «RunOnceEx» от запуска параметров, содержащихся в ключах системного реестра «RunOnce» и «Run».
Параметры, находящиеся в ключе «RunOnceEx», запускаться не будут. Для автоматической отработки необходимо создать в нем ключ реестра, и уже в нем должны быть параметрами с именами приложений. Ключи и параметры, находящиеся в ключе «RunOnceEx», сортируются в алфавитном порядке для того, чтобы принудительно придать им строго определенный порядок запуска. Другими словами, элемент, находящийся выше по алфавиту, будет запущен раньше, независимо от того, когда он был добавлен в ключ «RunOnceEx». Приложения или файлы сценариев должны или сами себя завершать, или не требовать отдельного вмешательства для завершения, пока не завершится один элемент запуска или остановится дальнейшая отработка списка, или загрузка Windows остановится в ожидании принудительного завершения запущенного приложения. Для приложений, запущенных из ключа «RunOnceEx», в отличие от ключей «RunOnce» и «Run», отдельные процессы не создаются.
Содержимое ключей «RunOnce», «RunOnceEx», «RunOnce Setup» и «RunServicesOnce» приложением настройки системы «MSConfig.exe» не отображается.
Особенности автозапуска в Windows NT/2000/XP
В добавление к вышеперечисленным ключам, для Windows версий NT, 2000 и XP специфичен еще один ключ системного реестра — «Software Microsoft Windows NT CurrentVersion Windows Run», который может находиться в разделах LO-CAL_MACHINE или HKEY_CURRENT_USER.
В ключе «Software Microsoft Windows NT CurrentVersion Windows» могут находиться два строковых параметра «Load» и «Run», которые могут хранить списки приложений для автоматического запуска.
Эти параметры аналогичны одноименным параметрам из файла инициализации «Win.ini». При установке Windows NT (2000) поверх Windows 95, 98 значения параметров из «Win.ini» раздела «[windows]» переносятся в соответствующие параметры ключа «Software Microsoft Windows NT CurrentVersion Windows». Если в параметре указывается несколько файлов, то имена должны быть разделены пробелами. Поэтому в них невозможно прописать путь к файлу, содержащим пробелы, — двойные кавычки не принимаются. «Значение по умолчанию» для этих параметров — пробел. Программы, запущенные из параметра «Load», минимизируются при запуске.
Особенности автозапуска в Windows ME/2000/XP
У Windows версий ME, 2000 и XP появляется еще один список автозагрузки программ или документов, запускающихся после регистрации пользователя в системе, который может размещаться как в разделе HKEY_LOCAL_MACHINE, так и в разделе HKEY_CURRENT_USER. Он размещается в строковых параметрах ключа «Software Microsoft Windows CurrentVersion Policies Explorer Run». Имена параметров для этого ключа имеют особенность: они должны быть представлены в виде порядковых номеров, начиная с «1». Список, находящийся в разделе HKEY_LOCAL_MACHINE, будет отработан раньше списка раздела HKEY_CURRENT_USER.
Автозапуск при отработке Windows Logon
Отдельная группа Windows Logon для управления инициализацией при регистрации пользователя появляется в Windows NT и далее развивается Microsoft для Windows версий 2000 и XP. Параметры Winlogon находятся в системном реестре в ключе «SOFTWARE Microsoft Windows NT CurrentVersion Winlogon» раздела HKEY_LOCAL_MACHINE. Все описываемые в статье параметры, относящиеся к Winlogon, имеют строковый тип.
Параметр Shell
Параметр «Shell», отвечающий за программную оболочку, присутствует в ветви реестра «Winlogon» в версиях Windows NT, 2000 и XP.
Этот строковый параметр определяет список исполнимых файлов, обеспечивающих для операционной системы интерфейс пользователя и которые должны быть запущены вместе с программной оболочкой.
По умолчанию Windows запускает программы, перечисленные в параметре «Userinit», расположенном в ветви «Winlogon», включая и сам «Userinit.exe». Если же по какой-то причине «Winlogon» процесс не смог запустить программы, определенные в параметре «Userinit», тогда «Winlogon» переходит непосредственно к обработке исполнимых файлов, имена которых записаны в параметре «Shell».
Значение по умолчанию параметра «Shell» может варьироваться. Это — «taskman, progman, wowexec» для Windows NT и «Explorer.exe» для Windows 2000, XP.
Параметр System
Этот параметр присутствует в Windows версий NT, 2000 и XP. Он содержит список имен исполнимых файлов, запускаемых Winlogon в системном контексте во время инициализации системы. Этот список можно варьировать, редактируя значение этого параметра.
Значение по умолчанию этого параметра — «lsass.exe, spoolss.exe» для Windows NT, и «lsass.exe» для Windows 2000, XP. Интересно замечание Microsoft, приведенное в MSDN: «Этот параметр появляется, но не используется самой Windows 2000».
Параметр VmApplet
Параметр «VmApplet», запускающий приложение «Панели управления» для настройки конфигурации системы, специфичен для Windows версий 2000 и XP.
Он содержит список или один исполнимый файл, которые Winlogon-процесс запускает для того, чтобы пользователь мог скорректировать настройки виртуальной памяти, если на системном томе отсутствует страничный файл подкачки. В этом параметре не обязательно указывать расширения для имен файлов.
Значение по умолчанию этого параметра — «rundll32 shell32, Control_RunDLL «sysdm.cpl»». Не стоит без нужды и изменять значение этого параметра, потому что это может привести к изменению настроек виртуальной памяти в Windows 2000, XP.
Параметр Userinit
«Userinit» (инициализация пользователя) специфичен для версий Windows NT, 2000 и XP.
Значение этого параметра содержит исполнимые файлы, которые запускаются процессом WinLogon в контексте пользователя, при регистрации пользователя в системе.
По умолчанию Winlogon запускает «Userinit.exe», который ответственен за запуск программной оболочки и исполняет файлы сценариев для регистрации, переустанавливает сетевые соединения и затем запускает «Explorer.exe».
Значение по умолчанию параметра «Userinit»: «userinit, nddeagnt.exe» для Windows NT, «userinit» для Windows 2000, XP. Приложение «nddeagnt.exe» необходимо для запуска NetDDE — сетевого динамического обмена данными.
Расширения в именах файлов, перечисленных в этом параметре, не обязательны.
Значение этого параметра можно изменять, добавляя или убирая программы из списка.
Если необходимо запустить приложение до загрузки интерфейса пользователя вместе с «проводником» Windows, то для этого можно заменить «Userinit.exe» на имя своей программы, не забыв включить в приложение код для запуска «Userinit.exe», или поступить еще проще, создав исполнимый файл для пакетной обработки с именем «userinit.bat», со списком программ для запуска и в одной из строк прописать собственно «Userinit.exe».
P.S. Информация, систематизированная в этой статье, была адресована в первую очередь администраторам Windows-систем, а не хакерам. Все сведения, приведенные в статье, содержатся в том или ином виде в официальной документации Microsoft.
28 июня 2014
28.06.14
6
7811
Информационной безопасности пост. Часть третья: реестр, автозапуск и пара слов о диспетчере задач.
Всем привет. Я продолжаю рассказывать вам о том, какие опасности могут скрываться буквально под ближайшей ссылкой в гугле, и сегодня я поведаю о том, что нужно предпринять, если у вас возникают подозрения на заражение вашего компьютера какой-либо заразой. К сожалению, у меня одолжили блок питания моего ноутбука под Windows 7, потому скрины я представлю с Windows XP — но это некритично, ситуация схожая. Некоторые моменты могут не работать под Windows 8, и, быть может, я исправлю это недоразумение, описав её безопасность в одном из своих будущих блогов. Сам я ей не пользуюсь, но ради того, чтобы поделиться знаниями, я, возможно, поставлю её под виртуальной машиной. Прошу отписаться в комментариях, насколько это нужно.
Прежде чем я начну повествование, я дам ссылки на прошлые посты серии блогов о безопасности:
Блог первый, посвящённый возможным сценариям заражения вследствие неосторожности или незнания. Ориентирован на новичков.
Блог второй, о типах вредоносного ПО.
Итак, бывают ситуации, когда в мучениях от долгой загрузки Windows вы лезете в системный конфигуратор дабы посмотреть список программ, стартуемых при загрузке самой Windows. Так, «Пуск», «Выполнить…»,
msconfig
, «Автозагрузка»… Это мне нужно, пусть загружается само, это тоже, это можно убрать… И тут мы видим это:
Непонятный exe’шник, непонятно откуда взявшийся и непонятно что делающий. Хотя в данном случае он ручной, пусть побудет тут для примера.
И тут я сделаю небольшое отступление. С чего я решил, что это вредоносный файл, спросите вы? Дело в том, что это мой компьютер и я им управляю. Я говорю ему, что необходимо делать, а чего он делать не должен. И неизвестные процессы мне так или иначе не нужны. Вы — хозяин своей системы. Если вы не уверены в том, что это за процесс — посмотрите, к чему он относится.
Для примера возьмём со скрина выше файл igfxtray, расположенный в системном каталоге — Google подскажет, что это процесс драйвера Intel’овских интегрированных графических карт. Значит, ему можно доверять. А если мы погуглим, например, файл rundl132.exe, то узнаем, что это ПО класса MalWare. Обратите внимание на название: оно написано так, что его легко спутать по написанию с оригинальным системным файлом rundll32.exe, если бегло просматривать список процессов.
Ещё один пример, с системным файлом explorer.exe и фальшивкой, expl0rer.exe.
В Windows 7 в диспетчере задач есть полезная функция, отображение пути к образу исполняемой программы. Рекомендую воспользоваться, она очень полезна — например, в таких ситуациях:
Какой из процессов фальшивый? Оба имеют оригинальное название системного файла, оба занимают около 12-13 мегабайт и оба одновременно могут быть подлинными. Любопытствующим отвечу, что второй — фейк. Я сделал его для экспериментов и скринов — а если бы вместо него был бы вредоносный, как бы вы его различили?
Итак, вернёмся к тому странному файлу, что мы нашли в автозагрузке. Снимаем галку напротив него, идём в папку с файлом, сносим его и успокаиваемся? Как бы не так. Хорошо, если он вообще позволит себя удалить, будучи не запущенным и ничем не занятым. А что, если нет? И что, если антивирус спокойно дрыхнет себе в трее? Давайте разбираться. Первым делом обновим антивирусные базы (при условии, если вообще есть для чего их обновлять — если нет, можете скачать CureIt — это, по сути, одноразовая версия Dr.Web). Что, даже если натравить антивирус на этот файл, то он ничего не находит? В такой ситуации главное — не паниковать. Для начала отправьте подозрительный файл разработчику вашего антивируса (в самой программе должна быть эта функция), можете дождаться ответа. Но это может затянуться на длительное время. Пусть пока изучают, а мы попытаемся снести хулигана своими руками. Направляемся в диспетчер задач и отыскиваем там незванного гостя на вкладке процессов:
Нашли? Выделяйте наглеца и смело жмите на кнопку «завершить процесс».
Однако может случиться так, что через несколько секунд процесс запустится заново. И тут уж хоть затыкайте кнопку завершения процесса в диспетчере задач. Это означает, что работа основного процесса контролируется дополнительным — или вовсе службой. Кстати, иногда может помочь программа UnLocker — она выгружает процессы, которые препятствуют удалению того или иного файла, а если не получается — то попробует удалить его при перезагрузке Windows.
Если вы помните из прошлых постов серии понятие «руткит», то, возможно, вы уже задаётесь вопросом о эффекте его использования. Напомню, что руткит — это ПО для сокрытия в системе какого-либо процесса (-ов), файлов или элементов реестра. Так вот, если в системе активен так же руткит, привязанный к тому или иному паразиту, то процесса этого самого паразита в списке процессов и не будет. Опытный хакер/кракер/программист может в коде самой программы использовать хитрости для скрытия её процесса, не прибегая к помощи руткитов. Можно сказать, такая программа будет сама себя прятать. Так вот, скрыть процесс из диспетчера задач без руткита или буткита можно как минимум тремя способами (по крайней мере, столько знает ваш покорный слуга), и их эффективность, в общем-то, зависит от некоторых обстоятельств. Например, первый способ, довольно простой — организовать запуск программы от имени администратора. Ключевой момент заключается в том, что пользователь, не обладающий правами администратора, не сможет увидеть такой процесс в диспетчере задач. Эффективность стремится к нулю в домашних условиях, где пользователь обычно сидит под администраторской учётной записью (исключение — Linux, где сидеть под root’ом — дурной тон, но об этом в другой раз). Способ второй, самый распространённый, но требующий определённых знаний — использование WinAPI (Windows Application Programming Interface, интерфейс программирования приложений), а точнее, перехват его функций. Работа с API ОС Windows рассматривается при изучении, наверное, любого языка программирования, но уверенно работать с такими функциями может только опытный программист. Ну и третий способ — использовать системный процесс svchost.exe в качестве т.н. хост-процесса, то есть, управляющего. Сам по себе этот исполняемый файл необходим Windows для запуска и работы процессов из динамических библиотек (все, наверное, видели dll-файлы?). Третий способ может оказаться неэффективным в случае, если зараза сильно потребляет ресурсы компьютера — многие вирусы раскрываются именно из-за подозрений на процесс svchost.exe, постоянно жрущий слишком много памяти и нагружающий процессор до 50-70, а иногда и под 100 процентов.
svchost курильщика. Только гляньте на наглеца. Это явно ненормальное поведение для системного процесса. Будем избавляться.
При этом может использоваться подлинный svchost.exe, а может и поддельный (как уже описывалось выше на примере других системных файлов). Очень важный момент: svchost никогда и ни при каких условиях не запускается от имени обычного пользователя — за исключением вредоносной подделки.
svchost здорового человека компьютера. Вернее, Windows’а.
Итак, если зараза не использует для максировки системные процессы, первым делом нам нужно убрать её из списка автозагрузки. Это можно сделать при помощи системной утилиты msconfig, но мы пойдём другим путём — правкой реестра. Вызывается он через диалог «Выполнить» (Run), который можно найти в меню «Пуск» или же запустить сочетанием клавиш Windows и R. В появившемся окне вводим
regedit
и жмём Ok или Enter:
Правка реестра — занятие рискованное, если вы не будете соблюдать осторожность при работе с ним. Автор не несёт ответственности за удаление или модификацию ключей реестра, необходимых для нормальной работы Windows.
В реестре за автозагрузку отвечают несколько веток:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun
— автозапуск для всех пользователей
HKEY_CURRENT_USERSOFTWAREMicrosoftCurrentVersionRun
— автозапуск для текущего пользователя
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce
— разовый автозапуск, распространяется на всех пользователей. После перового выполнения автоматического старта этот ключ самостоятельно удаляется из реестра.
HKEY_CURRENT_USERSOFTWAREMicrosoftWindowsCurrentVersionRunOnce
— аналогично для текущего пользователя.
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx
— разовый автозапуск программ, распространяется на всех пользователей. Отличие ветки RunOnce от RunOnceEx в том, что из первой ветки ключи удаляются автоматически сразу после запуска приложения из этого ключа, а во втором случае — после того, как выполнение программы будет завершено.
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServices
— службы, запускаемые при старте Windows.
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunServicesOnce
— сервисы для разовой загрузки.
Это основное. Дополнительно автозагрузка контролируется ветками
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSafeBoot
Первая ветвь содержит параметры загрузки дополнительных драйверов, служб и библиотек. Загрузка эта может выполняться, по сути, на любом этапе загрузки ОС. Вторая отвечает за старт драйверов, служб и библиотек в безопасном режиме.
Если вы нашли в этих ветках что-то подозрительное — можете спокойно это оттуда удалять без последствий для самой Windows. Исключение составляют, пожалуй, две последние ветки, куда без определённых знаний лучше не соваться.
Реестр и ключи автозагрузки позволят так же определить расположение заразы. Обычно это системные папки вроде
Windows
Windowssystem32
WINDOWSTemp
подпапки
Users<USER>AppData
(для Windows Vista/7/8)
Documents and Settings<USER>Application Data
(для Windows XP)
Documents and Settings<USER>Local Settings
(опять же, XP)
Documents and Settings<USER>Local SettingsTemp
(снова XP)
Иногда встречаются в
RECYCLER
, это папка «Корзины», но чаще она используется вредителями, использующими файл autorun.inf.
Рассмотрим пример.
Открываете вы msconfig и отправляетесь на вкладку автозагрузки, или заходите в реестр, направляетесь в
HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun
, и видите там это:
Windows Explorer в ветке обычной автозагрузки реестра? Он же в автозагрузке msconfig? Сносите его оттуда нафиг. Настоящему explorer.exe не требуется использование автозагрузки, он загружается при старте Windows без этого ключа (о том, откуда он запускается, чуть ниже). К тому же оригинальный Windows Explorer располагается не в C:WindowsSystem32, а просто в папке Windows.
Запомните, где располагаются основные системные файлы. Если сомневаетесь — погуглите, саппорт-портал Microsoft и Википедия содержат ответы на множество ваших вопросов. К тому же в интернете есть множество других технических ресурсов.
Если вы удалили из автозагрузки какой-либо подозрительный файл, выгружайте его из диспетчера задач. Можете попробовать выгрузить сразу дерево процесса, но это может привести к краху системы и аварийной перезагрузке, если зараза пользуется системными процессами для своей работы.
Как только вы избавились от процесса, открывайте папку с файлами наглеца и удаляйте их. Вам может помочь безопасный режим, когда некоторые заразные файлы не запускаются. Имейте в виду, что удаление файлов-источников заразы может не спасти в силу того, что поражёнными могут оказаться системные файлы — в таком случае вам всё же придётся ждать ответа от разработчиков вашего антивируса. Но если вы знаете, какие файлы поражены, то после «убийства» хост-процесса заразы и её удаления можно заменить системные файлы исходными, с вашего дистрибутива Windows — однако это крайний случай. Как правило восстанавливать системные файлы необходимо после слишком агрессивного «лечения» поражённых файлов антивирусом. В любом случае мосле лечения полезно выполнить команду
sfc /scannow
. Для этого открываем диалог «Выполнить» («Run») с помощью меню «Пуск» или сочетанием клавиш Windows и R, в нём пишем
cmd
, и в открывшемся окне командной строки вводим эту команду. В ОС Windows XP и более ранних нам потребуется дистрибутив, с которого устанавливалась система (либо с другого, лишь бы совпадала версия Service Pack’а и язык), а, например, в Windows 7 диск не потребуется. При выполнении этой команды будет инициирована проверка системных файлов, и при необходимости они будут заменены исходными версиями. Отмечу, что эта проверка полезна при некоторых других видах неисправностей ОС Windows.
Если вы знаете конкретное название трояна (точнее, программы, под видом которой он проник) или AdWare (MalWare), можете искать в реестре и сносить всё, что содержит это самое название. Однако это не гарантирует полноценного избаления. Впрочем этот метод позволяет удалить, например, надоедливый апплет WebAlta (правда, для некоторых браузеров ещё требуется чистка пользовательского профиля — например, для Firefox, Opera или Chrome). Так же можно попробовать поискать в реестре ключи по известному названию вредоносного файла — но действовать при поиске нужно с умом, взвешивая каждое действие. В некоторых моментах ключ с упоминанием файла можно смело удалять, а иной раз — править в исходное значение.
Ещё один нюанс, связанный с реестром. Взгляните на следующий скрин:
Это кусок списка ключей реестра, расположенного в ветке
HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrentVersionWinlogon
. Эта же ветка есть и в разделе HKEY_LOCAL_MACHINE. Я не зря выделил ключ Shell, который в данном случае принимает значение Explorer.exe: читатель уже может догадаться (или уже знает ), что этот параметр отвечает за оболочку, которая будет использоваться при старте Windows. Настоятельно не рекомендую экспериментировать с этим параметром — дабы удовлетворить ваше любопытство, я сделаю это сам и покажу вам результат, к которому приводят его изменения.
Например, заменим значение этого пункта на cmd.exe:
Это изменение приведёт к тому, что при следующем входе в систему меня будет ждать не обычный графический режим Windows с его «Проводником» explorer.exe, а обычный запуск коммандной строки cmd.exe:
Никаких иконок на рабочем столе, никакой панели задач — потому что вместо explorer.exe мы попросили Windows загрузить cmd.exe. Картинка кликабельна.
И вот, что произойдёт при попытке воткнуть на место shell (оболочки) программу, которая вообще таковой не является (я прописал в соответствующий ключ обычный «Блокнот», то есть notepad.exe):
Тоже самое, никакой панели и иконок, только блокнот. Кликабельно.
К чему это я… А к тому, что на место оригинального «Проводника» Windows туда можно воткнуть модифицированный. Или вовсе не проводник, а, например, приложение-винлокер. Или рекламный баннер. Да вообще, что угодно. В случае, если у вас запускается нечто, отличное от стандартного «Проводника» и не даёт совершить никаких действий, загрузите какой-нибудь LiveCD (я настоятельно рекомендую Hiren’s Boot CD) и проверьте эти ключи оттуда — если вместо Explorer.exe там стоит что-то другое или путь к фальшивому explorer.exe — смело можете жать двойным щелчком мыши по этому параметру и вместо того, что там написано, писать простое «explorer.exe», без кавычек. Не забывайте, что этот параметр есть как в HKEY_CURRENT_USER, так и в HKEY_LOCAL_MACHINE, причём второй вариант наиболее распространён в силу своей эффективности. Что до LiveCD, то загрузившись из него, вы можете скачать антивирус и просканировать свои файлы. Упомянутый мной Hiren’s BCD содержит некоторые антивирусы в своём составе, однако базы там могут быть не самые свежие.
Иногда для диагностики и поиска заразы может потребоваться так называемый «Диагностический запуск». Активировать его можно при помощи того же
msconfig
‘а:
за неимением русской версии Windows этот скрин пришлось гуглить, чтобы было понятно, о чём речь.
Если и в таком режиме ОС не загружается должным образом, то поражены системные файлы, необходимые для базовой загрузки Windows.
Раньше я часто слышал от коллег, что в некоторых случаях может помочь восстановление системы, однако сам я не пробовал данный метод. Если кому помогало, прошу расписать в комментариях, в каком случае и как вас спасла данная функция Windows.
Итог
Пост вышел, опять же, довольно сумбурным, но, думаю, весьма информативным. Не брезгуйте утилитами вроде AdwCleaner, по возможности скачайте какой-нибудь функциональный LiveCD, например Hiren’s Boot CD, запишите его на диск и изучите его способности — чтобы не было мучительно больно, когда он вам понадобится, а его нет. Поверьте, порой они бывают незаменимы. Так же было бы неплохо, если бы вы изучили поведение основных системных файлов — так вы сможете самостоятельно отличать их от «подделок». Однако всегда помните правило: не уверен — не лезь. Если вы не уверены, что ваши действия не навредят системе, лучше ничего не трогайте. Однако автозагрузку можете править спокойно — в худшем случае Windows не станет загружать прикладные программы. Что ей самой нужно для загрузки, она и так знает. Вот только вредоносное «зверьё» может заставить её думать, что оно тоже необходимо для старта.
Следующий пост за номером 4 будет посвящён безопасности в сетях Wi-Fi. Рассмотрим настройки роутеров на примере моего TP-Link TL-WDR4300, и быть может, я найду более распространённый вариант вроде D-Link DIR-300 (ну или хотя бы DIR-320). Спасибо вам за внимание, оставляйте свои комментарии и до встречи на просторах блогов StopGame!