СИСТЕМА И СПОСОБ ЭФФЕКТИВНОГО ЛЕЧЕНИЯ КОМПЬЮТЕРА ОТ ВРЕДОНОСНЫХ ПРОГРАММ И ПОСЛЕДСТВИЙ ИХ РАБОТЫ
SYSTEM AND METHOD FOR EFFICIENT TREATMENT OF COMPUTER FROM MALWARE AND EFFECTS OF ITS WORK

Область техники
Изобретение относится к антивирусным технологиям, а более конкретно к системам и способам повышения эффективности лечения компьютера от вредоносных приложений и последствий их работы путем создания сценария лечения компьютера с учетом эффективности лечения и оценки опасности.
Уровень техники
В настоящее время наряду с ростом популярности сети Интернет, отмечается существенный рост услуг, которые предоставляются он-лайн: веб-банкинг позволяет распоряжаться средствами на счету в банке, не вставая из-за своего компьютера; различные платежные системы Интернета, такие как Яндекс. деньги, Webmoney или PayPal, позволяют оплачивать товары и услуги, не выходя из дома, и т.д. Помимо этого, пользователи используют все больший ассортимент программного обеспечения, с помощью которого сохраняют важные результаты своей работы как локально на своих компьютерах, так и на удаленных сервисах. Поэтому неудивительно, что также появляется все большее количество вредоносных приложений, которые нацелены на кражу, вымогательство и шпионаж за важными данными.
Для борьбы с вредоносными приложениями достаточно давно существуют антивирусные приложения, такие как Kaspersky Internet Security, которые используют богатый набор технологий обнаружения и лечения, куда входят сигнатурная и эвристическая проверки, использование виртуальных машин и эмуляторов и т.д. Описанные технологии позволяют эффективно обнаруживать и удалять различные вредоносные приложения и последствия их работы.
Однако стоит отметить, что развитие вредоносных приложений также не стоит на месте, и создатели вредоносных приложений применяют все новые методы противодействия антивирусным приложениям. Во-первых, это может быть связано с методами распространения вредоносных приложений, которые могут активно заражать файлы (вирусы) или распространяться по сети и электронной почте (черви). Во-вторых, при распространении вредоносных приложений могут использоваться как уязвимости в программном обеспечении, так и методы социальной инженерии, которые рассчитаны на пользователей с недостаточным уровнем знаний компьютерной безопасности. В-третьих, многие вредоносные приложения бывает достаточно тяжело обнаружить и удалить.
Вредоносные приложения могут быть установлены только для удаленного управления пораженным компьютером (backdoor), могут скрывать определенные объекты либо активности в операционной системе (rootkit) или же вообще не производить действий, которые могут быть признаны вредоносными (например, поддельные антивирусные приложения), что затрудняет обнаружение. Обфускация кода также существенно затрудняет обнаружение вредоносных приложений, многие из которых состоят не только из одного исполняемого файла, а могут состоять из нескольких взаимосвязанных компонент, каждая из которых выполняет свою часть вредоносного функционала.
В патенте US 7540030 предлагается система для удаления вредоносных приложений с компьютера. С этой целью на зараженном компьютере используется специальный сценарий CHECK, который проводит поиск вредоносных приложений и последствий их работы. В том случае, если сценарий CHECK найдет вредоносное приложение, то после него запускается сценарий FIX, который излечивает компьютер пользователя.
Кроме того, удаление вредоносного приложения не гарантирует того, что оно будет навсегда удалено с компьютера. Существует ряд составных вредоносных приложений, которые при удалении одной своей компоненты могут восстанавливать ее с помощью других своих компонент. В патенте US 7533131 приводится способ удаления вредоносных приложений, которые восстанавливают собственные копии. Для определения эффективности проведенного лечения используются различные решения, описанные в таких заявках, как US 2007143843 и US 20060130141, которые определяют эффективность путем проверки факта удаления вредоносных приложений. Кроме того, даже если были удалены все компоненты вредоносных приложений, зачастую не удается полностью восстановить все последствия работы вредоносных приложений - созданные и/или измененные файлы, а также созданные и/или измененные ключи реестра.
Также стоит отметить еще одну проблему, связанную с удалением вредоносных приложений и последствиям их работы. В том случае, если при лечении компьютера будет найден системный файл, который был заражен, но который необходим для работы операционной системы (ОС), то при удалении этого файла ОС не сможет корректно работать и/или загрузиться. Таким образом, еще одним необходимым шагом является оценка опасности использования утилит/сценариев лечения компьютера от вредоносных приложений и последствий их работы.
Анализ предшествующего уровня техники и возможностей, которые появляются при комбинировании их в одной системе, позволяют получить новый результат, а именно систему и способ лечения компьютера от вредоносных приложений и последствий их работы.
Сущность изобретения
Технический результат настоящего изобретения заключается в повышении эффективности компьютера от вредоносных приложений и последствий их работы путем создания и использования сценария лечения компьютера.
Согласно одному из вариантов реализации, предоставляется способ лечения компьютера от вредоносных приложений и последствий их работы путем создания сценария лечения компьютера с учетом эффективности лечения и оценки опасности, при этом способ содержит этапы на которых: производят анализ компьютера на наличие вредоносных приложений и последствий их работы, формируя при этом журнал проверки; выполняют анализ сформированного журнала проверки; в случае обнаружения вредоносных приложений и последствий их работы, создают сценарий лечения компьютера на основании анализа журнала проверки с учетом эффективности лечения и опасности сценария лечения компьютера; выполняют сценарий лечения компьютера на компьютере; производят анализ компьютера на наличие вредоносных программ, оставшихся после выполнения последнего выполненного сценария лечения компьютера; выполняют анализ сформированного журнала проверки; оценивают эффективность последнего выполненного сценария лечения компьютера; заканчивают работу при достижении порога эффективности предыдущего сценария лечения компьютера; повторяют этапы (в)-(ж) до достижения приемлемой эффективности предыдущего сценария лечения компьютера.
Согласно одному из частных вариантов реализации анализ сформированного журнала проверки включает анализ: созданных и/или измененных файлов, созданных и/или измененных ключей реестра, сетевых соединений, загруженных библиотек, драйверов, модулей расширения.
Согласно другому частному варианту реализации анализ журнала проверки включает сравнение информации обо всех известных вредоносных и легитимных приложениях с сформированным журналом проверки.
Согласно еще одному частному варианту реализации опасность сценария лечения компьютера оценивается исходя из оценки действий применительно к объектам на компьютере.
Согласно одному из частных вариантов реализации опасность сценария лечения компьютера выражается в виде числа.
Согласно другому частному варианту реализации опасность сценария лечения компьютера выражается в виде недопустимых действий применительно к объектам на компьютере.
Согласно еще одному частному варианту реализации эффективность сценария лечения компьютера оценивается путем сравнения количества найденных вредоносных приложений и последствий их работы до и после работы сценария лечения компьютера.
Согласно одному из частных вариантов реализации дальнейшее лечение компьютера приостанавливается в том случае, если эффективность лечения не меняется при использовании последующего сценария лечения.
Согласно другому частному варианту реализации дальнейшее лечение компьютера приостанавливается в том случае, если эффективность лечения равна нулю.
Согласно еще одному частному варианту реализации порог эффективности сценария лечения компьютера задается эмпирически.
Согласно одному из частных вариантов реализации порог эффективности сценария лечения компьютера вычисляется исходя из статистики, собранной по выполненным сценариям лечения.
Согласно одному из вариантов реализации, предоставляется система лечения компьютера от вредоносных приложений и последствий их работы путем создания сценария лечения компьютера с учетом эффективности лечения и оценки опасности, при этом система содержит следующие средства: средство проверки, связанное со средством выполнения сценариев и средством разбора журнала, при этом средство проверки предназначено для анализа компьютера пользователя и записи в журнал проверки информации о найденных вредоносных и подозрительных приложениях и последствиях их работы; средство разбора журнала, связанное со средством расчета эффективности, базой данных статистики, средством создания сценариев, при этом средство разбора журнала предназначено для анализа журнала проверки с целью определения активности вредоносных приложений для последующего удаления как самих вредоносных приложений, так и последствий их работы; средство расчета эффективности лечения, предназначенное для определения эффективности сценария лечения компьютера и завершении работы системы при достижении порога эффективности сценария лечения компьютера; база данных статистики, предназначенная для хранения информации обо всех известных вредоносных приложениях, так и обо всех легитимных приложениях; средство создания сценариев, связанное с базой данных правил создания сценариев и анализатором, при этом средство создания сценариев предназначено для создания сценария лечения компьютера от вредоносных приложений и последствий их работы; база данных правил создания сценариев, предназначенная для хранения шаблонов действий по лечению компьютера; анализатор, связанный с базой данных оценок опасности и средством выполнения сценариев, при этом анализатор предназначен для оценки сценария лечения компьютера с точки зрения эффективности лечения и опасности и дальнейшей отправки сценария лечения компьютера на: средство выполнения сценариев, если опасность сценария лечения компьютера является допустимой; средство создания сценариев, если опасность сценария лечения компьютера является недопустимой или требуется увеличить эффективность сценария лечения компьютера; база данных оценок опасности, предназначенная для хранения правил оценки действий; средство выполнения сценариев, предназначенное для выполнения сценария лечения компьютера на компьютере.
Согласно одному из частных вариантов реализации анализ сформированного журнала проверки включает анализ: созданных и/или измененных файлов, созданных и/или измененных ключей реестра, сетевых соединений, загруженных библиотек, драйверов, модулей расширения.
Согласно другому частному варианту реализации анализ журнала проверки включает сравнение информации обо всех известных вредоносных и легитимных приложениях с сформированным журналом проверки.
Согласно еще одному частному варианту реализации опасность сценария лечения компьютера оценивается исходя из оценки действий применительно к объектам на компьютере.
Согласно одному из частных вариантов реализации опасность сценария лечения компьютера выражается в виде числа.
Согласно другому частному варианту реализации опасность сценария лечения компьютера выражается в виде недопустимых действий применительно к объектам на компьютере.
Согласно еще одному частному варианту реализации эффективность сценария лечения компьютера оценивается путем сравнения количества найденных вредоносных приложений и последствий их работы до и после работы сценария лечения компьютера.
Согласно одному из частных вариантов реализации дальнейшее лечение компьютера приостанавливается в том случае, если эффективность лечения не меняется при использовании последующего сценария лечения.
Согласно другому частному варианту реализации дальнейшее лечение компьютера приостанавливается в том случае, если эффективность лечения равна нулю.
Согласно еще одному частному варианту реализации порог эффективности сценария лечения компьютера задается эмпирически.
Согласно одному из частных вариантов реализации порог эффективности сценария лечения компьютера вычисляется исходя из статистики, собранной по выполненным сценариям лечения.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления полезной модели со ссылкой на прилагаемые чертежи, на которых:
Фиг.1 иллюстрирует систему для выбора наиболее эффективного лечения компьютера от вредоносных приложений и последствий их работы.
Фиг.2 иллюстрирует способ для выбора наиболее эффективного лечения компьютера от вредоносных приложений и последствий их работы.
Фиг.3 отображает примерную систему для реализации изобретения, которая включает в себя компьютерную систему общего назначения.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, она может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспеченными для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется только в объеме приложенной формулы.
Настоящее изобретение описывает систему и способ выбора наиболее эффективного лечения компьютера от вредоносных приложений и последствий их работы путем создания сценария лечения компьютера с учетом эффективности лечения и оценки опасности. С этой целью используется система выбора наиболее эффективного лечения компьютера от вредоносных приложений, представленная на Фиг.1.
Компьютер пользователя 100, на котором могут быть найдены вредоносные приложения, анализируется с помощью средства 110 проверки. Проверка может быть выполнена с помощью известных методов анализа, например, описанного в патенте US 7540030. Как итог подобной проверки, средство 110 проверки получает журнал проверки, в котором записана информация о найденных вредоносных приложениях и последствиях их работы. Помимо вредоносных приложений, в журнал проверки могут также попасть и неизвестные (подозрительные) приложения, которые проявляют или проявляли активность, похожую на такую активность вредоносных приложений (подозрительная активность), как, например, установка в скрытом (silent) режиме, включение автозапуска при старте ОС, запись/изменение файлов в системных папках и т.д. Средство 110 проверки может создавать журнал проверки как в заданный момент времени (например, по требованию пользователя или периодически), так и постоянно пополнять журнал проверки по мере отслеживания системных или внешних событий. В журнал проверки включаются такие данные, как:
созданные/измененные файлы, созданные/измененные ключи реестра, информация о сетевых соединениях, загруженные библиотеки (такие как DLLs), драйверы, модули расширения, информация об ОС, установленной на компьютере и т.д. Информация может быть доступна с разной степенью детализации, например, в одном из вариантов реализации данные о файлах включают только хеш-суммы файлов, в то время как в другом варианте реализации данные могут включать метаданные о файле в виде размера, даты создания/изменения, названия, формата и т.д.
В качестве подозрительной активности можно привести следующий пример. Если программа Internet Explorer пользователя имеет неизвестную панель инструментов, и перечень загруженных модулей такого исполняемого файла Internet Explorer отличается от перечня загруженных модулей стандартного исполняемого файла Internet Explorer, и он также не соответствует какой-либо действительной записи базы данных чистых приложений, тогда информация об этой версии Internet Explorer будет помещена в журнал проверки. Однако эта строка инструментов может быть пробной версией продукта стороннего производителя, которая не представляет какой-либо вредоносный код, но для такого определения как раз и требуется дополнительный анализ.
После этого, средство 110 проверки передает полученный журнал проверки на средство 140 разбора журнала, которое анализирует журнал проверки с целью определения активности вредоносных приложений для последующего удаления как самих вредоносных приложений, так и последствий их работы. Для анализа средство 140 разбора журнала использует базу данных 190 статистики, которая содержит информацию обо всех известных вредоносных приложениях (т.н. blacklist), так и обо всех безвредных или легитимных, т.е. "чистых" приложениях (т.н. whitelist). Подобная информация включает метаданные об исполняемых файлах (хеш-сумма, размер, название и т.д.), так и более подробную информацию о том, как функционирует то или иное приложение: какие создает/изменяет файлы на диске, создает/изменяет ключи реестра, устанавливает соединения и т.д. Эта информация необходима для сравнения ее с информацией из журнала проверки для того, чтобы можно было, во-первых, исключить те данные, которые относятся к работе чистых приложений, во-вторых, для выявления информации, которая относится к вредоносным приложениям и последствиям их работы.
База данных 190 статистики, которая содержит информацию обо всех известных вредоносных приложениях (т.н. blacklist), так и обо всех безвредных, т.е. "чистых" приложениях (т.н. whitelist), может пополняться несколькими путями. Информация о вредоносных приложениях пополняется путем анализа работы или эмуляции этих приложений на тестовых компьютерах или виртуальных машинах (таких как VirtualPC или VMWare) с последующим аккумулированием всех изменений в ОС. Информация о чистых приложениях может собираться аналогичным образом, а также предоставляться самими поставщиками этих приложений. Кроме того, как для вредоносных приложений, так и для чистых определяются характерные признаки, которые могут быть использованы для определения еще неизвестных приложений - как вредоносных, так и чистых.
После того как средство 140 разбора журнала проанализировало журнал проверки с целью определения активности вредоносных приложений и отфильтровало всю информацию, которая относится к чистым приложениям, средство 140 разбора журнала также выделяет объекты, которые относятся к вредоносным приложениям - например, файлы и ключи реестра. Информация по данным объектам попадает на средство 150 создания сценариев, которое использует данную информацию для создания сценария лечения компьютера 100 от вредоносных приложений и последствий их работы. В одном из вариантов реализации средство 140 разбора журнала также сохраняет информацию об объектах, которые относятся к вредоносным приложениям, и передает их на средство 130 расчета эффективности.
Сценарий лечения компьютера 100 состоит из ряда действий, которые необходимы для лечения компьютера 100 от вредоносных приложений и последствий их работы: удаление созданных/измененных файлов, восстановление измененных файлов (в первую очередь, системных), восстановление/удаление ключей реестра, завершение процессов и т.д. Для формирования подобных действий используются шаблоны действий по лечению компьютера, которые хранятся в базе данных 160 правил создания сценариев.
После создания средством 150 создания сценариев сценария лечения компьютера 100, он отправляется на проверку анализатору 170. Анализатор 170 использует базу данных 180 оценок опасности, в которой хранятся правила оценки действий, которые совершает сценарий лечения компьютера 100. Оценка заключается в проверке действия, которое будет выполнено сценарием лечения компьютера 100, с действиями, которые несут потенциальную опасность для компьютерной системы. Например, опасность для компьютерной системы несет модификация различных системных объектов, например, файлов.
Приведем конкретный пример, реализованный с помощью сценария AVZ:
Пример 1.
Жирным выделено действие, которое удаляет зараженный системный файл, после чего операционная система просто не сможет загрузиться.
Подобное действие должно быть заменено на менее опасное - например, восстановление файла из сохраненной копии.
Правило оценки действия включает следующие параметры.
Тип объекта. Например, это могут быть системные объекты, CLSID, процессы, ключи реестра и элементы автозапуска.
Действие. Действием может быть изменение объекта (например, редактирование файла или завершение процесса), удаление (например, ключа реестра) и т.д.
Оценка опасности. Может быть выражена в виде определенного числа, при этом оценки опасности разных действий могут суммироваться. Другой вариант реализации предусматривает разделение действий на допустимые и недопустимые применительно к различным объектам. Например, удаление того же самого системного файла является недопустимым действием, но его восстановление является допустимым.
В одном из вариантов реализации анализатор 170 может быть реализован в виде эмулятора, который проверяет синтаксическую корректность сценария лечения компьютера 100 и эмулирует его исполнение. В результате эмуляции получается список модифицированных объектов (например, файлов), которые были изменены, помещены в карантин, удалены и т.д. Список модифицированных объектов сверяется с учетом правил оценки действий из базы данных 180 оценок опасности. Эмуляция может быть выполнена, например, с использованием виртуальной машины, которая может быть запущена, используя в качестве настроек информацию о компьютере 100 (параметры ОС, установленные драйверы, запущенные службы и т.д.). Другой вариант реализации предусматривает предварительную проверку действий в сценарии лечения компьютера 100 до его выполнения, используя оценки действий из базы данных 180 оценок опасности.
Конечным результатом работы анализатора 170 является вердикт, согласно которому сценарий лечения компьютера 100 либо будет передан на компьютер 100 для его выполнения с помощью средства выполнения сценариев 120, либо сценарий лечения компьютера 100 будет отправлен на средство 150 создания сценариев с указанием списка недопустимых действий в отношении ряда выделенных объектов на компьютере 100.
В одном из вариантов реализации вердикт анализатора 170 о доработке сценария лечения компьютера 100 с помощью средства 150 создания сценариев может быть вынесен при обнаружении хотя бы одного недопустимого действия. В другом варианте реализации вердикт анализатора 170 о доработке сценария лечения компьютера 100 с помощью средства 150 создания сценариев может быть вынесен при обнаружении всех недопустимых действий в сценарии, которые должны быть исправлены. В еще одном варианте реализации вердикт анализатора 170 о доработке сценария лечения компьютера 100 с помощью средства 150 создания сценариев может быть вынесен при превышении заданного порога опасности сценария лечения компьютера 100 на основании обнаруженных действий в сценарии, каждое из которых имеет собственную оценку опасности, при этом порог опасности сценария лечения компьютера 100 вычисляется путем суммирования оценок опасности каждого обнаруженного действия.
В результате ряда итераций редактирования сценария лечения компьютера 100 с помощью средства 150 создания сценариев будет получен сценарий лечения компьютера 100, который не будет представлять угрозы для компьютера 100 и который будет отправлен на выполнение с помощью средства 120 выполнения сценариев. В одном из вариантов реализации самые опасные действия в сценарии лечении компьютера 100 будут убраны сразу (например, удаление системных файлов) или заменены на менее опасные (например, удаление зараженного системного файла будет замещено на восстановление его сохраненной копии).
В соответствии с одним из вариантов реализации лечение вредоносных приложений может быть реализовано с помощью нескольких средств 120 выполнения сценариев, чье количество может быть произвольным.
Например, одно из средств выполнения сценариев используется для обнаружения серьезных системных проблем, которые могли быть получены в результате, например, изменений системного реестра, выполненных вредоносным приложением. Эти изменения могут приводить к различному нарушению работы приложений и процессов и т.д.
Другим примером средства выполнения сценариев является модуль настройки безопасности. Этот модуль нужен для устранения различных проблем в системе, таких как, например, разрешение автозапуска от флэш-устройств, инсталляция и запуск компонент ActiveX без разрешения, и т.д. Еще другим примером средств выполнения сценариев является модуль очистки конфиденциальной информации. Этот модуль находит и удаляет результаты пользовательских действий, такие как, например, журналы различных браузеров, кэшированные данные, cookies, различные пароли для разнообразных программ и сайтов и т.д.
После того как средство 120 выполнения сценариев выполнило полученный сценарий лечения компьютера 100, средство 110 проверки снова создаст журнал проверки и отправит его на средство 140 разбора журнала. Средство 140 разбора журнала анализирует журнал проверки с целью определения активности вредоносных приложений для последующего удаления как самих вредоносных приложений, так и последствий их работы. Также средство 140 разбора журнала передает информацию об объектах, которые относятся к вредоносным приложениям, на средство 130 расчета эффективности, в котором сохранена информация об объектах, которые были найдены во время предыдущего анализа журнала проверки. Путем сравнения информации об объектах, которые относятся к вредоносным приложениям, найденным во время текущего анализа журнала проверки, и анализа журнала проверки предыдущей итерации, средство 130 расчета эффективности определяет эффективность лечения. В одном из вариантов реализации, эффективность лечения может быть высчитана по формуле (формула 1):
<mrow><mi>Э</mi><mi>ф</mi><mi>ф</mi><mi>е</mi><mi>к</mi><mi>т</mi><mi>и</mi><mi>в</mi><mi>н</mi><mi>о</mi><mi>с</mi><mi>т</mi><mi>ь</mi><mtext> </mtext><mo>=</mo><mtext> </mtext><mfrac><mrow><msub><mi>X</mi><mn>1</mn></msub><mo>−</mo><msub><mi>X</mi><mn>2</mn></msub></mrow><mrow><msub><mi>X</mi><mn>1</mn></msub></mrow></mfrac></mrow>
1
Где X - количество объектов, которые относятся к вредоносным приложениям, найденным во время предыдущей итерации проверки компьютера 100,
2
Х - количество объектов, которые относятся к вредоносным приложениям, найденным во время текущей итерации проверки компьютера 100.
В рамках других вариантов реализации эффективность лечения оценивается также по ряду других параметров, таких как ряд выполненных действий с помощью средства 120 выполнения сценариев, анализ сложных действий, которые были выполнены вредоносными приложениями в течение некоторого промежутка времени и т.д.
После оценки эффективности лечения, средство 130 расчета эффективности определяет необходимость дальнейшего лечения компьютера 100 путем сравнения эффективности лечения с заданным порогом, который может быть задан эмпирически с помощью экспертов, так и автоматически модифицироваться исходя из собранной статистики в базе данных статистики 190. Например, если эффективность лечения, вычисленная по формуле 1, равна единице, то это означает, что все объекты, которые относятся к вредоносным приложениям, были удалены и/или изменены и дальнейшее лечение не требуется.
В одном из вариантов реализации дальнейшее лечение компьютера 100 должно быть произведено в том случае, если остается хотя бы один объект, который относится к вредоносным приложениям. В другом варианте реализации дальнейшее лечение компьютера 100 приостанавливается в том случае, если эффективность лечения каждого последующего лечения равна нулю, т.е. не удается удалить объекты, которые относятся к вредоносным приложениям. В еще одном варианте реализации дальнейшее лечение компьютера 100 приостанавливается в том случае, если эффективность лечения каждого последующего лечения не меняется.
В еще одном варианте реализации дальнейшее лечение компьютера 100 подразумевает корректировку оценок опасности действий, которые были заблокированы с помощью анализатора 170, с помощью накопленной статистики в базе данных 190 статистики. Например, в результате такой корректировки появляется возможность производить действия с системными файлами, которые были запрещены из-за высоких оценок опасности. Допустимые действия могут включать восстановление файлов или изменение уже существующих, что позволит повысить эффективность последующего лечения.
Таким образом, для достижения более высокой эффективности лечения могут потребоваться действия, которые обладают высокой оценкой опасности. Следовательно, анализатор 170 подбирает наиболее подходящую связку из критериев опасность-эффективность для лечения компьютера, учитывая допустимые рамки обоих параметров. В том случае, если не удается повысить эффективность действий за счет повышения оценки опасности, то сценарий лечения компьютера будет доработан специалистом. Тем не менее, для ряда действий оценка опасности не может быть повышена по той причине, что выполнение этих действий может повлечь крах операционной системы на компьютере 100. В некоторых вариантах реализации при невозможности достижения подходящей эффективности из-за высокой оценки опасности действий могут применяться и другие возможности, например откладывание выполнения сценария до накопления в базе данных статистики 190 наиболее подходящих вариантов реализации нового сценария лечения компьютера 100 или добавление в сценарий лечения возможности загрузки с безопасного носителя для восстановления системы.
Фиг.2 иллюстрирует способ для выбора наиболее эффективного лечения компьютера от вредоносных приложений и последствий их работы.
На этапе 210 компьютер пользователя 100, на котором могут быть найдены вредоносные приложения, анализируется с помощью средства 110 проверки. На этапе 220 средство 110 проверки передает полученный журнал проверки на средство 140 разбора журнала, которое анализирует журнал проверки с целью определения активности вредоносных приложений. Средство 140 разбора журнала анализирует журнал проверки с целью определения активности вредоносных приложений и отфильтровывает всю информацию, которая относится к чистым приложениям (как процессам, так и потокам). Средство 140 разбора журнала также выделяет объекты, которые относятся к вредоносным приложениям, например файлы и ключи реестра. При обнаружении подобных объектов, происходит переход к этапе 225.
На этапе 225 проверяется, является ли анализ первым. При первом анализе способ переходит на этап 230. Если же анализ происходит уже не в первый раз, то на этапе 270 происходит оценка эффективности лечения с помощью средства 130 расчета эффективности. На этапе 280 проверяется, является ли эффективность лечения приемлемой и в случае положительного ответа способ завершает свою работу на этапе 290. В еще одном варианте реализации дальнейшее лечение компьютера 100 приостанавливается в том случае, если эффективность каждого последующего лечения равна нулю, т.е. не удается удалить объекты, которые относятся к вредоносным приложениям. В другом варианте реализации с целью повышения эффективности лечения подключается эксперт, который использует собственный опыт и набор утилит (например, с антируткит функционалом) для оценки оставшихся вредоносных приложений и последствий их работы.
Информация по объектам, которые относятся к вредоносным приложениям, попадает на средство 150 создания сценариев, которое использует данную информацию для создания сценария лечения компьютера 100 от вредоносных приложений и последствий их работы на этапе 230. Сам сценарий лечения компьютера 100 от вредоносных приложений и последствий их работы может быть создан с помощью средства 150 создания сценариев автоматически, вручную с помощью эксперта, так и путем комбинации предложенных методов. На этапе 240 полученный сценарий лечения компьютера 100 проверяется с помощью анализатора 170 на этапе 240 для выявления действий, которые несут потенциальную опасность для компьютерной системы. На этапе 250 проверяется соответствие сценария лечения компьютера 100 критериям опасности для компьютерной системы и эффективности лечения, и при положительном ответе сценарий лечения отправляется на выполнение на этапе 260. Далее способ снова начинается с этапа 210, пока не будет достигнута приемлемая эффективность лечения на этапе 280.
На Фиг.3 представлен пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс привода магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.).
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35 и дополнительные программные приложения 37, другие программные модули 38 и программные данные 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканнер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например колонки, принтер и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20. В вычислительной сети могут присутствовать также и другие устройства, например маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 51 и глобальную вычислительную сеть (WAN) 52. Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 51 через сетевой адаптер или сетевой интерфейс 53. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью 52, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего изобретения, согласующиеся с сущностью и объемом настоящего изобретения.