Защита от автозапуска вирусов

Обновлено: 24.04.2024

Писал статью для блога, и решил запостить ее и на форуме - может кому-то пригодится.

Флеш-накопитель (в простонародье Флешка) есть практически у всех. Это удобное средство переноса данных, от одной машины к другой. Современные флешки компактны в размерах и имеют приличный объем памяти (в скором времени планируется выпустить на 128Гб.. если уже не выпустили). Но как и всегда, кроме плюсов есть и минусы. Наверное, каждый сталкивался с проблемой вирусов на флеш-устройствах. В этой статье я расскажу как можно предохранить свой компьютер от вирусов, заражающегося от флешек друзей. Наиболее частым случаем является распространение малварей посредством файла Autorun.inf, который запускает малварей при подключении фелшки к компьютеру.

  1. Пуск -> Выполнить -> regedit
  2. Открыть ветвь HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/
  3. Создать новый раздел Explorer (если его нет)
  4. В этом разделе создать ключ NoDriveTypeAutoRun типа DWORD (если его нет)
  5. Присвоить значение

Допустимые значения ключа:

1 - отключить автозапуск на приводах неизвестных типов
4 - отключить автозапуск сьемных устройств
8 - отключить автозапуск НЕсьемных устройств
10 - отключить автозапуск сетевых дисков
20 - отключить автозапуск CD-приводов
40 - отключить автозапуск RAM-дисков
80 - отключить автозапуск на приводах неизвестных типов
FF - отключить автозапуск вообще всех дисков.

! Разрешен множественный выбор, путем суммирования числовых значений.

Защитить свой компьютер путем отключения выполнения Autorun - это конечно хорошая идея. Но вирусы все равно так и лезут на флешку, подвергая заражению другие - незащищенные - компьютеры. Запретить запись вирусов на флеш-накопитель мы конечно не сможем, а вот их выполнение во время подключения к незащищенной машине - попробуем.

Для этого нам необходимо создать свой файл Autorun.inf, причем таким образом, чтобы он был недоступен для записи (в частности - удаления/презаписи). Конечно защиту всегда можно обойти - например снять запрет на перезаписть Autorun.inf - но вирусы, как правило, практикуют это действие очень редко.
Как это сделать? Я наткнулся на программу AntiAutoRun, которая блокирует Autorun.inf для файловой системы FAT (на флешках до 4 Гб используется очень часто).

Что касается файловой системы NTFS, то в ней достаточно в свойствах файла Auntorun.inf на вкладке Security поставить галочки на пунктах Read и Read & execute для всех пользоватлей, включая администратора.

PS: Вот нашел еще одну программу USBProtect, которая позволяет заблокировать выполнение Autorun.inf файлов на компьютере и их выполнение на носителях. Я ее не успел протестировать.


Если вы будете четко понимать, как использовать AutoRuns, вы всегда сможете определить, заражен ли ваш компьютер нежелательным ПО.

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

Что такое AutoRuns?

AutoRuns — это инструмент Microsoft, который выявляет ПО, настроенное на запуск при загрузке устройства или входе пользователя в свою учетную запись. При включении компьютера часто запускается надежное программное обеспечение. Ярким примером является Outlook, поскольку проверка электронной почты нередко являются первым действием после входа в аккаунт.

AutoRuns: основы

На изображении ниже мы видим, что AutoRuns имеет ряд вкладок, в каждой из которых содержатся данные о механизме автозапуска.


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


Во вкладке Explorer (проводник) отображается информация о следующих элементах:

Shell extensions (расширения оболочки) — это отдельные плагины для Проводника Windows (например, для предварительного просмотра файлов PDF).

Browser Helper Objects (объекты помощника браузера) — модули DLL, выполняющие роль плагинов для Internet Explorer.

Explorer Toolbars (панели инструментов проводника) — это сторонние плагины для Internet Explorer; через панель инструментов осуществляется доступ к сторонней платформе.

Active Setup Executions (выполнение задач через Active Setup) — механизм для однократного выполнения команд для каждого пользователя во время входа в систему.

Во вкладке Internet Explorer отображаются вспомогательные объекты браузера, панели инструментов Internet Explorer и расширения.


Во вкладке Scheduled Tasks (запланированные задачи) показываются задачи, которые настроены на запуск при загрузке или входе в систему (это часто используется различными семействами вредоносных программ).


Во вкладке Services (службы) отображаются все службы Windows, автоматический запуск которых запланирован при загрузке устройства.



Image Hijacks (подмена образов) представляет собой довольно коварный метод, заключающийся в том, что ключ для запуска определенного процесса в реестре Windows на самом деле запускает другой, вредоносный, процесс.


Во вкладке Boot Execute (выполнение при загрузке) отображаются места запуска, связанные с подсистемой диспетчера сеансов (smss.exe).

Известные библиотеки DLL (Known DLL) в Windows — kernel32.dll, ntdll.dll — позволяют программному обеспечению импортировать определенные функции. Некоторые вирусы устанавливают созданные разработчиком вируса вредоносные библиотеки DLL, причем в места, где вы вряд ли будете искать легитимные библиотеки DLL Windows, например во временных папках.

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


Во вкладке Print Monitors показываются библиотеки DLL, загружающиеся в службу буферизации печати. Вредоносное ПО может установить сюда вредоносную DLL.

Провайдеры Windows Local Security (LSA Providers) поддерживают процессы, связанные с безопасностью и аутентификацией.

Как использовать AutoRuns для выявления подозрительного программного обеспечения

Теперь мы хорошо представляем, что может обнаружить AutoRuns, однако на всех скриншотах выше показаны исключительно записи исключительно легитимного программного обеспечения. Как мы узнаем, является ли программа, указанная в AutoRuns, надежной или требующей дополнительной проверки (в частности, вредоносным ПО)?


На изображении выше мы видим, что во вкладке Logon показан созданный ключ запуска для файла ARP Service (выделено красным), который можно найти в следующем месте в реестре:

HKLM\Software\Microsoft\Windows\CurrentVersion\Run

В столбце Image Path (путь к образу) можно увидеть место установки программы. В данном случае путь таков: program files\arp service\arpsv.exe.

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


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



После отправки файла в столбце Virus Total (общее количество вирусов) будет показано, сколько поставщиков антивирусов классифицировали данный файл как вредоносный. На изображении ниже видно, что 55 из 76 поставщиков определили этот файл как вредоносный.


Вот несколько основных советов по выявлению вредоносного ПО с помощью AutoRuns:

Google — ваш друг! В случае малейших сомнений выполните в Google поиск имени файла и его местоположения. Задайте себе вопрос: легитимное ли это ПО и в правильном ли месте оно находится?

Проверьте описание на наличие контрольных признаков (например, грамматические ошибки или предположительно случайно сгенерированный текст — это может указывать на то, что AutoRuns обнаружил программное обеспечение, требующее детального изучения.

Ищите временные папки. Вредоносные программы часто устанавливаются во временные папки файловой системы. Если у вас есть программа, которая запускается при загрузке устройства, почему она находится во временной папке?

Как использовать AutoRuns для удаления вредоносных программ


После запуска Process Hacker можно найти вредоносное ПО, запущенное на устройстве.


Нажав на название вредоносной программы правой кнопкой мыши, мы можем найти файл на диске, выбрав Open file location (открыть расположение файла).


После этого в проводнике Windows будет открыта папка с данным файлом.


Перетащив файл в такой инструмент, как PeStudio, мы можем получить хеш файла.

Bf48a5558c8d2b44a37e66390494d08e

Переход на virustotal и определение хеша покажет, что это RAT (троян удаленного доступа), известный под именем Nanocore.



После этого AutoRuns позволяет удалить механизмы персистенции, используемые для запуска вредоносного ПО.


Теперь вирус можно удалить из проводника Windows.

Советы по использованию AutoRuns от Sysinternals

Мы не рекомендуем использовать AutoRuns в качестве единственной формы обнаружения и удаления вредоносного программного обеспечения. Если вы выявили и удалили вредоносную программу с помощью описанных методов, стоит принять во внимание следующее:

Имеются ли у вас резервные копии файлов и данных? Если ваше устройство взломали, высока вероятность того, что на нем могут находиться другие вредоносные программы. Наличие резервных копий гарантирует возможность восстановления данных устройства, что дает уверенность в полном устранении последствий вторжения.

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

Используйте функцию сравнения AutoRuns, чтобы упростить проверку на наличие нежелательного программного обеспечения, которое продолжает действовать на вашем устройстве. Для этого нужно запустить AutoRuns на неинфицированном устройстве, выбрать File (файл) и Save (сохранить).


Результаты будут сохранены в виде файла файл AutoRuns Data с расширением .arn'AutoRuns. В примере ниже я сохранил результаты как файл с именем clean.


Теперь вы можете сравнить эти результатами с результатами будущих проверок с помощью AutoRuns. Для этого выберите File (файл), а затем Compare (сравнить).


В примере ниже мы выбираем результаты, сохраненные в файле clean.


После этого AutoRuns будет показывать только новое ПО с механизмом персистенции. Это позволяет исключить легитимные программы, установленные на неинфицированном устройстве.


Чаще всего AutoRuns используется для выявления вредоносных программ, однако в этой статье мы продемонстрировали, как этот инструмент может обнаруживать разные способы, с помощью которых вредоносное ПО пытается продолжить работу на вашем устройстве.

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

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

При установке другого антивируса в Windows 10 встроенный Windows Defender должен сам автоматически отключаться. К сожалению, иногда приходится отключать Windows Defender вручную.

Чтобы полностью отключить Microsoft Defender в Windows 10 версии 2004 и выше, необходимо в качестве первого шага отключить Защиту от подделки (это требуется сделать для Windows 10, версия 1903, 1909 и выше).





Также отключить (и включить) средство защиты можно и через реестр, установив в качестве значения параметра TamperProtection 1 (активно) или 0 (отключено) в ключе HKLM\SOFTWARE\Microsoft\Windows Defender\Features.


Отключить Defender можно через реестр или редактор групповых политик. Но последний есть только в Windows 10 Pro и Enterprise. Поэтому сначала рассмотрим первый способ.

! До выполнения каких-либо действий с реестром рекомендуется создать его резервную копию. В меню редактора реестра выберите Файл → Экспорт для сохранения резервной копии.

    Запускаем утилиту работы с реестром. Например, последовательно нажимаем Пуск → Выполнить (или используем сочетание клавиш Windows+R ). В поле Открыть открывшегося окна вводим regedit и нажимаем клавишу ввода Enter .

Внимание! Утилита редактирования реестра должна быть запущена с правами администратора.


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




  • DisableBehaviorMonitoring
  • DisableOnAccessProtection
  • DisableScanOnRealtimeEnable
  • DisableIOAVProtection

Значения для всех параметров – 1.

В завершение требуется отключить службу антивирусной программы защитника Windows (сделать это в services.msc не получится).

  1. В редакторе реестра переходим по указанному пути HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WinDefend
  2. Дважды кликаем по параметру Start в правой панели редактора реестра и задаем для него значение 4.


После завершения работы с реестром перезагрузите компьютер.

После отключения Microsoft Defender иконка компонента Безопасность Windows по-прежнему будет отображаться в области уведомлений панели задач. Чтобы ее отключить:

    Откройте Диспетчер задач.



Для отключения Microsoft Defender через редактор групповых политик после отключения функции Защиты от подделки:

    Пуск → Выполнить (или нажмите сочетание клавиш Windows+R ). В поле Открыть открывшегося окна вводим gpedit.msc , затем нажимаем клавишу ввода Enter . При необходимости подтверждаем запрос службы контроля учетных записей для запуска редактора групповых политик.





  • Включить наблюдение за поведением
  • Проверять все загруженные файлы и вложения
  • Отслеживать активность программ и файлов на компьютере
  • Включить проверку процессов, если включена защита реального времени



После завершения редактирования политик принудительно обновите групповую политику. Откройте командную строку и введите: gpupdate.exe /force


После отключения Microsoft Defender иконка компонента Безопасность Windows по-прежнему будет отображаться в области уведомлений панели задач. Если вы хотите избавиться от нее, воспользуйтесь инструкцией выше.

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

По мнению некоторых экспертов, систему INF/Autorun из Windows можно считать главной дырой в безопасности компьютерных систем. В отличие от пересылки заразных программ по электронной почте, здесь даже грамотный пользователь практически не способен предотвратить заражение, ведь достаточно просто вставить устройство в разъём USB - и процесс уже необратим. Единственной профилактикой является вообще отключить Autorun, что рекомендуют делать даже эксперты по безопасности из самой компании Microsoft. Поэтому сейчас мы и пройдем этот процесс пошагово.

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

Для надежной защиты собственного компьютера от вирусов на usb-флешках достаточно отключить автозагрузку(автозапуск) на всех дисках, подключаемых к компьютеру. Это можно сделать, воспользовавшись специальными программами(Anti-autorun, например программой Autorun Cleaner или Flash Disinfector), либо выполнив ряд несложных действий (подразумевается, что все дальнейшие действия делаются с правами администратора).

Внимание! Этот и описанные ниже способы блокируют работу флеш-накопителей, использующих возможности autorun(например, флешки с доступом по отпечатку пальца - Fingerprint access). Например, Transcend .

Итак, для защиты компьютера от автостарта на флешках выполните следующие действия:
Пуск -> Выполнить -> gpedit.msc -> Конфигурация компьютера -> Административные шаблоны -> Система -> Отключить автозапуск -> Правой кнопкой мыши -> Свойства -> Включена -> Всех дисководах -> Применить.

Допустимые значения ключа:
0x1 — отключить автозапуск на приводах неизвестных типов
0x4 — отключить автозапуск сьемных устройств
0x8 — отключить автозапуск НЕсьемных устройств
0x10 — отключить автозапуск сетевых дисков
0x20 — отключить автозапуск CD-приводов
0x40 — отключить автозапуск RAM-дисков
0x80 — отключить автозапуск на приводах неизвестных типов
0xFF — отключить автозапуск вообще всех дисков

Значения могут комбинироваться суммированием их числовых значений.

Значения по умолчанию:
0x95 - Windows 2000 и 2003 (отключен автозапуск сьемных, сетевых и неизвестных дисков)
0x91 - Windows XP (отключен автозапуск сетевых и неизвестных дисков)

Не стоит забывать о том, что все изменения в реестре вступают в силу после перезагрузки.
Также есть вариант отключения службы "Shell Hardware Detection"("Определение оборудования оболочки").

Следующий же метод представляет более расширенные возможности удаления потенциально опасных брешей в безопасности системы, связанных в том числе и с автозапуском. Именно этот способ является рекомендуемым.
Создайте произвольный reg-файл(например с именем noautorun.reg(см. вложение)) и следующим содержимым:

Еще раз - НЕ открывать флешки двойным щелчком из "Мой компьютер", если Вы не уверены в ее "чистоте" и "адекватных" свойствах Вашей системы.
И переходим ко второму обязательному этапу:


Весьма радикальным методом является использование флеш-устройств с возможностью защиты от записи(write-protect) или миниатюрных USB-кардридеров, использующих SD-карты с возможностью защиты от записи. Достаточно защищенными от проникновения вирусов являются некоторые модели флешек с аутентификацией по отпечатку пальца(Fingerprint access)-такая защита вызвана особенностью архитектуры подобных флешек, поскольку у них уже существует файл autorun.inf, обеспечивающий запуск приложения аутентификации, и удалить его стандартными средствами невозможно. Этот вариант имеет минус в том случае, когда появляется необходимость что-то записать на флешку а значит открыть доступ и вирусам. Кроме того, необходимо постоянно помнить о необходимости держать переключатель в соответствующем положении. Если уж на то пошло, то наиболее эффективна аппаратно-программная комбинация защиты, о программной части которой и пойдет речь ниже.

Итак, способ первый:
Создается bat-файл (например, с именем flashprotect.bat(см. вложение)) и следующим содержимым:

attrib -s -h -r autorun.*
del autorun.*
mkdir %~d0AUTORUN.INF
mkdir "?%~d0AUTORUN.INF.."
attrib +s +h %~d0AUTORUN.INF

In the ANSI version of this function, the name is limited to MAX_PATH characters. To extend this limit to 32,767 wide characters, call the Unicode version of the function and prepend "\\?\" to the path.

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

Проблема этого способа - в возможности переименования папки. После этого, как сами понимаете, запись файла autorun.inf становится возможной.

Суть состоит в форматировании флешки в файловую систему NTFS. Сделать это можно:
- встроенными средствами Windows
Пуск -> Выполнить -> cmd

- если данные на флэшке нужны и их некуда сбэкапить.
Следует учитывать определенный риск такой операции(для данных, конечно) поэтому по-настоящему ценные данные лучше куда-нибудь сбросить.
Обратная опрерация штатными средствами Windows неосуществима.
или

-сторонними утилитами
В числе таковых большинство программ для работы с дисками и разделами, а также простые утилиты форматирования флешек вроде HP USB Disk Storage Format Tool(см. вложение).

После того, как файловая система на нашей флешке стала NTFS, начинаем настраивать разрешения.
Разберем два варианта - через консольную утилиту cacls для Windows XP Home и обычный гуевый вариант в Pro.
Вариант через GUI используя вкладку "Безопасность":

  • Чтение и выполнение
  • Список содержимого папки
  • Чтение

Вариант через консоль cmd:

-Проверяем текущее состояние Таблицы управления доступом(ACL):

Еще один способ:
Создаем в корне флешки файл autorun.inf. А в нем такие строки:
[autorun]
icon=[имя иконки].ico
label=[метка тома, любой текст]

При следующем подключении флешки на системе с неотключенным атозапуском иконка флешки смениться на указанную в файле(иконка должна быть на флешке, необязателно в корне - тогда прописываем путь), а буква флешки - на указанную метку. Эффективность способа проявляется постфактум, т.е. на незащищенной от автозапуска машине при следующем подключении отработает вредоносный авторан. А на защищенной Вы и своей иконки не увидите. Работает это в одном случае - если на одной и той же машине повторно вставить флешку. Тогда индикация сработает и вред системе нанесен не будет(если на флешку таки записался вирус) - она уже заражена.

2. Можно ли защитить флешку средствами Linux?

Можно. Но для этого флешка должна быть отформатирована в файловую систему FAT16.
Таким образом максимально возможно использовать 4Гб флешку и то при условии форматирования ее с размером кластера в 64Кб, что не везде поддерживается.
Втыкаем флешку в компьютер с установленным линуксом, предположим, что флешка определилась как устройство /dev/sdc1.
Выполняем такую последовательность команд (все данные при этом будут уничтожены!):

Вынимаем флешку, втыкаем её в компьютер с Windows. Для эстетичности устанавливаем на файл "XXXX. " атрибут "Скрытый". Свои документы храним в папке "Documents".

В чём смысл этих действий?
В файловой системе FAT количество элементов корневого каталога ограничено и задаётся в момент форматирования, причём файлы с длинными именами занимают несколько элементов каталога. Создав корневой каталог минимальной длины(16 элементов) и заняв почти все их длинным именем файла(160 символов X) оставшиеся занимаем папкой "Documents". Больше в корневой каталог ничего не поместится.

Чтобы совершить подобное под Windows нужна программа форматирования, в которой можно задать произвольные параметры FAT. Такой возможностью является утилита fsutil.
Я не привожу реализации этого способа в Windows по причине негибкости. Да и в конце концов вирус может удалить какой-то файл и записать свой или дозаписать себя к существующим, удалив а потом добавив заполненный мусором файл подходящего размера.

3. Слышал про способ аппаратной защиты от записи используя кардридер и карту памяти с переключателем(Lock). Работает ли это?
Да, этот способ рабочий и обеспечивает теоретически 100% защиту от записи путем аппаратной блокировки. Но на практике встречаются отзывы о том, что запись на карту все-таки возможна, несмотря на переключатель. Парадоксально - но некоторые кардридеры игнорируют положение переключателя Lock на карте. В основном это касается старых и нонейм-моделей.
Поэтому в целом этот способ можно считать достаточно надежным.

4. Какие еще способы защиты существуеют или на основании чего они могут быть созданы?

  • Использование возможностей файловой системы ExFAT.
  • Использование возможностей файловой системы EXT2/3/4.
  • Использование возможностей файловой системы UDF.

Universal Disk Format(UDF) also known by the specifications ISO/IEC 13346 and ECMA-167, is a vendor-neutral and medium-agnostic file system for computer data storage. As intended, initially UDF operated mainly on optical media. Most operating systems needed special third-party software to support reading it. Nowadays, almost all operating systems natively support at least reading UDF file systems, and many support some form of writing as well. Because of this increased support, UDF is gaining popularity on non-optical media that mainly need to be exchangeable, such as Iomega REV discs, large flash media, and even on hard disk drives.

5. Выпускаются ли сегодня флешки с аппаратной защитой от записи?

Пока все. Надеюсь на дельные и интересные комментарии и дополнения по теме.

Читайте также: