Научная статья на тему 'ОБНАРУЖЕНИЕ ТРОЯНСКИХ КОНЕЙ С ПОМОЩЬЮ АНАЛИЗА ПОВЕДЕНИЯ СИСТЕМЫ'

ОБНАРУЖЕНИЕ ТРОЯНСКИХ КОНЕЙ С ПОМОЩЬЮ АНАЛИЗА ПОВЕДЕНИЯ СИСТЕМЫ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
126
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
PROCESS EXPLORER / ТРОЯНСКИЙ КОНЬ / SYSINTERNALS / АНТИВИРУСНЫЕ СРЕДСТВА / TROJAN HORSE / ANTIVIRUS TOOLS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Садыков Е.Б.

Троянский конь считается одной из самых серьезных угроз компьютерной безопасности. Троянский конь - это исполняемый файл в операционной системе Windows. Этот исполняемый файл будет иметь определенные статические и динамические характеристики. Несколько системных процессов в ОС Windows будут вызываться всякий раз, когда троянский конь пытается выполнить какую-либо операцию в системе. В этой статье описывается новый метод обнаружения троянских коней с использованием динамических библиотек Windows для идентификации системных вызовов троянских коней. Process Explorer используется для идентификации вредоносных исполняемых файлов и определения того, являются ли они троянскими программами или нет.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DETECTION OF TROJAN HORSES BY MEANS OF ANALYSIS OF SYSTEMIC BEHAVIOR

Trojan horse is considered one of the most serious threats to computer security. Trojan horse is an executable file in the Windows operating system. This executable file will have certain static and dynamic characteristics. Several system processes in Windows will be called whenever a Trojan horse tries to perform any operation on the system. This article describes a new method for detecting Trojan horses using Windows dynamic libraries to identify system calls of Trojan horses. Process Explorer is used to identify malicious executables and determine whether they are Trojans or not.

Текст научной работы на тему «ОБНАРУЖЕНИЕ ТРОЯНСКИХ КОНЕЙ С ПОМОЩЬЮ АНАЛИЗА ПОВЕДЕНИЯ СИСТЕМЫ»

УДК 004

Садыков Е.Б. студент магистратуры Евразийский национальный университет им. Л.Н. Гумилева Казахстан, г. Нур-Султан Научный руководитель: Сауханова Ж.С. доцент кафедры «Информатика и информационная безопасность» Евразийский национальный университет им. Л.Н. Гумилева Казахстан, г. Нур-Султан ОБНАРУЖЕНИЕ ТРОЯНСКИХ КОНЕЙ С ПОМОЩЬЮ АНАЛИЗА

ПОВЕДЕНИЯ СИСТЕМЫ Аннотация: Троянский конь считается одной из самых серьезных угроз компьютерной безопасности. Троянский конь - это исполняемый файл в операционной системе Windows. Этот исполняемый файл будет иметь определенные статические и динамические характеристики. Несколько системных процессов в ОС Windows будут вызываться всякий раз, когда троянский конь пытается выполнить какую-либо операцию в системе. В этой статье описывается новый метод обнаружения троянских коней с использованием динамических библиотек Windows для идентификации системных вызовов троянских коней. Process Explorer используется для идентификации вредоносных исполняемых файлов и определения того, являются ли они троянскими программами или нет.

Ключевые слова: Process Explorer, Троянский конь, SysInternals, Антивирусные средства.

Sadykov Y.B. master student L.N. Gumilyov Eurasian National University Kazakhstan, Nur-Sultan Supervisor: Saukhanova Z.S. Associate Professor of the Department "Informatics and Information Security" L.N. Gumilyov Eurasian National University Kazakhstan, Nur-Sultan DETECTION OF TROJAN HORSES BY MEANS OF ANALYSIS OF

SYSTEMIC BEHAVIOR Abstract: Trojan horse is considered one of the most serious threats to computer security. Trojan horse is an executable file in the Windows operating system. This executable file will have certain static and dynamic characteristics.

Several system processes in Windows will be called whenever a Trojan horse tries to perform any operation on the system. This article describes a new method for detecting Trojan horses using Windows dynamic libraries to identify system calls of Trojan horses. Process Explorer is used to identify malicious executables and determine whether they are Trojans or not.

Keywords: Process Explorer, Trojan Horse, SysInternals, Anti-virus tools.

ВВЕДЕНИЕ

В наши дни атаки на компьютеры и сети растут с угрожающей скоростью. Сегодня наблюдается множество атак, и каждая атака имеет разные мотивы и использует разные стратегии для использования систем. Это делает обнаружение и предотвращение атак чрезвычайно трудным. Несмотря на то, что у нас есть несколько типов атак на компьютеры, такие как вредоносные программы, вирусы и черви, троянские кони используются наиболее широко, и их популярность в области безопасности растет с каждым днем. Троянские кони похожи на любую компьютерную программу, которая работает на наших компьютерах. Они делают вид, что делают авторизованные действия пользователем; однако он выполняет действия, указанные хакером для использования системы. Троянский конь в основном предоставляет удаленный доступ к компьютеру, на котором развернут Троянский конь. Троянский конь не может работать без того, чтобы пользователь системы не дал первоначального разрешения, поскольку это исполняемый файл, для его работы необходимо запустить его в своей системе. Таким образом, троянский конь создан для того, чтобы воспринимать пользователя как законное программное обеспечение. Если пользователь не запустил исполняемый файл в системе, хакер не сможет получить доступ к системе.

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

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

Троян описывается как простой исполняемый файл в операционной системе Windows. Однако у него есть некоторые свойства, которые сильно отличают его от обычных исполняемых файлов. Мы можем использовать эти свойства, чтобы обнаружить присутствие троянских коней. Трояны изначально молчат в системе, прежде чем она активируется клиентом [2].

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

Обнаружение с помощью PROCESS EXPLORER

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

Можно использовать различные инструменты для мониторинга процессов в системе. Также можно использовать Wireshark для анализа пакетов через сеть или для внедрения (dll) какой-либо формы в системный процесс, чтобы мы получали уведомления всякий раз, когда сторонний процесс пытается получить контроль над собственными системными процессами. Троянский конь состоит из раздела программных кодов. Если он работает на целевом компьютере, он должен вызывать различные функции API. Поэтому мы можем использовать неортодоксальную методологию технологии API Hook для мониторинга и перехвата троянов. Основной девиз - кодирование функции, которая вызывается каждый раз, когда запускается определенный системный процесс в Windows. Microsoft распространяет хуки преимущественно для того, чтобы помочь программистам исправлять ошибки своих приложений, но их можно использовать по-разному. Тем не менее, использование перехвата API и внедрения DLL для обнаружения того, что делает какой-то посторонний вредоносный процесс в нашей системе, является сложным делом, потому что каждый раз, когда мы внедряем (dll) в процесс, мы накладываем системную память, которая в противном случае всегда резервируется. для этого конкретного процесса. Это может привести к нескольким проблемам при одновременном использовании системы [3]. Самым простым способом мониторинга системного процесса является использование обозревателя процессов с помощью SysInternals, как показано на рисунке 1. Это инструмент, похожий на Windows Task Manager, с большей свободой в получении информации. Это может быть очень полезно при анализе и обнаружении любого вредоносного процесса / кода, запущенного в системе. Он отображает любой текущий процесс, запущенный в системе, его дочерние элементы, идентификатор процесса, описание и различную другую полезную информацию, связанную. Это может быть отличным инструментом для обнаружения троянов и вредоносных программ в системе.

Рисунок 1: Process Explorer от SysInternals

Всякий раз, когда мы ищем какие-либо вредоносные процессы, запущенные в нашей системе, мы обычно следим за процессами, которые не имеют подлинных цифровых подписей, значка / описания или названия компании. Он может жить в пользовательском каталоге или профиле пользователя. Он может содержать странные URL-адреса и иметь открытые конечные точки TCP / IP. Следовательно, в основном при использовании инструмента Process Explorer нужно искать следующие вещи: (1) если процесс упакован или нет, (2) если процесс находится в месте автозапуска, временная шкала процесса, (3) если Процесс проверяется цифровым способом и (4) содержит ли процесс какой-либо (dll), внедренный в процессы базовой системы. Упакованный означает, является ли процесс сжатым или зашифрованным. Вредоносные программы обычно используют упаковку (с использованием распространенных методов, таких как UPX), чтобы сделать антивирусную сигнатуру более трудной для сопоставления. Указание на то, упакован процесс или нет, дается определенным выделением цвета в Process Explorer. Обычно выделение фиолетовым цветом означает, что изображение процесса упаковано, как показано на рисунках 2 и 3.

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

Рисунок 2. Подозрительный процесс upnp.exe выделен фиолетовым цветом.

Также трояны и вредоносные программы обычно находятся в системном пути, который используется для автоматического запуска приложений / процессов, или они присоединяются к процессам, которые запускаются при загрузке системы. Они часто прячутся за Svchost, Rundll32 и DLL Host. Любой подозрительный процесс можно проверить, если он находится в месте автозапуска с помощью Process Explorer.

Process Explorer также показывает время жизни процесса с момента загрузки системы. Некоторые из процессов имеют естественное время жизни. Они легко запускаются с момента загрузки системы. Таким образом, используя Process Explorer, мы можем найти те, которые были запущены позже. В большинстве случаев бэкдор и вредоносные коды начинаются позже.

Проверка изображений является одним из важных инструментов, которые могут помочь в обнаружении вредоносных программ и троянов. Проверка изображения - это процесс проверки цифровой подписи на файле. Большинство легитимного программного обеспечения имеют цифровую подпись, то есть имеется защищенное от несанкционированного доступа изображение, которое идентифицирует продукт и компанию. Любой процесс, работающий в системе, можно проверить, нажав кнопку «Проверить», чтобы проверить наличие подписей. Все коды Microsoft имеют цифровую подпись, т.е. Хэш файла подписывается закрытым ключом Microsoft. Подпись проверяется путем расшифровки подписанного хэша с открытым ключом. Программы, которые не являются подлинными, не могут быть проверены, и они могут быть поставлены под подозрение.

Рисунок 3. Подозрительный файл был проверен на VirusTotal (Выделено красным).

Другая функция, которую обеспечивает Process Explorer - это представление DLL. Вредоносные программы и трояны могут скрываться внутри любого законного процесса. Как правило, такие процессы загружаются через автозапуск. Вредоносные программы присоединяются к таким процессам с помощью внедрения DLL, так что всякий раз, когда процесс запускает связанную с ним DLL, вредоносные коды запускаются. Мы также можем увидеть dll, связанные с процессами, и обнаружить любое необычное поведение.

Тестирование и анализ вредоносного программного обеспечения при

помощи Антивирусных средств

Для исследования уязвимостей Антивирусных средств (АС) был взят 1 опытный образец вредоносного программного обеспечения (ВПО). И оно будет подвергнуто следующим этапам тестирования:

• анализу ряда АС

• модификации с использованием стороннего ПО

• повторному анализу после любого изменения файла

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

Для тестирования АС мной было выбрано совершенно случайный образец ВПО. Результаты анализа мы можем увидеть на рис. 4.

Рисунок 4. Результат проверки ВПО без модификаций Как мы можем видеть из отчета онлайн сервиса - данный образец хорошо узнаваем в лабораториях специалистов, занимающихся борьбой с ВПО и разработкой антивирусных программ. Изучив отчет более детально можно сделать вывод о том, что большинство АС действительно хорошо знакомы с предложенным им, в качестве подозрительного, продуктом. В итоге 26 из 70 тестируемых АС распознали в нашем файле угрозу при прохождении теста, (рис.4)

Рисунок 5. Подробный отчет проверки ВПО без модификаций Далее, произведем модификацию опытного образца ВПО посредством криптования и подвергнем его повторному анализу.

Рисунок 6. Результат проверки упакованного первого образца ВПО Наблюдая повторный отчет (рис.6) в глаза сразу бросается снижение результативности АС. На этот раз лишь 17 антивирус из 71 смог распознать угрозу. Изучим отчет подробнее и выясним какие образцы АС не смогли справится с модифицированным файлом. (рис.7)

Acronls A « poous AVG A «e^Malware

ММ A ™ Рзк1*а Ren Gen Comedo Л "KM Win32 WUPX.Gen Чйлл

u

CrowdStrike Fl loon A Cylance A

Endgame A « Iicou» 1 mode ale cmfMencei F-Secure Д T't))ari TU' Paltbed йея Gen

RreEye A nehL rrgjt697ea673e01 tdlte Jiangmln А м.п,™Рпь

Kasper sky A * *eilW«iil>cagen Microsoft A

Palo Alto Networks A •» left ml Rising Д Г-сим^г-у'й LAfBXLOUDi

SenhnelOne A Mjuaous Pt Sophos ML A

ZoneAiarm A Ad Aware 0 O-n

AagtsLab 6 a. AhnLab-V3 о a~n

Рисунок 7. Первый подробный отчет проверки упакованного образца ВПО

На этот раз мы не увидели в списке обманутых АС продукта лаборатории Касперского, что не может не радовать пользователей этого антивируса.

АМ»Ьа О Оевп М.Уас © С «мл

Antiy-AVl ф lean Ambit О

Ava« © a*» Avast Mobile Security © Can

ВэЬэЫе 0 a-n Mdu © Clean

BilDefenOer Q Оип Bkav © can

CAT-QulckHeal © Clean ClamAV © Clean

CMC © a*. Cybereason © Dean

Cyresi © Otan DrWeb © Омп

Рисунок 8. Второй подробный отчет проверки первого упакованного образца

ВПО

При дальнейшем изучении отчета мы видим, что помимо малоизвестных названий АС стали появляться довольно известные продукты. Avast, DrWeb - широко известные бренды достаточно авторитетных производителей. Их удалось обмануть и это не может не настораживать.

Заключение

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

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

Использованные источники:

1. Т. Шуган, «Обнаружение троянского коня на основе интеллектуального анализа данных», «Нечеткие системы и обнаружение знаний», 2009. FSKD '09. Шестая международная конференция, 2009, стр. 311-314.

2. Дж. Конг, В. Сяо-Ян и Т. Хуа-Йонг, «Дерево динамических атак и его приложения для обнаружения троянских коней», в «Мультимедиа и информационные технологии» (MMIT), Вторая международная конференция 2010 г., 2010 г., С. 56-59.

3. L. Shicong, Y. Xiaochun, Z. Yongzheng, X. Jun и W. Yipeng, «Общая структура обнаружения троянских коммуникаций на основе сетевых трасс», в Networking, Architecture and Storage (NAS), 2012 IEEE 7-я Международная конференция, 2012, с. 49-58.

i Надоели баннеры? Вы всегда можете отключить рекламу.