Обнаружить троян, который не определяется антивирусом и обошёл ваш файрволл, порой задача не из тривиальных. Но не невозможная – любое действие оставляет в системе следы. Принцип обнаружения трояна в том и состоит. Предупреждаю сразу – в статье лёгких и быстрых решений не будет. Извините, что ссылок на программы будет немного – названий немало, придётся вам искать их вручную. Иначе статья попадёт в спам-список. И пригодятся вам не все из указанных. Я покажу как троян найти. Но помним: обнаружить троян – не значит вылечить.
В качестве отступления: показать и рассказать хочется многое. Но алгоритмы Яндекса и Google после “абьюзы” какого-либо недовольного читателя сайт или конкретную статью быстро заблокируют. Увы.
Как троян к вам попал?
По недогляду. И виноваты только вы. Основные пути:
- что-то скачали в сети и запустили (от документа PDF до прикольной рукоятки для автоматика в любимом шутере)
- письмо по почте (но смысл тот же, что и пунктом выше)
- к вашему компьютеру имеет доступ кто-то ещё.
Как обнаружить троян? Проверим открытые порты.
Если троян есть, он, скорее всего, нужен для отправки некой информации. Значит, ему понадобится для этого специальный канал, вход в который открывает один из портов системы. И порт этот (скорее всего, но не факт) будет из числа тех, какие системой не используются, то есть из числа зарезервированных. Следовательно, задача на этом этапе проста: внимательно изучить открытые порты и проследить за процессами, которые этими портами пользуются, и на какие адреса информация отправляется. Для операционной системы Windows вам в этом процессе на скорую руку может помочь команда netstat с флагом -an (если для выхода в интернет вы используете роутер, принцип поиска будет немного неполноценным, но читайте до конца). Закрывайте все программы и браузеры тем более. Наберите прямо сейчас в консоли команд:
Выдача в консоли формируется столбцами по принципу:
- Имя или тип протокола (TCP или UDP в основном) – читайте разницу по протоколам сами. Но если кратко – TCP идеален именно для передачи физических данных (документы, рисунки, веб-страницы). Не быстр, но стабилен и гарантирует устойчивое соединение. UDP для среднестатистического хакера бестолковый, ибо требует помимо прочего службу контроля за ошибками. Но может быть интересен как инструмент передачи данных в режиме реального времени, что, впрочем, не может его не демаскировать.
- Локальный адрес: порт. Разница между адресами описана в статье Про локальные и общественные IP. Тот, что начинается с 0.0.0.0 – пропускайте. Смотрим в сторону 192.168.Х.Х. – это адрес устройства, за которым вы сейчас. С соответствующим портом. Который собирается (Listening) или уже установил соединение (Established) со службой по…
- Внешнему адресу. Открывайте сайт типа
https://whatismyipaddress.com/ip-lookup
и пробивайте. Более развёрнутую информацию вам предоставят сторонние программы. Лично я пользуюсь утилитами TCPView, CurrPorts и IceSword. Не всегда эта информация объективна, так как процесс может затаиться до поры до времени, и не факт, что порт откроется прямо сейчас, но проверять иногда стоит.
Как обнаружить троян? Проверьте запущенные процессы.
Троян вполне способен замаскироваться под легальный процесс или даже службу Windows. Нередко трояны себя проявляют в Диспетчере задач в виде процесса типа hgf743tgfo3yrg_и_что_то_там_ещё.exe: такой троян написать – как в магазин сходить. Троян способен инфицировать процесс, загружаясь с процессом Windows и паразитируя на нём. Здесь выход только один – нам нужны специальные программы для сканирования запущенных процессов. Одним из вариантов таких программ служит What’s Running (“Уотс Ранинг” – “Что сейчас запущено“). В разное время мне приходилось использовать несколько утилит, которые зарекомендовали себя одинаково хорошо. И вот их список, приглядитесь:
- Autoruns
- KillProcess
- HijackThis
- PrcView
- Winsonar
- HiddenFinder
- Security Task Manager
- Yet Another Process Monitor
Вобщем, почаще вглядывайтесь в список процессов разными способами.
Как обнаружить троян? Проверьте реестр.
Что первым делом сделает троян? Ему нужно запускаться, а в Windows для этого существует несколько директорий и настроек. И все они находят своё отражение в настройках реестра. Windows автоматически исполняет инструкции, определяемые вот этими разделами реестра:
Run RunServices RunOnce RunServicesOnes HKEY_CLASSES_ROOT\exefile\shell\open\command
Таким образом, сканируя ключи и разделы реестра на подозрительные записи можно выявить инфекцию трояном: тот может вставить свои инструкции в эти разделы реестра для того, чтобы развернуть свою деятельность. И для того, чтобы обнаружить троян в реестре, также существует немало утилит, например:
- SysAnalyzer
- All-Seeing Eyes
- Tiny Watcher
- Registry Shower
- Active Registry Monitor
Как обнаружить троян? Он может быть в драйверах устройств.
Трояны часто загружаются под эгидой загрузки драйверов к каким-то устройствам и используют эти самые устройства как прикрытие. Этим грешат непонятные источники “драйверов для скачивания” в сети. Ничего не напоминает? А система часто предупреждает о том, что цифровая подпись драйвера отсутствует. И не зря.
Так что не спешите устанавливать скачанное из сети и не верьте глазам своим – доверяйте только официальным источникам. Для мониторинга драйверов сеть предлагает следующие утилиты:
- DriverView
- Driver Detective
- Unknown Device Identifier
- DriverScanner
- Double Driver
Как обнаружить троян? Службы и сервисы.
Трояны могут запускать некоторые системные службы Windows самостоятельно, позволяя хакеру захватить контроль над машиной. Для этого троян присваивает себе имя служебного процесса с целью избежать детектирования со стороны антивируса. Применяется техника руткита с целью манипуляции разделом реестра, в котором, к сожалению, есть где спрятаться:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services
А значит, нам придётся запастись утилитами мониторинга запущенных сервисов. Это:
- Smart Utility
- Process Hacker
- Netwrix Service Monitor
- Service Manager Plus
- Anvir Task Manager и др.
Как обнаружить троян? Нет ли его в автозагрузке?
Что мы подразумеваем под автозагрузкой? Нет, мои хорошие, это не только список записей в одноимённой папке – это было бы совсем просто. Прежде всего, это следующие разделы Windows:
- полный список служб Windows, выдаваемый одноимённой консолью. Команда быстрого запуска консоли: Выполнить (WIN + R) – services.msc. Советую открыть, отсортировать по Типу запуска и внимательно изучить все запускаемые Автоматически службы.
- папка с автоматически загружаемыми драйверами: знаменитая C:\Windows\System32\Drivers (были времена я проверял каждый из драйверов вручную)
- бывает всякое, так что загляните и в файл bootmgr (для Windows XP это boot.ini) на предмет посторонних вкраплений. Самый простой способ это сделать – вызвать утилиту Конфигурации системы: WIN + R- msconfig – вкладка Загрузка
- а раз уж вы здесь, перейдите и во вкладку загружаемых программ. Во вкладке Автозапуск мы часто ищем программы, которые тормозят запуск системы. Однако вы можете там обнаружить и трояна


- а вот теперь и папку Автозагрузки проверьте (убедитесь, что системе приказано отображать Системные файлы и папки, а также Скрытые):
-
Локальный диск С: - Program Data - Microsoft - Windows - Главное меню - Программы - Автозагрузка
-
C:\Пользователи\имя-записи\AppData\Roaming\Microsoft\Windows\Главное меню\Программы\Автозагрузка
Это не полный список ветвей. Если хотите узнать о программах, которые запускаются вместе с Windows, вы можете посмотреть на их список в статье “Опасные ветви реестра“. Из числа утилит, с помощью которых можно проводить мониторинг разделов загрузки можно выделить:
- Starter
- Security Autorun
- Startup Tracker
- Program Starter
- Autoruns
Как обнаружить троян? Проверьте подозрительные папки.
Для трояна обычное дело изменять системные папки и файлы. Проверить это можно несколькими способами:
- FCIV – командная утилита для расчёта MD5 или SHA1 файловых хешей
- SIGVERIF – проверяет целостность критических файлов, имеющих цифровую подпись Microsoft
- TRIPWIRE – сканирует и сообщает об изменениях в критических файлах Windows
- MD5 Checksum Verifier
- SysInspect
- Sentinel
- Verisys
- WinMD5
- FastSum
Как обнаружить троян? Проверьте сетевую активность приложений
В трояне нет смысла, если он не запускает сетевую активность. Чтобы проверить, какого рода информация утекает из системы, необходимо использовать сетевые сканеры и пакетные сниферы для мониторинга сетевого трафика, отправляющего данные на подозрительные адреса. Неплохим инструментом здесь является Capsa Network Analyzer – интуитивный движок представит детальную информацию, чтобы проверить, работает ли на вашем компьютере троян.
Успехов нам всем.