Диссертация (1144110), страница 6
Текст из файла (страница 6)
При этом, такой метод также должен обладатьинвариантностью к способу его реализации в КФС различного типа, что сделаетего универсальным решением проблем безопасности КФС.1.3.2Проблема выявления современного ВПО, функционирующего наузлах системы управления КФСДля того, чтобы сформулировать проблему обнаружения нарушений ИБКФС, связанных с внедрением злоумышленниками ВПО на компоненты системыуправления КФС, следует проанализировать, какими особенностями обладаетсовременное ВПО, чтобы в дальнейшем учесть эти особенности при разработкеметода выявления современного ВПО, направленного на нарушение ИБ системыуправления КФС.
При этом, анализ должен касаться каждого уровня системы.Для обнаружения нарушений на уровне приложений ОС используютсяантивирусные средства, которые преимущественно реализуют сигнатурныйподход для обнаружения ВПО. К преимуществам данного подхода можно отнести28его высокую точность. а к недостаткам – неспособность обнаруживать новые илимодифицированные образцы ВПО, а также рост числа сигнатур в базе инеобходимость ее регулярного обновления. На данном уровне также используютсяповеденческиеметоды,контролирующиепроцессработыпрограммиобнаруживающие системные аномалии.
Существуют также решения, реализующиерейтинговую систему оценки уровня опасности объектов. Принятие решения о том,является ли программа вредоносной или нет, может основываться как насовпадении с шаблонами, так и на вероятностной оценке. В настоящее времяможно сделать вывод о том, что для данного уровня системы большинство ВПОтакого типа может быть обнаружено.Для обнаружения нарушений ИБ и ВПО на уровне ядра ОС примененияметодов,аналогичныхметодам,работающимнауровнеприложений,недостаточно.
Это связано с тем, что значительная часть современного ВПОориентирована на то, чтобы просуществовать в скомпрометированной системе какможно дольше, в связи с чем такое ВПО использует различные сложные техникидля сокрытия внедренного в систему вредоносного кода. Это приводит к тому, чтоВПО данного уровня имеет также функционал, действующий на уровне ядра ОС.Это дает ему возможность перехвата системных вызовов компонентовпользовательского режима и фильтрации возвращаемых данных. Среди ВПОданного типа распространены технологии захвата таблицы вызовов, перехвата APIфункций, модификации системных структур данных.
Это позволяет ВПО вноситьизменения в данные на системном уровне в обход средств защиты, а такжескрывать процессы, файлы и сетевые соединения. Например, вредоноснаяпрограммаSpamTool.Win32.Mailbot.aимеетвсоставетрикомпонента:исполняемый файл, выполняющий функцию дроппера, DLL и драйвер уровня ядра.Исполняемый файл устанавливает остальные компоненты, DLL внедряется впроцесс Winlogon.exe в момент старта системы, а драйвер перехватывает функцииnt!NtEnumerateKey,nt!NtEnumerateValueKeyиnt!NtQueryDirectoryFile,предназначенных для сокрытия всех файлов, созданных ВПО, и запросыIRP_MJ_CREATE, IRP_MJ_CLOSE, IRP_MJ_DEVICE_CONTROL для сокрытия29TCP и UDP-соединений, устанавливаемых DLL [33]. К методам обнаружения ВПОуровня ядра ОС относят сигнатурный и поведенческий анализ, проверкуцелостности файлов и анализ памяти.
Современный уровень развития ВПОхарактеризуется также появлением аппаратных решений, представляющих собойзащищенныйсопроцессор,реализующийфункциисистемыобнаружениявторжения [34]. Современные механизмы обнаружения ВПО не всегда способнысправиться с ВПО такого типа, в связи с чем требуется большое число ручныхопераций для исследования ПО и подтверждения того, что оно реализуетвредоносные функции.Триггером к эволюции ВПО стало развитие технологий аппаратнойвиртуализации.
Современное ВПО получило способность сокрытия от средствзащиты, которые работают внутри операционной системы, путем возможностифункционирования на уровне гипервизора. Это также привело к тому, чтомеханизмы обнаружения ВПО переместились на более высокий уровеньпривилегий, чем ядро ОС. Работа механизмов защиты на уровне гипервизоразатрудняетсокрытиевредоноснойдеятельности,таккаквседействия,совершаемые над системными журналами и файлами, могут быть перехвачены.Однако, с другой стороны, появляется проблема нормализации иопределения семантического значения захватываемых гипервизором данных,которые используются для анализа поведения ВПО. Это связано с тем, что наданном уровне системы механизмы защиты работают с более низкоуровневымиабстракциями, чем процессы, файлы и модули ядра – со страницами памяти,регистрами и т.д.
В технологии VMware vShield Endpoint [35] данная проблемабыла решена с помощью внедрения агентов для виртуальных машин. Эти агентыосуществляли перенос событий системы безопасности и выделяли сервиснуювиртуальную машину, которая включала в себя средства сканирования ВМ науровне гипервизора.Следует отметить, что технологии аппаратной виртуализации, с другойстороны, позволили разработать полностью прозрачный для работы ОС внутривиртуальной машины гипервизор.
Примерами построения таких гипервизоров30являются гипервизоры «Bitvisor» и «BluePill». «Bluepill» – это гипервизорнебольшого размера, который устанавливается и запускается на системе ОСWindows путем установки в нее драйвера [36]. После установки драйвера работасистемы продолжается без видимых изменений, но ОС Windows начинает работатьвнутри виртуальной машины под контролем гипервизора, располагающегосявнутри этого драйвера. Это обеспечивает контроль работы ОС и сокрытие отсовременных средств защиты, фугкционирующих внутри ОС. С появлениемвиртуализации режим SMM (System Management Mode) получил большепривилегий, чем режим гипервизора, поскольку код, функционирующий в режимеSMM, имеет неограниченный доступ к системной памяти (в том числе, к памятиядра и гипервизора).
Код SMM расположен в специальной защищенной областипамяти SMRAM, доступ к которой может быть закрыт для ядра ОС илигипервизора. Например, ВПО, описанное в [37], имеет функции кейлоггера,перехватывающего клавиатурные прерывания, также обладающего возможностьюпередавать украденные данные с компьютера.Аппаратная составляющая любой системы достаточно долгое времясчиталась доверенной стороной, поэтому вопрос защиты аппаратного обеспеченияот ВПО не рассматривался.
Однако существует ВПО, эксплуатирующееуязвимости микропрограмм, которые управляют аппаратным обеспечением. ТакоеВПО следует отнести к классу наиболее опасных видов ВПО. Это связано созначительнымотставаниемсовременныхметодовзащитыотметодов,используемых злоумышленниками для реализации нарушений ИБ на аппаратномуровне. Примерами такого ВПО могут служить трояны Mebromi и Niwa!mem,которые имеют в своем составе функционал для внедрения в BIOS, позволяющийоставаться в системе даже в случае форматирования жесткого диска.
Обнаружениетакого ВПО, устойчивого практически ко всем методам защиты, преимущественносводится к уничтожению зараженного аппаратного обеспечения.С другой стороны, уязвимости, эксплуатируемые на аппаратном уровне,иногдаобусловленыархитектурнымипринципами,заложеннымиприпроектировании стандарта, поэтому их ликвидация фактически требует перехода к31новому стандарту. Например, эксплойт BadUSB [38], который устанавливается впрошивку периферийного устройства и позволяет получить контроль над системойпользователя.
Большинство ранее предложенных аппаратных ВПО представлялисобой схемы малого размера, например, в работе [39] описано внедренное впроцессор ВПО, которое предоставляло полный контроль системы внешнемунарушителю. В 2013 году была опубликована работа группы исследователей [40],в которой было представлено ВПО аппаратного уровня, функциональностькоторого может быть направлена на нарушение работы генератора случайныхчисел в криптографическом блоке процессоров Intel Ivy Bridge.Таким образом, можно сделать вывод о том, что исследованные подходы кобнаружению современного ВПО используют различные методы обнаружениянарушений для различных системных уровней.
При этом, каждое средствообнаружения работает на одном-двух уровнях системы и не обладаетспособностьюквзаимодействиюсосредствамиобнаружения,функционирующими на остальных уровнях. Это говорит о том, что на данныймомент отсутствует единый механизм обнаружения нарушений информационнойбезопасности.Лучше всего обнаруживается ВПО, работающее на высоком уровнесистемы, однако его функциональные возможности гораздо меньше, чем у ВПО,работающего на более низких уровнях. По результатам исследований можносделать вывод о том, что с понижением уровня функционирования увеличиваютсявозможности ВПО.Ключевой проблемой обнаружения современного ВПО является егоспособность манипулировать системными данными и атаковать механизмыбезопасности, располагаясь с ними на одном уровне.