Последнее время на сайт приходят пользователи по запросу «userini.exe». Скорее всего, это люди столкнувшиеся с вирусом ntos.exe или подобным, который обсуждался на форуме — здесь. Хитрость заключается в том, что вирус подменяет системный файл userinit.exe, который требуется для инициализации пользователя в системе.

Настоящий userinit.exe, который находится в системной папке Windows (C:\Windows\System32\), переименовывается вирусом в userini.exe (без буквы «t»). Таким образом, на этапе инициализации пользователя система загружет вредоносный userinit.exe, т.к. вызов этого файла назначен в параметре UserInit ветки реестра (Пуск -> Выполнить -> regedit):

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon]
«UserInit» = «%System%\userinit.exe,»

Который в свою очередь совершает что-то нехорошее на компьютере и уже после своих черных дел запускает настоящий userinit, в данный момент переименованный в userini.exe (без буквы «t»).

Что происходит, когда антивирус обнаруживает файл вируса? Правильно, он его удаляет. И получается, что при следующей попытки входа в систему, файл userinit.exe не будет найден, а сеанс пользователя завершится так и не начавшись.

Если это произошло, необходимо вернуть настоящий файл userinit.exe, копия которого есть в папке: C:\WINDOWS\system32\dllcache. Понадобится загрузить компьютер с помощью загрузочной дискеты или диска, флешки, LiveCD или просто подключить жесткий диск к другому компьютеру. Если в этой папке оригинал отсутствует (добавлено: некоторые модификации вируса уже подкладывают в данную папку зараженный файл, поэтому…), необходимо его скопировать с установочного диска или с другого компьютера.

Добавлено в 2011. За полтора года мне повстречалось множество записей о всяческих разновидностях подобного вируса, который прописывает свой файл в Winlogon вместо userinit.exe — то есть, там указан файл вируса (имя файла может быть любое), который после отработки должен вызвать userinit.exe. Получается тоже самое, что и в примере выше: антивирус удаляет файл вируса и система не может начать сеанс, при том что настоящий userinit.exe может быть на своем месте и не быть испорченным. В таких случаях достаточно исправить значение параметра «UserInit» на

«C:\Windows\System32\userinit.exe,»  (с запятой) в разделе реестра:

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Winlogon.

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

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

1. Указанный в реестре файл userinit.exe в качестве инициализатора сеанса;
2. Наличие оригинального файла userinit.exe в системной папке Windows.

Однако, на сегодняшний день вирусы уже не ограничиваются подменой одного только файла userinit.exe, их жертвами также могут стать и другие не менее важные системные файлы.

См. рекомендации для общих случаев в статье: Завершение сеанса при входе в систему [Часть 2]