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



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

 


Владельцы патента RU 2583714:

Закрытое акционерное общество "Лаборатория Касперского" (RU)

Настоящее изобретение относится к системам и способам обеспечения безопасности и, более конкретно, к системам и способам обеспечения безопасности, работающим независимо от операционной системы, но выполненным с поддержкой приложения безопасности, работающего на уровне операционной системы. Технический результат настоящего изобретения заключается в повышении уровня безопасности компьютерной системы путем обеспечения безопасности компьютерной системы на этапе до запуска операционной системы. Способ обеспечения безопасности компьютерной системы на этапе до запуска операционной системы включает: а) осуществление запуска UEFI из постоянного запоминающего устройства перед запуском операционной системы; б) запуск из UEFI агента безопасности, работающего независимо от операционной системы; в) осуществление посредством агента безопасности сканирования и последующего удаления или помещения на карантин вредоносного программного обеспечения; где сканирование на наличие вредоносного программного обеспечения проводится лишь среди объектов, относящихся к запуску операционной системы и связанных с приложением безопасности, установленным в операционной системе; и где для осуществления сканирования агентом безопасности используется регулярно обновляемая база данных определений вредоносного программного обеспечения, хранящаяся на уровне упомянутого UEFI; г) выявление посредством агента безопасности состояний, связанных с событиями, имевшими место до последнего завершения работы операционной системы, по меньшей мере, одного из следующих типов: определение неспособности приложением безопасности, установленным в операционной системе, выполнять свои функции; выявление изменения в компьютерной системе, влияющего на процесс запуска операционной системы; д) определение агентом безопасности, по меньшей мере, одного действия, соответствующего, по меньшей мере, одному из выявленных состояний указанных типов, где действия включают в себя, по меньшей мере, одно из: управление объектами, сохраненными в файловой системе компьютерной системы; осуществление взаимодействия с удаленными серверами; откат до более ранних версий приложений, установленных в операционную систему; отправка посредством агента безопасности запроса на выполнение после запуска операционной системы действия со стороны приложения безопасности, установленного в операционную систему; е) выполнение посредством агента безопасности упомянутого определенного в пункте д), по меньшей мере, одного действия, соответствующего, по меньшей мере, одному из выявленных состояний указанных типов. 8 з.п. ф-лы, 10 ил.

 

Область техники

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

Уровень техники

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

Постоянная гонка «вооружений» ведется между создателями вредоносных программ и компаниями-разработчиками средств обеспечения компьютерной безопасности. Современные вредоносные программы пытаются изменить ядро или процесс загрузки операционной системы, чтобы скрыть свое присутствие в компьютерной системе. Противостоять руткитам и буткитам, а именно так называются эти вредоносные программы, очень сложно со стороны антивирусных программ. Руткитом называется набор программного обеспечения, который часто используется посторонними (обычно это злоумышленник) для того, чтобы, получив доступ к компьютерной системе, скрывать запущенные процессы, файлы или системные данные, которые позволяют злоумышленнику иметь доступ к системе при незнании этого самим пользователем. Буткитом называется вредоносная программа, осуществляющая модификацию загрузочного сектора MBR (Master Boot Record) - первого физического сектора на жестком диске. Буткит используется для получения максимальных привилегий в операционных системах. Он также может получить права администратора и выполнять любые вредоносные действия. Например, загрузить в память несуществующую на жестком диске динамическую библиотеку DLL. Такую библиотеку очень трудно обнаружить обычными методами, используемыми антивирусами.

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

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

Среди последних достижений в области встроенного программного обеспечения персональных компьютеров представлен единый расширяемый интерфейс прошивки (Unified Extensible Firmware Interface или UEFI), используемая вместо реализаций традиционного BIOS. UEFI работает независимо от операционной системы, обеспечивая при этом платформу для запуска собственных приложений, которые могут использовать сетевые возможности и другие средства ввода/вывода компьютерной системы. В данном изобретении предложены различные решения, связанные с безопасностью, использующие возможности UEFI, например такие, как обеспечение целостности установленной операционной системы и установленных приложений или предоставление обновлений и восстановление операционной системы и других приложений до непосредственного старта самой операционной системы.

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

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

Раскрытие изобретения

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

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

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

определение неспособности приложением безопасности, установленным в операционной системе, выполнять свои функции;

выявление изменения в компьютерной системе, влияющего на процесс запуска операционной системы;

получение запроса, оставленного приложением безопасности, установленным в операционной системе;

(г) определение агентом безопасности, по меньшей мере, одного действия, соответствующего, по меньшей мере, одному из выявленных событий указанных типов, где действия могут включать в себя:

осуществление антивирусной проверки только объектов, связанных с приложением безопасности, установленным в операционной системе;

управление объектами, сохраненными в файловой системе компьютерной системы;

осуществление антивирусной проверки только объектов, связанных запуском операционной системы;

откат до более ранних версий приложений, установленных в операционную систему;

отправка посредством агента безопасности запроса на выполнение после запуска операционной системы действия со стороны приложения безопасности, установленного в операционную систему;

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

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

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

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

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

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

В другом варианте осуществления данного изобретения выявление наступления событий осуществляется в результате выявления сбоя в работе приложения безопасности, установленного в операционной системе.

В другом варианте осуществления данного изобретения выявление наступления событий осуществляется на основании уведомлений, полученных от удаленного сервера.

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

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

В другом варианте осуществления данного изобретения выявление наступления событий осуществляется в результате выявления сбоя при обновлении приложения безопасности, установленного в операционной системы.

Краткое описание чертежей

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

Фиг.1 показывает пример компьютерной системы общего назначения.

Фиг.2 показывает примеры сервисов, реализуемых в пред-ОС окружении.

Фиг.3 показывает модули, составляющие пред-ОС агента безопасности.

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

Фиг.5 показывает схему приложения безопасности.

Фиг.6 показывает различные элементы логики пред-ОС агента безопасности, а также потоки информации и решений, связанные с их работой.

Фиг.7А и 7Б показывают блок-схемы, иллюстрирующие примерные операции, выполняемые приложением безопасности.

Фиг.8 показывает пример операции, выполняемой пред-ОС агентом безопасности.

Фиг.9 показывает пример матрицы условий и соответствующих им действий.

Описание вариантов осуществления изобретения

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

На Фиг.1 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. ПЗУ 24 может содержать окружение, загружаемое перед операционной системой (далее по тексту для обозначения загрузки или исполнения кода приложения, предшествующих старту операционной системы будем использовать сокращение пред-ОС, например, если приложение исполняется перед стартом операционной системы, то будем обозначать его, как пред-ОС приложение), которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24. Пред-ОС окружение 26 может включать в себя возможности основной системы ввода/вывода или BIOS (Basic Input/Output System), а также дополнительные возможности, такие как запуск приложений, которые могут исполняться независимо от операционной системы.

Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.

Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флэш-карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.

Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканнер и т.п.

Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.

Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг.13. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.

Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.

На Фиг.2 изображены примеры сервисов, реализуемых в пред-ОС окружении 116, которые могут быть раскрыты в различных вариантах осуществления данного изобретения. Пред-ОС окружение 116 позволяет запускать встроенные приложения без операционной системы. Приложения, исполняемые в пред-ОС окружении 116, имеют доступ к определенным драйверам компонентов и периферийных устройств компьютерной системы. Пред-ОС окружение 116 содержит облегченную (или урезанную) операционную систему, в том смысле, что данная операционная система в значительной степени ограничена в своей способности поддерживать полнофункциональные сервисы, библиотеки и прикладные программные интерфейсы (API) пользовательской операционной системы. Пред-ОС окружение 116 может храниться на основном жестком диске компьютерной системы или на специальном загрузочном устройстве, также оно может храниться в постоянном запоминающем устройстве (ПЗУ), например, в электрически стираемом программируемом постоянном запоминающем устройстве (ЭСППЗУ) на материнской плате компьютерной системы. В качестве пред-ОС окружения 116 может быть использован Unified Extensible Firmware Interface (UEFI), что, однако, не ограничивает возможности данного изобретения по использованию других известных или будущих систем, выполняющих функции пред-ОС окружения 116.

В одном из вариантов осуществления данного изобретения пред-ОС окружение 116 реализует сервис поддержки функции BIOS 152, выполняющий функции, имитирующие традиционную среду BIOS для поддержки старых операционных систем, которые несовместимы с пред-ОС окружением 116. Службы запуска 154 включают в себя текстовые и графические консоли для различных устройств, сервисы управления шинами, блоками данных и файлами. Также службы запуска 154 включают в себя управление политиками встроенного ПО, которые отвечают за старт программы загрузчика операционной системы и всех необходимых драйверов. Конфигурация загрузки компьютерной системы контролируется набором глобальных переменных, включающих загрузочные переменные, в которых прописаны программы загрузчики. Оперативные сервисы 156 включают в себя функции, которые могут исполняться, пока операционная система загружается. Это такие функции, как доступ к времени, дате или к энергонезависимой памяти с произвольным доступом (NVRAM). Опционные сервисы 158 предоставляют возможность хранения данных, которые доступны как со стороны платформы встроенного ПО, так и операционной системы или приложений пред-ОС окружения.

Приложения 150 содержат в себе сервисы, необходимые для исполнения приложений в рамках пред-ОС окружения, включая драйверы устройств, оболочки программ (под оболочками программ подразумеваются приложения, реализующие командную строку, например, cmd.exe или приложения, реализующие графический интерфейс, например explorer.exe) и инструкции инициализации пред-ОС приложений, а также сами приложения.

Среди приложений 150 в одном из вариантов осуществления данного изобретения может быть представлен пред-ОС агент безопасности 200, изображенный на Фиг.3. В различных вариантах осуществления пред-ОС агент безопасности 200 может изменять приложения, которые исполняются в операционной системе. Эти изменения могут включать в себя изменения в программном коде приложений, в параметрах настройки приложений, а также в данных, используемых приложениями. Также пред-ОС агент безопасности может вносить изменения непосредственно в саму операционную систему. Способность пред-ОС агента безопасности 200 к осуществлению такого рода изменений до начала загрузки операционной системы позволяет противодействовать внесению подобных изменений со стороны вредоносного ПО.

Некоторые модули, составляющие пред-ОС агента безопасности 200, согласно одному из вариантов осуществления данного изобретения показаны на Фиг.3. Модуль связи 202 использует сетевой интерфейс компьютерной системы и необходимые драйверы для подключения к удаленной вычислительной системе, например, к удаленному серверу службы безопасности. Модуль восстановления 204 способен восстанавливать приложения, работающие в рамках пользовательской операционной системы, до исходного или просто более раннего состояния, например, путем резервного копирования или создания точек восстановления. Такая процедура способна отменить установленные обновления и вернуть соответствующее приложение к более ранней версии. Точки восстановления могут быть получены из безопасного места на локальной компьютерной системе, со съемного носителя (например, флэш-диска) или с удаленной компьютерной системы (например, сервера безопасности или сервера-разработчика приложения) при помощи модуля связи 202. Аналогичным образом модуль восстановления 204 может осуществить восстановление деталей или всей операционной системы в соответствии с одной или несколькими заранее определенными точками восстановления системы. При этом могут быть использованы либо собственный сервис восстановления системы операционной системы (например, сервис «восстановление системы» Windows®), либо отдельный сервис, осуществляющий безопасное хранение данных для восстановления локально или удаленно, например, продукт компании ЗАО «Лаборатория Касперского» Kaspersky CRYSTAL 3.0, использующий функцию резервного копирования и восстановления данных с возможностью выбора варианта хранения данных локально или на FTP серверах.

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

Модуль обновлений 206 осуществляет обновления приложений, операционной системы или пред-ОС агента безопасности 200. Модуль обновлений 206 может получать приложения или обновления баз данных с помощью модуля связи 202, который может взаимодействовать с сервером обновлений поставщика услуг безопасности или иным уполномоченным поставщиком, например, операционной системы или производителя приложения или их дистрибьютором. В одном из вариантов осуществления обновления, осуществляемые модулем обновления 206, не столь всеобъемлющи и велики, как обновления получаемые приложениями, работающими в рамках пользовательской операционной системы. Обновления согласно данному варианту осуществления узкоспециализированы для решения конкретных проблем в области выделенных критически важных ситуаций, решаемых на уровне пред-ОС окружения 116. Одним из примеров такой ситуации может служить уведомление от приложения безопасности о появлении новых доступных обновлений баз вредоносных программ, включающих новые руткит или буткит определения. Так как этот тип вредоносных программ представляет риск для ядра операционной системы, обработка обновлений на этапе до запуска операционной системы гарантирует, что обновление будет осуществлено должным образом, даже если операционная система уже скомпрометирована.

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

Модуль взаимодействия 210 включает в себя инструкции и положения по безопасности для осуществления защищенного взаимодействия с операционной системой, файловой системой и приложениями, работающими из-под операционной системы. В одном из вариантов реализации для того чтобы иметь доступ к определенным файлам модуль взаимодействия 210 реализован с возможностью осуществления доступа к диску(ам) в компьютерной системе, чтения, записи, доступа к каталогам и блокам управления файлами. В данном варианте осуществления модуль взаимодействия 210 имеет доступ к специальному защищенному буферу, через который пред-ОС агент безопасности и приложения, исполняемые в операционной системе, также настроенные на доступ к данному защищенному буферу, могут обмениваться данными, инструкциями и любой другой информацией. Для сокрытия содержимого и/или самого факта существования защищенного буфера могут быть использованы криптографические методы защиты. В одном из вариантов осуществления модуль взаимодействия 210 передает однонаправленный поток информации от пред-ОС агента безопасности 200 к соответствующему приложению, исполняемому в операционной системе. В другом варианте реализации приложение, исполняемое в операционной системе, осуществляет передачу информации пред-ОС агенту безопасности 200, а агент 200 настроен на получение данной информации, когда компьютерная система находится в состоянии пред-ОС.

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

На Фиг.4 показана функциональная схема, иллюстрирующая взаимодействие между пред-ОС агентом безопасности 200 и приложением безопасности 250, работающим на локальной компьютерной системе 240, и связь данных элементов с удаленным сервером 260. В рамках приложения безопасности 250 может выступать, например, приложение Kaspersky Internet Security 2014. В данном варианте осуществления приложение безопасности 250 является приложением из числа приложений 37, исполняемых в операционной системе и предоставляющих набор функций, связанных с безопасностью. Удаленный сервер 260 представляет собой сервер безопасности. Удаленный сервер 260 обеспечивает регулярные обновления приложения безопасности 250. Связь 262 представляет собой типичную связь, установленную через сетевое соединение между приложением безопасности 250 и удаленным сервером 260, по которой предоставляются обновления. Удаленный сервер 260 может поддерживать рад других функций, например, выполнение распределенной обработки данных, сбора и обработка данных от пользовательского сообщества, прокси-серверов и т.д. Обновления и другие услуги предоставляются во время непосредственной работы приложения безопасности 250.

Пред-ОС агент безопасности 200 работает под управлением собственной операционной системы (суб-ОС) и также связан (264) с удаленным сервером 260. Связь 264 устанавливается перед загрузкой операционной системы и стартом приложения безопасности 250. Обновления или другие инструкции могут поступать через канал связи 264. Как уже говорилось выше, эти обновления могут включать в себя обновления для пред-ОС агента безопасности 200, приложения безопасности 250 и, в некоторых вариантах осуществления, могут включать в себя обновления для операционной системы или других приложений.

Пред-ОС агент безопасности 200 может осуществлять доступ к защищенному буферу 252 и основной файловой системе 254 через модуль взаимодействия 210. В одном из вариантов осуществления защищенный буфер 252 может быть реализован в виде файла в рамках файловой системы или в качестве компонента операционной системы, как, например, реестр операционной системы. В другом варианте осуществления защищенный буфер 252 может быть реализован в виде специальной части диска, не доступной для использования в рамках файловой системы. Еще в одном варианте осуществления защищенный буфер 252 реализован с использованием энергонезависимой памяти, доступной на материнской плате компьютерной системы, например, памяти, используемой для хранения команд и данных, относящихся к пред-ОС окружению 116. В этих вариантах информация в защищенный буфер 252 записывается посредством пред-ОС агента безопасности 200 или приложения безопасности 250 и считывается соответственно приложением безопасности 250 или пред-ОС агентом безопасности 200 в зависимости от обстоятельств. В другом варианте осуществления специализированный драйвер, работающий на уровне суб-ОС, предназначен для осуществления доступа со стороны пред-ОС агента безопасности 200 к защищенному буферу 252. Аналогичным образом драйвер на уровне пользовательской операционной системы предназначен исключительно для осуществления доступа со стороны приложения безопасности 250 к защищенному буферу 252. В одном таком варианте осуществления драйвер уровня пользовательской операционной системы аутентифицирует приложение безопасности 250 перед предоставлением доступа к защищенному буферу 252. В другом смежном подходе приложение безопасности 250 и пред-ОС агент безопасности 200 используют инфраструктуру открытых ключей (PKI) для цифровой подписи данных (или шифрования), которые будут записаны в безопасный буфер 252, с помощью открытого ключа другого. При чтении данных, сохраненных в защищенный буфер 252, приложение безопасности 250 и пред-ОС агент безопасности 200 используют свои закрытые ключи для расшифровывания данных.

На Фиг.5 более подробно изображена схема приложения безопасности 250. Приложение безопасности 250 способно выполнять любую комбинацию связанных с безопасностью функций, таких как, например: противодействие вредоносным объектам 302, обнаружение и удаление вредоносных объектов 304, нейтрализация угроз 306 и контроль целостности системы 307. Приведенные функции, связанные с безопасностью, описаны ниже только в общих чертах в качестве иллюстрации, и не представляют собой исчерпывающий перечень рассматриваемых функций, связанных с безопасностью. Различные другие функции, связанные с безопасностью, могут быть использованы в дополнении или вместо любой из функций, связанных с безопасностью, приведенной в качестве примера в данном документе.

Противодействие вредоносным объектам 302 включает в себя блокирование вредоносных объектов, таких как вирусы, черви и другие вредоносные программы, рекламное ПО, шпионские программы, спам и т.п., а также блокирование нежелательного трафика, такого как хакерские атаки, прежде чем любой из этих объектов сможет реализовать свой вредоносный потенциал на локальном устройстве. Как правило, данная функция предполагает блокирование или перенаправление содержимого трафика межсетевым экраном. Обнаружение и удаление вредоносных объектов 304 применяется к объектам, которые миновали проверки, направленные на предотвращение проникновений, и теперь в той или иной форме находятся на локальном устройстве. Типовым примером такой функциональности будет проверка на вирусы на основе базы данных сигнатур (описаний известных вирусов и прочих вредоносных программ), и удаление или помещение на карантин соответствующих объектов и связанных с ними данных. Нейтрализация угроз 306 применяется для обнаружения нежелательного контента, обнаружения нападений или угроз в реальном времени и заключается в принятии мер по закрытию любых подозрительных программ или процессов, блокированию сетевого трафика, а также восстановлению системы до последнего известного безопасного состояния.

Приложение безопасности 250 содержит множество компонент, как, например, межсетевой экран 308, фильтр сообщений почты 310, антивирусный модуль/модуль блокирования нежелательного содержимого/утилиту удаления вредоносного ПО 312, систему резервного копирования и восстановления данных 314, а также системы предотвращения и обнаружения вторжений 316 (IPS/IDS). Также включены такие компоненты, как модуль обновлений 318, модуль обнаружения изменений 320 и модуль безопасного взаимодействия 322 для осуществления обмена данными с пред-ОС агентом безопасности 200. Эти компоненты могут работать в различных комбинациях для реализации различных функций приложения безопасности 250.

В одном варианте осуществления данного изобретения модуль обнаружения изменений 320 выполнен с возможностью отслеживать изменения, сделанные в компьютерной системе операционной системой и другими приложениями. Особый интерес в данном варианте осуществления представляют изменения, которые влияют на процесс загрузки операционной системы. Например, изменение основной загрузочной записи (MBR), установка новых драйверов устройств, добавление новых системных услуг, управляемых операционной системой, внесение изменений в настройки резидентных приложений, которые будут загружены при старте операционной системы, изменения в некоторых параметрах реестра операционной системы и т.д. Также модуль обнаружения изменений 320 может самостоятельно обнаруживать изменения в белом или черном списках программ, используемых антивирусным модулем 312. В ответ на обнаружение любого из указанных изменений (или других контролируемых) модуль обнаружения изменений 320 делает запись в журнале (например, системном или собственном) или устанавливает флаг, указывающий на обнаружение соответствующего изменения. Дополнительно может быть использован индикатор типа изменений. Установленный флаг, запись в журнале или другие показатели сохраняются в модуле безопасного взаимодействия 252.

На Фиг.6 представлена схема, наглядно иллюстрирующая различные элементы логики работы пред-ОС агента безопасности 200, а также потоки информации и решений, связанные с их работой. Координатор действий 212 в данном варианте осуществления включает в себя модуль наблюдения 340, модуль принятия решения 342, набор критериев 344 и модуль выполнения действия 346. Модуль наблюдения 340 получает информацию о состоянии или режиме работы компьютерной системы. В данном варианте это осуществляется с помощью модуля взаимодействия 210, который имеет доступ к основной файловой системе 254, где хранятся системные журналы операционной системы, журналы других приложений и защищенный буфер 252, который может содержать информацию, предоставленную модулем обнаружения изменения 320 приложения безопасности 250. Это такая информация, как журналы и дамп 330, содержащие события или проблемы записанные операционной системой во время ее последней загрузки, а также события, зафиксированные в процессе работы операционной системы и любые дампы памяти, которые могли иметь место в связи с крахом операционной системы, полученные из файловой системы. Журнал 332 хранится приложением безопасности 250 и содержит события, происходящие во время выполнения собственных операций. Доступ к журналу 332 также осуществляется посредством модуля взаимодействия 210. Другие контролируемые объекты включают в себя флаг обновлений 334, установленный приложением безопасности 250, и флаг изменения системы 336, установленный модулем обнаружения изменений 320 приложения безопасности 250. Еще одним источником информации для модуля наблюдения 340 могут являться внешне поставляемые уведомления 338, например, предусмотренные удаленным сервером 260, передаваемые через модуль связи 202 (см. Фиг.3). Следует понимать, что эти примеры никоим образом не являются исчерпывающим перечнем объектов, представляющих интерес для контроля. В более общем смысле, модуль наблюдения 340 осуществляет наблюдение за критически важными событиями или условиями в отношении компьютерной системы и, в частности, в отношении безопасности компьютерной системы.

Информация, полученная модулем наблюдения 340, поступает модулю принятия решений 342, который определяет, необходимо ли предпринять определенные действия в ответ на полученную информацию. Решение принимается на основании набора критериев 344 и на основании логики принятия решений модуля принятия решений 342. Модуль принятия решений 342, используя критерии 344, выделяет из информации, полученной от модуля наблюдения 340, указания на наступление событий, по меньшей мере, следующих типов:

- определение неспособности приложением безопасности исполнять свои функции;

- выявление изменения в компьютерной системе, влияющего на процесс запуска операционной системы;

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

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

Предписанные действия могут включать использование модуля восстановления 204, модуля обновлений 206 и антивирусного модуля 208 (пред-ОС уровня) или любую их комбинацию. Например, в ответ на внешнее уведомление 338 о повышении уровня угрозы безопасности или выявлении флага изменения системы антивирусный модуль 208 может быть призван выполнить проверку целостности приложения безопасности 250 или операционной системы, каждая из которых обрабатывается, соответственно, модулем контроля целостности приложения безопасности 350 и модулем контроля целостности операционной системы 352. В другом примере в ответ на записи журнала, указывающие на изменения, влияющие на последовательность запуска системы, модуль обнаружения вредоносного программного обеспечения 354 может осуществить сканирование системы. В одном из вариантов осуществления модуль обнаружения вредоносного программного обеспечения 354 осуществляет сканирование только файлов и параметров реестра, связанных с приложением безопасности 250. В другом варианте осуществления сканирование на наличие вредоносных программ проводится среди конкретных файлов и папок в файловой системе или других объектов, которые считаются наиболее уязвимыми или критически важными, например, файлы, последовательно загружаемые при старте операционной системы. Модуль удаления вредоносного программного обеспечения 356 помещает на карантин или безопасно удаляет вредоносные объекты, выявленные в результате работы модуля обнаружения вредоносного программного обеспечения 354.

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

В смежном варианте осуществления данного изобретения модуль обновления приложения безопасности 360 включает в себя процедуру обновления, по которой осуществляется получение только критических обновлений, таких как подмножества определений вредоносных программ или сценариев удаления вредоносных программ. Эти подмножества обновлений для приложения безопасности могут включать в себя только функции, относящиеся, например, к руткит/буткит обнаружению и удалению. Использование такой процедуры обновлений экономит время и ресурсы, необходимые на проведение операций в пред-ОС окружении 116, тем самым ускоряя загрузку пользовательской операционной системы. В другом смежном варианте осуществления модуль обновления приложения безопасности 360 может установить флаг в защищенном буфере 252 (через модуль взаимодействия 210), указывающий на то, что частичное обновление было успешно выполнено, а полное обновление необходимо выполнить после того, как приложение безопасности 250 будет загружено.

В ином варианте осуществления данного изобретения в ответ на обнаружение крушения системы или другого критического отказа, в том числе конфликта между операционной системой и приложением, таким как, например, приложение безопасности 250, модуль восстановления 204 может быть призван для частичного или полного восстановления приложения безопасности 250, которое находится в ведении модуля восстановления приложения безопасности 362. Также в зависимости от характера обнаруженной проблемы операционная системы частично или полностью может быть восстановлена с помощью модуля восстановления операционной системы 364. Точки восстановления или предыдущая версия приложения безопасности 250 могут храниться локально в файловой системе. В другом варианте осуществления предыдущая версия может быть получена путем загрузки с удаленного сервера 260. Следует отметить, что различные состояния, условия или уведомления могут потребовать различных комбинаций действий, которые необходимо предпринять в соответствии с набором критериев 344.

В одном из вариантов осуществления данного изобретения журнал операций приложения безопасности 332 может быть использован приложением безопасности 250 для передачи запроса или инструкций модулю взаимодействия 212, например, в ситуации, когда приложение безопасности 250 обнаруживает вредоносный объект, однако не в состоянии удалить или поместить данный объект в карантин. Данная неспособность может быть обусловлена, например, работой руткита, который препятствует исполнению определенных действий, внося изменения в стек драйверов файловой системы. Например, руткит TDSS, появившийся еще в 2008 году, скрывал свои файлы путем присоединения вредоносного фильтра к системному стеку драйверов. Причем производится данное действие в цикле для каждого тома в системе. Таким образом, руткит не только скрывал на диске файлы, имена которых начинаются с букв «tdl», но и при попытке открыть том \Device\HarddiskVolumeX возвращалась ошибка, что приводило к ошибкам в различных анти-руткитах, которым открытие данного тома было необходимо для низкоуровневого разбора структур файловой системы. В ответ на это приложение безопасности 250 регистрирует в журнале 332 запрос действий со стороны пред-ОС агента безопасности 200, указывая на вредоносный объект и характер действий (например, удаление, карантин, сканирование и т.д.). При следующей загрузке компьютерной системы модуль выполнения действия 346 получит уведомление о запросе действий через модули наблюдения 340 и принятия решения 342 и поручит выполнение соответствующей операции антивирусному модулю 208 (или любому другому модулю, соответственно). После завершения выполнения запрошенного действия модуль выполнения действия 346 может сообщить результат (то есть, подтверждение, что действие было успешно выполнено, или сообщение об ошибке) через модуль взаимодействия 210. Данная обратная связь может быть зарегистрирована в журнале операций приложения безопасности 332 или в защищенном буфере 252.

В другом родственном варианте осуществления данного изобретения антивирусный модуль 208 может использовать расширенные функциональные возможности приложения безопасности 250 для завершения определенных операций. Согласно данному варианту, антивирусный модуль 208 сообщает модулю выполнения действия 346 о запросе действий со стороны приложения безопасности 250. Модуль выполнения действия 346, в свою очередь, формирует запрос на такие действия и направляет его модулю взаимодействия 210. В ответ на прием такого запроса модуль взаимодействия 210 формирует запрос действия к приложению безопасности 348 в защищенном буфере 252, доступном приложению безопасности 250. При аналогичном подходе антивирусный модуль 208 может сформировать запрос действия со стороны приложения безопасности 250 и самостоятельно передать его модулю взаимодействия 210 (в обход модуля выполнения действия 246). Данный подход может быть использован в случае, когда антивирусный модуль 208 «подозревает» вредоносный объект, но не имеет, например, эвристического анализатора, необходимого для дополнительной оценки риска со стороны подозреваемого объекта. Соответственно, антивирусный модуль 208 может изолировать вредоносный объект и сформировать запрос действия к приложению безопасности 348, в котором будет идентифицирован объект карантина и указан запрос на проведение анализа. При получении запроса 348 приложение безопасности 250 может выполнить запрашиваемое действие и сообщить о результатах антивирусному модулю 208 через журнал операций приложения безопасности 332.

На Фиг.7А и 7Б показаны блок-схемы, иллюстрирующие примерные операции, выполняемые приложением безопасности 250. Обратимся сначала к Фиг.7А, где на этапе 402 приложение безопасности 250 получает обновление базы данных определений вредоносных программ. На этапе 404 производится оценка со стороны приложения безопасности 250 на предмет воздействия на защиту от руткит/буткит вирусов, то есть содержат ли обновления определения особо опасных вредоносных программ, таких как руткиты или буткиты. Под воздействием подразумевается наступление неких событий, способных повлиять на текущий уровень защиты, например, увеличить его путем добавления появления новых инструментов защиты или скачиванием обновлений для имеющихся инструментов или, например, путем скачивания обновлений баз определений вредоносных программ новыми записями. В соответствии с решением 406, если в результате оценки, определяется, что обновление оказывает влияние на защиту от такого рода вредоносных программ (т.е. содержит необходимые определения вредоносных программ), то на этапе 408 в защищенном буфере 252 устанавливается флаг 334.

В соответствии с Фиг.7Б, на этапе 412 модуль обнаружения изменений 320 следит за любыми изменениями в настройках системы. Отслеживание включает в себя проверки журнала событий операционной системы, мониторинг изменений в реестре, мониторинг изменений в файлах, которые исполняются во время запуска операционной системы и т.д. На этапе 414 производится оценка того, оказывают ли выявленные на этапе 412 изменения воздействие на загрузку операционной системы и в случае положительной оценки на этапе 416 устанавливается флаг изменения системы 336.

На Фиг.8 приведен пример операции, выполняемой пред-ОС агентом безопасности 200. Согласно данному примеру на этапе 422 инициируется запуск компьютерной системы, и осуществляется запуск пред-ОС окружения 116. Соответственно, происходит инициализация пред-ОС агента безопасности 200. На этапе 424 модуль наблюдения 340 проверяет различные контролируемые элементы, в том числе журналы операционной системы и приложения безопасности 250, флаги, установленные приложением безопасности 250, изменения в контролируемых файлах в рамках файловой системы, реестр операционной системы и т.д. Кроме того, сообщение может быть оставлено на сервере безопасности, таком как удаленный сервер 260, для уведомления, например, о выпущенных обновлениях за то время, когда компьютерная система была выключена, или с момента последней проверки компьютерной системы. На этапе 426 осуществляется принятие решения посредством модуля принятия решения 342 в соответствии с имеющейся логикой принятия решения и набором критериев 344 о необходимости выполнения действия. При положительном решении на этапе 428 модуль выполнения действия 346 принимает к исполнению заданное действие и на этапе 430 очищает все флаги и другие знаки, в отношении которых были полностью выполнены действия. После завершения указанной выше последовательности операционная система загружается на этапе 432.

На Фиг.9 изображена матрица, иллюстрирующая пример учета критериев 344 используемых модулем принятия решения 342 для определения действий, выполняемых в ответ на определенные условия. Этот пример является далеко не полным или комплексным набором критериев принятия решения предусмотренных в рамках данного изобретения. Следует иметь в виду, что сами условия определяются из различных источников данных, которые используются для определения состояния или режима работы компьютерной системы. Примерный набор условий представлен в строках матрицы. К ним относятся: отказ загрузки операционной системы, который можно различить, например, из журнала загрузки операционной системы 330; крах операционной системы, выявленный по недавнему дампу памяти 330; неспособность запуска или крах приложения безопасности, которые можно определить по журналу операций приложения безопасности 332; обнаружение приложением безопасности изменений системы, нарушающих процесс загрузки; получение приложением безопасности обновлений, относящихся к руткит/буткит угрозам; сбой проверки целостности операционной системы; отсутствие обновления приложения безопасности, в период которого компьютерная система функционировала, что может быть установлено на основе отсутствия соответствующих событий в журналах (данное условие указывает на возможность вредоносного вмешательства в процесс обновления).

Столбцы матрицы указывают на различные действия, которые могут быть выполнены. Они включают в себя, но не ограничиваются, следующим набором: проверка целостности операционной системы; проверка целостности приложения безопасности; пред-ОС сканирование и удаление вредоносных программ; частичное или полное исправление операционной системы; проверка наличия обновлений для пред-ОС окружения 116 или пред-ОС агента безопасности 200; проверка обновлений приложения безопасности 250; восстановление (откат) операционной системы, а также восстановление приложения безопасности. Х-знаки в клетках матрицы указывают на действия, которые могут быть выполнены в ответ на обнаружение определенного условия. Выполнение некоторых действий может стать невостребованным после выполнения других действий. Например, действия можно устанавливать в определенном порядке по степени вмешательства, как правило, от минимального воздействия на компьютерную систему к максимальному.

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

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

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

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

2. Способ по п. 1, дополнительно включающий инициирование запуска операционной системы после завершения выполнения посредством агента безопасности набора действий, определенных в рамках полученного указания.

3. Способ по п. 1, в котором выявление наступления состояний включает в себя считывание посредством агента безопасности индикаторов, оставленных приложением безопасности, установленном в операционной системе.

4. Способ по п. 1, в котором выявление наступления состояний осуществляется в результате анализа посредством агента безопасности журнала событий, содержащегося в файловой системе компьютерной системы.

5. Способ по п. 1, в котором выявление наступления состояний осуществляется в результате выявления посредством агента безопасности сбоя в работе приложения безопасности, установленного в операционной системе.

6. Способ по п. 1, в котором выявление наступления состояний осуществляется на основании уведомлений агента безопасности, полученных от удаленного сервера.

7. Способ по п. 1, в котором выявление наступления состояний включает в себя считывание посредством агента безопасности защищенного буфера из постоянного запоминающего устройства, где доступ приложения безопасности к защищенному буферу осуществляется посредством специализированного драйвера из окружения агента безопасности.

8. Способ по п. 1, в котором выявление наступления состояний включает в себя считывание посредством агента безопасности данных из файлов, сохраненных в файловой системе, управляемой операционной системой.

9. Способ по п. 1, в котором выявление наступления состояний осуществляется в результате выявления посредством агента безопасности сбоя при обновлении приложения безопасности, установленного в операционной системы.



 

Похожие патенты:

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

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

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

Изобретение относится к системам и способам обеспечения конфиденциальности информации, используемой во время операций аутентификации и авторизации, при использовании доверенного устройства.

Изобретение относится к информационной безопасности. Технический результат заключается в обеспечении безопасности виртуальной машины (ВМ).

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

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

Изобретение относится к области технологий обработки данных. Технический результат заключается в повышении эффективности сканирования подозрительных файлов.

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

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

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

Изобретение относится к вычислительной технике. Технический результат заключается в безопасной обработке данных.

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

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

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

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

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

Изобретение относится к вычислительной технике. Технический результат заключается в обеспечении защиты карты.

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

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