runonce.exe
Важно: Если runonce.exe вызывает ошибки на Вашем компьютере, следует немедленно проверить Windows.
Файл runonce.exe относится к программе Windows производителя Microsoft. Его задача: runonce.exe Позволяет продолжить установку после перезапуска системы.
Обычно runonce.exe находится в каталоге неизвестно. Если этот файл находится в другой папке на Вашем компьютере, возможно, Вы выбрали такое расположение во время установки данного программного обеспечения. Однако это может указывать и на заражение вирусами.
runonce.exe Устранить ошибку
Если runonce.exe вызывает ошибки в, причиной могут быть поврежденные записи реестра.
В большинстве случаев достаточно проверить реестр Windows на наличие ошибок runonce.exe!
Если ошибки runonce.exe не удалось устранить, рекомендуется удалить программу с помощью «Панели управления», а затем повторно проверить реестр Windows.
runonce.exe замедляет мой компьютер!
Программы и файлы могут сильно ограничить производительность Windows. В некоторых случаях такой эффект вызывает и файл runonce.exe. В сомнительном случае следует удалить соответствующую программу.
Если runonce.exe в перечне автозагрузки Windows, это может привести к замедлению работы компьютера. Рекомендуется включить автозапуск этой программы.
Наш совет: AVG TuneUp отключает излишние автоматически загружаемые программы, а также процессы Windows, уменьшая тем самым нагрузку на компьютер.
Представляет ли runonce.exe опасность для моего компьютера?
runonce.exe считается Надежно. Если он находится не в каталоге по умолчанию, это может указывать на заражение вирусами. Проверьте компьютер с помощью актуальной антивирусной программы. Наш совет: AVG Anti-Virus Free.
Вся информация о runonce.exe:
У нас имеется следующая информация о runonce.exe.
Имя продукта: Windows
Имя процесса: Процедура установки Microsoft Windows
Производитель: Microsoft
Интернет-сайт Производитель: неизвестно
Путь к файлу по умолчанию: неизвестно
Категория: Служба, являющаяся частью операционной системы.
Оценка: Надежно
Истории из жизни вредоносов: прячемся в автозагрузку ОС Windows

Основной задачей, которую необходимо решить вредоносному файлу сразу после запуска является закрепление в системе, то есть обеспечение возможно постоянной работы данного процесса в системе. То есть, злоумышленнику необходимо, чтобы процесс, с помощью которого он может получить доступ в систему (троян, бэкдор и т. д.) запускался бы автоматически при загрузке системы и работал во время всего сеанса работы системы. Существует несколько методов закрепиться в системе. В этой статье мы рассмотрим наиболее распространенные способы закрепления в ОС Windows, а также посмотрим, как некоторые из этих техник выглядят в отладчике. Будем считать, что для запуска нужного процесса злоумышленнику так или иначе необходимо запустить выполнимый файл.
Ветка Run
Начнем с наиболее известного места, где можно прописать автоматический запуск приложения при старте системы — реестра Windows. И прежде всего приложения, желающие стартовать вместе с ОС прописывают себя в ветки
Для первого варианта нам необходимы права локального администратора. Для того, чтобы прописать автоматический запуск файла, необходимо добавить новое значение в ветку Run.

Однако, важно понимать, что манипуляции с данными ветками реестра также отслеживают и средства защиты. Так антивирус будет очень внимательно следить за тем, какие приложения собираются прописать свои файлы в эти ветки реестра. И попытка неизвестного ранее приложения прописаться в ветку Run может привести к срабатыванию антивируса.
Также, если вам необходимо один раз выполнить какой-либо файл. Например, вам необходимо прописать в системе сервис, то можно воспользоваться ключом RunOnce.
Если мы хотим выполнить файл один раз для конкретного пользователя, то необходимо прописать файл в ветке:
Однако, этими, наиболее известными ветками реестра возможности спрятаться в автозагрузку не ограничиваются. Так, за автозагрузку в профиле текущего пользователя отвечают ветки реестра показанные ниже.
Посмотрим, как код, правящий реестр выглядит в отладчике.

Конечно, любой здравомыслящий вредонос постарается максимально скрыть от отладки как разделы памяти в которых указаны ветки реестра и записываемые значения, так и сами вызовы функций для работы с реестром. Но в представленном на скриншоте примере мы видим обращения к реестру: RegOpenKeyEx, RegCreateKey, RegCloseKey. По вызовам этих функций можно понять, что приложение в принципе работает с реестром. В случае, если вносятся правки в представленные выше ветки, то вероятнее всего мы имеем дело с вредоносом.
Сервисы в реестре
Еще одним способом поселиться в автозагрузку является использование системных служб – сервисов. Сервис (служба) – это приложение, автоматически исполняемое системой при запуске операционной системы Windows и выполняющиеся вне зависимости от статуса пользователя.
Существует несколько режимов для служб:
- запрещён к запуску;
- ручной запуск (по запросу);
- автоматический запуск при загрузке компьютера;
- автоматический (отложенный) запуск;
- обязательная служба/драйвер (автоматический запуск и невозможность (для пользователя) остановить службу).
Соответственно, для того, чтобы осуществить автоматический запуск какого-либо выполнимого файла, нам необходимо прописать его как сервис. И здесь кроются некоторые сложности. Дело в том, что сервис – это, не совсем обычный выполнимый файл. Для его запуска недостаточно просто создать exe файл и запустить его. Вместо этого нам необходимо зарегистрировать сервис в системе и только потом его можно запускать.
На скриншоте ниже представлен фрагмент кода, в котором формируется набор значений в стеке (в том числе имя выполняемого файла и самого сервиса) и затем все это передается функции CreateService для создания сервиса.

После того, как сервис зарегистрирован в системе его можно запустить с помощью вызова функции OpenService.

Помимо использования функций ОС предназначенных непосредственно для работы с сервисами, для регистрации и запуска сервиса можно воспользоваться командой sc. В примере ниже мы создаем процесс, который запускает команду sc start NewServ. CreateProcess не единственная функция для запуска процессов. В одной из предыдущих статей по реверсингу мы использовали функцию WinExec для запуска калькулятора при реализации переполнения буфера.

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

На скриншоте показаны параметры сервиса DHCP. Как видно, в этой ветке имеются параметры, отвечающие за параметры запуска сервиса, аккаунт, от которого он запускается и собственно сам путь к выполнимому файлу. Таким образом, работу с сервисами можно организовать с помощью манипуляций с реестром.
Скрытый отладчик
Представленные выше способы регистрации в автозагрузке в большей или меньшей степени видны пользователю системы. Так запущенные сервисы можно легко увидеть в соответствующей оснастке, а ветки Run хорошо всем известны, и можно без труда проверить их содержимое.
Однако, в реестре есть менее известные ветки, в которые тоже можно подселить выполнимый файл. В данном случае речь пойдет не совсем об автозагрузке как таковой, но при желании здесь тоже можно организовать автозапуск.
Разработчики из Майкрософт очень любят оставлять себе лазейки в виде недокументированных возможностей. В частности, они предусмотрели функционал по автоматическому запуску отладчика для заданного приложения. Работает это следующим образом: в ветке реестра
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ Image File Execution Options\
Мы создаем раздел с именем запускаемого приложения, а в этом разделе создаем параметр Debug в котором уже указываем выполнимый файл, запускаемый в реальности.

То есть, в примере на скриншоте при попытке запуска калькулятора у нас запустится некий prog.exe. Таким образом можно под видом одного приложения запустить другое. Можно к примеру подменить экранную клавиатуру (osk.exe) на командную строку (cmd.exe). В результате можно будет на заблокированном компьютере вызывать клавиатуру и получать командную строку, причем с правами System!
Небезопасные обновления
Продолжая тему реестра и размещения приложений в нем, мы можем поправить команды, которые выполняются при обновлении тех или иных компонентов. В ветке
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Active Setup\Installed Components\
Указаны GUID установленных компонентов и для многих из них можно найти параметры StubPath и Version. Далее процитируем официальную документацию Майкрософт:
При входе пользователя система сравнивает содержимое разделов HKLM\Software\Microsoft\Active Setup\Installed Components и HKCU\Software\Microsoft\Active Setup\Installed Components. Для каждого раздела в HKLM должна быть копия с тем же GUID в HKCU. Дальше есть три варианта развития событий:
1. Если копии нет, то выполняется команда, указанная в StubPath, после чего в HKCU создается раздел с тем же GUID и прочими параметрами.
2. Если копия есть, то сравнивается значение параметра Version. Если версия в HKCU младше, чем в HKLM, то задание отрабатывает повторно, после чего номер версии в HKCU обновляется.
3. Если же раздел с одинаковым GUID есть и в HKLM и в HKCU и номер версии у них совпадает, то значит компонент уже отработал для данного пользователя и запускать его не требуется.

Таким образом мы можем поиграться со значением StubPath и версиями для того, чтобы в итоге выполнить то, что нам нужно. По сути, здесь тоже можно реализовать автозагрузку.
Переселяем папки
Также с помощью реестра можно “перепрятать” разделы из меню Пуск. В ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders
Размещаются пути к различным компонентам, включая меню Автозагрузка. Соответственно, здесь мы тоже можем поменять значения параметров для того, чтобы запускать файлы из другого каталога.

Планировщик задач
Помимо реестра мы можем попробовать прописать свое приложение в XML файлы с описанием задач. В каталоге %WINDIR%\System32\Tasks находятся XML файлы в которых прописано выполнение тех или иных действий и расписание, по которому эти действия выполняются.

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

Таким образом мы получаем еще один вектор для закрепления в системе.
Заключение
В этой статье мы рассмотрели основные методы размещения выполнимых файлов в системе для автозагрузки. Знание этих методов может помочь в выявлении подозрительных активностей злоумышленников в системе.
О других инструментах для обеспечения безопасности можно узнать у экспертов в области ИБ, например на онлайн-курсах. Перед стартом обучения проходят открытые уроки от преподавателей курсов, на которых можно узнать об актуальных технологиях и задать интересующие вопросы экспертам.
- reverse-engineering
- реестр windows
- ассемблер
- Блог компании OTUS
- Информационная безопасность
- Реверс-инжиниринг
Автозагрузка и все что с ней связано
Для начала укажу все пути где можно найти автозагрузку.
И также где могут прятаться вирусы.
Предупреждение.
Редактор автозагрузки — это конечно хорошо только не увлекайтесь отключением приложений и служб, так как отключение важных служб может привести к нестабильной работе ос или вообще ее полного выхода из строя.
Редактируем только если знаем, что отключаем)
Кусты реестра отвечающие за автозагрузку.
—[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion \Run] — программы, которые запускаются при входе в систему. Данный раздел отвечает за запуск программ для всех пользователей системы.
—[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce] — программы, которые запускаются только один раз при входе пользователя в систему. После этого ключи программ автоматически удаляются из данного раздела реестра. Данный раздел отвечает за запуск программ для всех пользователей системы.
—[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx] — программы, которые запускаются только один раз, когда загружается система. Этот раздел используется при инсталляции программ, например, для запуска настроечных модулей. После этого ключи программ автоматически удаляются из данного раздела реестра. Данный раздел отвечает за запуск программ для всех пользователей системы.
—[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run] — программы, которые запускаются при входе текущего пользователя в систему
—[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce] — программы, которые запускаются только один раз при входе текущего пользователя в систему. После этого ключи программ автоматически удаляются из данного раздела реестра.
—[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices] — программы, которые загружаются при старте системы до входа пользователя в Windows.
—[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce] — программы отсюда загружаются только один раз, когда загружается система.
Стандартные папки автозагрузки
..\Documents and Settings\All Users\Главное меню\Программы\Автозагрузка (для XP)
C:\Users\All Users\Microsoft\Windows\Start Menu (vista-10)
— это папка, программы из которой будут запускаться для всех пользователей компьютера.
..\Documents and Settings\Username\Главное меню\Программы\Автозагрузка (для XP)
%AppData%\Microsoft\Windows\Start Menu\Programs (vista-10)
— это папка, программы из которой будут запускаться для текущего пользователя (за место Username Ваш пользователь).
Windows считывает данные о пути к папке «Автозагрузка» из реестра. Этот путь прописан в следующих разделах:
— [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
«Common Startup» Startup» text-align: center;»>Дополнительные кусты реестра для автозагрузки большинство программ здесь не прописываются чаще всего вирусы.
[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows]
«load»=»programma» — программы, запускаемые до входа пользователя в систему:
«run» =»programma» — программы, запускаемые после входа пользователя в систему.
— [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
Должно быть «Userinit»=»С:\WINDOWS\system32\userinit.exe,»
— [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
Должно быть «Shell»=»Explorer.exe»
— [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows]
«AppInit_DLLs» Должно быть пусто
Вроде автозагрузку указал всю пишем комментарии если чего не хватает.
Программы для изменения автозагрузки.
Лучшая, по моему мнению, идет АnvirTaskManager.
Программа для изменения автозагрузки просмотра служб и процессов работающие в данное время.
Можно отключать автозагрузку, планировщик, службы найти где этот файл, также узнать откуда этот файл запускается и примерный уровень опасности.
Функционал достаточно обширный.
Вторая программа — это утилита от Майкрософт называется Autoruns.
Функционал тоже не мал возможно отключать службы, планировщик, драйвера, также автозагрузку приложений и много чего еще.
Еще одна программа CClener можно почистить автозагрузку, планировщик и браузеры.
Программа достаточно популярная используется для очистки мусора.
И на последок стандартная программа windows тоже очень известная msconfig.
Запускается через «выполнить» сочетание клавиш Win+R. это работает в xp-7.
В windows 8-10 это функция прикручена к диспетчеру задач.
Сочетание клавиш alt+ctrl+shift, Ctrl+Shift+esc.
Подробная информацию описывал раньше.
Также забыл еще одну достаточно функциональную утилиту которая называется System Explorer
Программулина по функционалу очень похожа на АnvirTaskManager отключение автозагрузки приложений, драйверов, модули, расширение браузеров и много чего еще может.
Описывать конечно можно долго и упорно но тут больше важна суть того что данные программы во первых бесплатные и отлично подходящие для оптимизации работающей ОС.
Вот тут ссылка на скачивания АnvirTaskManager, Autoruns, CClener, System Explorer.
не забудь сохранить к себе на стену в соц сети
Разделы реестра run и RunOnce
Используйте Run разделы реестра или RunOnce для запуска программы при входе пользователя в систему. Ключ Run запускает программу каждый раз, когда пользователь входит в систему, в то время как RunOnce ключ запускает программу один раз, а затем ключ удаляется. Эти ключи можно задать для пользователя или компьютера.
Значение данных для ключа — это командная строка длиной не более 260 символов. Регистрация программ для запуска путем добавления записейкомандной строкиописания— = формы. Под ключом можно написать несколько записей. Если под каким-либо определенным ключом зарегистрировано несколько программ, порядок выполнения этих программ не определен.
Реестр Windows содержит следующие четыре Run раздела и RunOnce :
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce выполняется только при входе членов группы «Администраторы» после перезагрузки. Дополнительные сведения см. в статьях Раздел реестра RunOnce, Разработка приложений, которые выполняются при входе в систему и Устранение неполадок с клиентом Windows.
По умолчанию значение RunOnce ключа удаляется перед выполнением командной строки. Имя значения можно префиксировать RunOnce восклицательным знаком (!), чтобы отложить удаление значения до выполнения команды. Без префикса восклицательного знака, если RunOnce операция завершится сбоем, связанной программе не будет предложено выполнить при следующем запуске компьютера.
По умолчанию эти ключи игнорируются при запуске компьютера в безопасном режиме. Имя значения ключей RunOnce может иметь префикс звездочки (*), чтобы программа запускалась даже в безопасном режиме.
Программа, запускаемая из любого из этих ключей, не должна выполнять запись в ключ во время его выполнения, так как это помешает выполнению других программ, зарегистрированных в ключе. Приложения должны использовать RunOnce ключ только для временных условий, например для завершения настройки приложения. Приложение не должно постоянно воссоздать записи в , RunOnce так как это помешает установке Windows.
