Система и способ оптимизации антивирусной проверки неактивных операционных систем Российский патент 2017 года по МПК G06F21/56 G06F12/02 

Описание патента на изобретение RU2638735C2

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

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

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

Компьютерная безопасность является неотъемлемой частью информационных технологий. Нарушение безопасности компьютеров может произойти в случае заражения компьютеров различными вредоносными программами (далее - вредоносными файлами), такими как вирусы, троянские программы, эксплойты (англ. exploit), руткиты (англ. rootkit), вирусы-невидимки (англ. stealth virus) и так далее. Заражение компьютеров может производиться различными способами, например, через информационные сети, как локальные, так и глобальные, или через внешние портативные запоминающие устройства («флэшки»). Примерами заражения через информационные сети являются такие способы как получение и прочтение электронного письма по электронной почте пользователя, содержащего во вложении вредоносный файл, или заражение при посещении пользователем веб-сайта, на котором был размещен вредоносный файл. Также вредоносный файл (например, «сетевой червь») может попытаться самостоятельно попасть на компьютер пользователя, т.е. без ведома пользователя. Многообразие вредоносных файлов и способов заражения побудило к появлению множества различных инструментов по защите компьютеров от воздействия вредоносных файлов. Такими инструментами являются антивирусные приложения, различные системы («сканеры»), производящие поиск вредоносных файлов, межсетевые экраны (англ. firewall) и так далее, вплоть до комплексных систем защиты от вредоносных файлов и их распространения. При этом все равно компьютеры пользователей по-прежнему заражаются вредоносными файлами.

Одной из причин продолжающегося заражения компьютеров является способность некоторых вредоносных файлов, таких как файлы-невидимки, скрываться от инструментов защиты. Другой причиной может являться все большее появления вредоносных файлов с целью получения коммерческой выгоды как разработчиками вредоносного программного обеспечения (ПО), так и их распространителями (заказчикам), что привело к созданию более сложных вредоносных файлов и как следствие усложнению процесса их выявления. Например, такими вредоносными программами (файлами) могут являться так называемые руткиты или вредоносные файлы, которые сопротивляются лечению (т.е. могут самостоятельно восстановиться, англ. Cure-resistant malware). Руткит представляет собой набор программных инструментов, которые позволяют скрывать свое присутствие на компьютере, а именно, скрывать процессы, запущенные из вредоносных файлов. Кроме того, руткиты могут внедряться на нулевом уровне защиты (уровень ядра в архитектуре информационной безопасности и функциональной отказоустойчивости), согласно которому руткиты получают максимальные привилегии доступа к ресурсам компьютера. Это позволяет руткитам перехватывать системные службы, которые операционная система и приложения используют во время работы на компьютере, и оставаться незамеченным на компьютере. Например, если антивирусное приложение, находящееся на компьютере, производит проверку данных/файлов, хранящихся на жестком (физическом) диске, то в рамках процесса проверки операционная система делает как минимум один вызов функции «открыть файл» при доступе к проверяемому файлу. Тем не менее, руткит произведет перехват вызываемой функции и вернет запрашиваемому процессу ответ, например, в виде ошибки «файл отсутствует» или перенаправит вызов функции на другой «чистый» файл. Таким образом, антивирусному приложению не удастся проверить требуемый файл и, соответственно, обнаружить вредоносный файл.

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

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

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

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

Сущность изобретения

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

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

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

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

В другом варианте исполнения системы средство перечисления ОС дополнительно при анализе структуры выявленного файла-загрузчика определяет полный адрес месторасположения файлов.

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

В другом варианте исполнения системы под идентификаторами логических дисков для ОС «Microsoft Windows» понимается по крайней мере имена логических дисков.

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

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

В еще одном варианте исполнения системы средство поиска файлов при получении информации более чем об одной неактивной ОС определяет последовательность и время проведения антивирусной проверки определенных неактивных ОС.

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

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

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

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

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

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

Краткое описание прилагаемых чертежей

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

Заявленное изобретение поясняется следующими чертежами.

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

Фиг. 2 иллюстрирует среду исполнения системы антивирусной проверки неактивных операционных систем.

Фиг. 3 иллюстрирует архитектуру системы антивирусной проверки неактивных операционных систем с последующим устранением последствий удаления вредоносного файла во время проведения антивирусной проверки файлов неактивной операционной системы.

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

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

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

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

На Фиг. 1 показана компьютерная система, на которой может быть реализовано описанное изобретение.

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

Персональный компьютер 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, представленного на Фиг. 1. В вычислительной сети могут присутствовать также и другие устройства, например маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.

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

Фиг. 2 иллюстрирует среду исполнения системы антивирусной проверки неактивных операционных систем.

На Фиг. 2 рассматривается один из вариантов осуществления заявленной системы антивирусной проверки неактивных операционных систем, а именно антивирусная проверка файлов неактивной операционной системы с помощью антивирусного средства 130 при наличии на компьютерном устройстве (компьютере) 20 двух и более установленных операционных систем. Стоит отметить, что под неактивной операционной системой (ОС) понимается такая ОС, которая установлена на компьютер 20 пользователя, но при этом не используется (не запущена) в текущий момент времени и хранится на запоминающем устройстве, например на жестком диске 27. В свою очередь под активной операционной системой понимается ОС, которая загружена и исполняется на компьютере. Примером такой ОС является операционная система 35, т.е. загруженная ОС в оперативную память 25 компьютера 20 и используемая в текущий момент времени пользователем.

Стоит отметить, что под запоминающим устройством понимается устройство, имеющее возможность хранить различные данные (файлы) или информацию, которую может использовать ОС, в том числе и данные самой ОС. Также запоминающее устройство может являться массивом запоминающих устройств, например, в виде RAID (англ. redundant array of independent disks - избыточный массив независимых жестких дисков), т.е. массив из нескольких дисков. Примерами запоминающих устройств являются как жесткий диск 27, так и такие устройства, как HHD (half-height drive - дисковый накопитель половинной высоты), SSD (Solid-State Disk - полупроводниковый диск), флэш-накопитель и другие. Массив запоминающих устройств может состоять как из устройств, физически связанных между собой, например, нескольких жестких дисков, так и разнесенных в пространстве и связанных через сеть, например, с помощью сети «Интернет» 190. Сеть может являться как локальной, так и глобальной. Массив запоминающих устройств может содержать как одинаковые типы устройств, так и отличные друг от друга.

В настоящее время операционные системы, в частности операционные системы семейства «Microsoft Windows», при взаимодействии с запоминающим устройством используют возможность деления запоминающих устройств (жестких дисков) на разделы (англ. partition). Раздел может быть либо первичным (англ. primary partition), либо расширенным (дополнительным, англ. extended partition). Кроме того, диск содержит таблицу разделов (англ. partition table), которая является частью главной загрузочной записи (англ. master boot record, MBR). Кроме того, первичных разделов может быть несколько, при этом каждый раздел может иметь свою файловую систему. Расширенный раздел может быть только один и не имеет собственной файловой системы, но при этом может содержать другие логические разделы (диски), при этом количество логических дисков и их размер ограничивается только размером запоминающего устройства. Кроме того, логические диски также как первичные разделы могут иметь как один тип файловой системы, так и различный. Разделение диска на разделы необходимо, например, для установки нескольких операционных систем, которые устанавливаются на отдельные логические разделы (диски) для отделения файлов одной ОС от файлов другой, или отделение файлов операционной системы от файлов пользователя, а также для удобства хранения и взаимодействия с файлами (данными), хранящимися на запоминающем устройстве.

Стоит отметить, что логический диск воспринимается ОС как отдельное устройство, которое имеет собственное имя, каталог(и) и другие данные, соответствующие жесткому диску. Поэтому каждому логическому диску присваивается свой идентификатор, например, буквенное наименование, такое как «C:», «D:», «Z:» и так далее. Разделение на логические диски, как правило, производится во время форматирования запоминающего устройства (далее данный термин будет использоваться как жесткий диск). Форматированием жесткого диска является разбиение жесткого диска в компьютере на адресуемые элементы с целью подготовки жесткого диска к приему информации. Кроме того, при установлении нескольких операционных систем на компьютер 20 каждая операционная система, как правило, будет хранить (размещать) свои данные (файлы) на отдельном логическом диске. Например, ОС «Windows ХР» будет размещена на локальном диске «С:», а ОС «Windows 7» на локальном диске «D:». В то же время, для каждой установленной операционной системы нумерация логических дисков будет индивидуальна (пример представлен в Таблице ниже).

Итак, рассмотрим частный вариант реализации заявленного изобретения, при этом жесткий диск 160 содержит по крайне мере две операционные системы, которые установлены на компьютере. Одна ОС запущена, т.е. является активной ОС, другая(ие) ОС не запущены, т.е. являются неактивной(ыми) ОС. Стоит отметить, что чем больше неактивных ОС установлены на компьютере и хранятся на жестком диске, тем наиболее предпочтительнее использовать заявленное изобретение, т.к. при увеличении ОС затрудняется антивирусная проверка каждой неактивной ОС в отдельности. Так, для проведения антивирусной проверки неактивных операционных систем загружена в оперативной памяти 35 компьютера 20 операционная система 35, например, «Linux», и запущено в загруженной ОС антивирусное средство 130, которое может являться как приложением 37, так и программно-аппаратным устройством, которое может быть исполнено на процессоре компьютера 20. Жесткий диск (запоминающее устройство) 160 может состоять как из одного жесткого диска 160а (не показан на Фиг. 2), так и из множества жестких дисков 160а…160n (не показаны на Фиг. 2).

Как было написано выше, жесткий диск 160 для каждой операционной системы представляет собой набор логических дисков, при этом для каждой операционной системы идентификатор (например, имя) каждого логического диска свой. Так, один и тот же раздел жесткого диска (т.е. локальный диск) будет иметь различные имена для различных ОС. Пример для компьютера, на котором жесткий диск разделен на четыре локальных диска и установлены две операционные системы (ОС «Windows ХР» и ОС «Windows 7»), представлен в таблице ниже.

Таким образом, при загрузке той или иной ОС идентификаторы (имена) логических дисков будут индивидуальны для каждой ОС, установленной на компьютер (как неактивной, так и активной). Поэтому для проверки какого-либо файла (данных, информации), хранящегося на жестком диске 160, какой-либо операционной системы необходимо произвести обращения к указанному файлу в соответствии с полным путем к файлу в конкретной ОС. Полный путь представляет собой строковое выражение, задающее местоположение файла. Примером полного пути (маршрута) к исполняемому файлу приложения «Kaspersky Endpoint Security 10» является следующее строковое выражение: «C:\Program Files (x86)\Kaspersky LabYKaspersky Endpoint Security 10 for Windows SP1\kesdr.exe».

Стоит отметить, что для вариантов реализации, когда на компьютере 20 установлена операционная система «Linux» кроме операционной системы Windows, то в «Linux» используется понятие «точка монтирования», которое соответствует идентификатору (имени) логических дисков так, что точка монтирования указывает на имя папки (файла) внутри файловой системы ОС «Linux», в которую отображается логический диск, имеющий соответствующий (определенный) идентификатор логического диска.

В свою очередь антивирусное средство 130, запущенное на компьютере 20 в активной операционной системе 35, содержит перечень средств 140, которые предназначены для проведения антивирусной проверки неактивных операционных систем, и базу данных 150. Состав средств из перечня средств 140 и их назначение представлены при описании Фиг. 3. База данных 150 хранит данные (информацию), предназначенные для выполнения антивирусной проверки неактивных ОС антивирусным средством 130 и/или его средствами из перечня средств 140. Примерами таких данных могут являться как описание вредоносных файлов (например, сигнатуры файлов в виде хеш-сумм), так и различные политики (правила) безопасности, контроля или выявления вредоносных файлов. Также база данных может хранить различную вспомогательную информацию, например, списки о различных типах файлов. База данных 150 является пополняемой и изменяемой, при этом пополнение и изменение производятся в соответствии с потребностями (необходимой информацией для выполнения средствами своего назначения) как самого антивирусного средства 130, так и с потребностями средств из перечня средств 140. В зависимости от варианта реализации изменения могут вноситься как непосредственно с компьютера пользователя, так и удаленным путем, например, с помощью антивирусного сервера 180 через сеть «Интернет» 190. Кроме того, в одном из вариантов реализации база данных 150 может быть размещена отдельно (удаленно) от антивирусного средства 130, например на антивирусном сервере 180. Также стоит отметить, что кроме базы данных 150 может использоваться любое элемент хранения информации. Так, например, файл, реестр или сектор на жестком диске.

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

Во время проведения антивирусной проверки неактивных ОС антивирусное средство 130 имеет возможность производить следующие действия:

- поиск всех неактивных ОС, таких как 170а…170n, на жестком диске 160, во время которого определяются идентификаторы (имена) логических дисков для каждой ОС, и связь между именами логических дисков различных ОС,

- определение необходимости проведения антивирусной проверки каждой выявленной неактивной ОС,

- формирование очереди антивирусной проверки неактивных ОС,

- поиск вредоносных файлов для каждой неактивной ОС,

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

- удаление или лечение вредоносного файла,

- очистка неактивной ОС (жесткого диска) от следов работы вредоносного файла, т.е. от следов вредоносной активности вредоносных файлов.

Стоит отметить, что под следами работы вредоносного файла понимаются различные связи вредоносного файла с другими файлами ОС, например наличие ссылки на вредоносный файл в другом файле; файл-ссылка (например, симлинк, от англ. Symbolic link) на другую (вторую, третью, …) часть вредоносного файла, размещенную в другой папке или даже на другом локальном диске; ссылки из системного реестра ОС на выявленный вредоносный файл или ярлык (англ. shortcut) в папке «Рабочий стол». Поиск же вредоносных файлов производится согласно идентификаторам дисков, которые соответствуют проверяемой неактивной ОС и в определенных местах (локальных дисках, каталогах, папках). Кроме того, в предпочтительном варианте реализации при проведении антивирусной проверки проводится проверка преимущественно автозапускаемых файлов, системных файлов ОС, критических файлов ОС и файлов, размещенных в папках автозапуска.

На Фиг. 3 показана архитектура системы антивирусной проверки неактивных операционных систем с последующим устранением последствий удаления вредоносного файла во время проведения антивирусной проверки файлов неактивной операционной системы. В одном из вариантов реализации система антивирусной проверки неактивных ОС (далее - заявленная система) содержит по крайней мере средство перечисления ОС 210, средство поиска вредоносных файлов в неактивных ОС (далее - средство поиска файлов) 220, средство очищения неактивной ОС (далее - средство очищения) 230 и средство контроля критических файлов (далее - средство контроля) 240. Кроме того, заявленная система или ее средства взаимодействуют с базой данных 150 и массивом жестких дисков (далее - жесткий диск) 160. Стоит отметить, заявленная система не ограничивается указанным составом средств, а также может иметь связь с удаленным сервером, например, антивирусным сервером 180 (показан на Фиг. 2). Связь с сервером 180 будет производиться через сеть «Интернет» 190.

Антивирусный сервер 180 может иметь различные назначения, в том числе в одном из вариантов реализации содержать базы данных 150 или, по крайней мере, одно из средств 210, 220, 230 и 240, т.е. иметь функционал и назначения указанных средств. В этом случае средство перечисления ОС 210, средство поиска файлов 220, средство сравнения 230 и средство контроля 240 могут частично или полностью перенаправлять возложенные на них задачи к антивирусному серверу 180. Тогда средства 210, 220, 230 и 240 будут являться средствами, которые передают и получают необходимую информации для работы системы антивирусной проверки неактивных ОС. Таким образом, упомянутая система в одном из вариантов реализации может являться распределенной системой.

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

Итак, средство перечисления ОС 210 предназначено для поиска на жестком диске 160 всех хранящихся ОС 170а…170n и определения списка логических дисков и соответствующих идентификаторов (например, имен) логических дисков для каждой найденной ОС. Для этого средство перечисления ОС 210 определяет все жесткие (физические) диски, установленные на компьютере 20, и производит разбор (анализ) структуры физического диска 160 (в том случае, когда несколько физических дисков, производится разбор каждого) с целью определения разделов физического диска и количества логических дисков, на которые разделены жесткие диски 160, установленные на компьютере 20. В одном из вариантов реализации разбор структуры жесткого диска 160 производится с помощью набора драйверов для различных файловых систем. В зависимости от реализации изобретения набор драйверов может входить как в состав средства перечисления ОС 210, так и запрашиваться из базы данных 150. Средство перечисления ОС 210 с помощью драйвера определяет список разделов физического диска, т.е. список логических дисков, на которые разделен физический диск 160. Далее средство 210 производит поиск и анализ установленных ОС на компьютере 20. Во время поиска установленных ОС средство 210 выявляет все файлы-загрузчики (т.е. файлы, которые необходимы для старта процесса загрузки ОС) операционных систем, содержащиеся на логических дисках. Кроме того, в одном из вариантов реализации при выявлении файла-загрузчика средство перечисления 210 проверяет его целостность. Целостность файла-загрузчика проверяется, например, с помощью определения наличия всей необходимой информации в файле. После чего средство перечисления 210 анализирует структуру каждого выявленного файла-загрузчика для определения по крайней мере типа ОС, к которой файл-загрузчик относится, полного пути (адреса) загрузки ОС и места хранения файлов, принадлежащих выявленной ОС. Кроме того, средство перечисления 210 дополнительно определяет имя семейства ОС, версию ОС, разрядность ОС, сервис для работы с файлами ОС, список пользователей, сервис для работы с системным реестром (только для Microsoft Windows). Например, путь загрузки для семейства ОС «Microsoft Windows ХР» определяется с помощью конфигуратора файла-загрузчика «boot.ini». Согласно определенному пути загрузки ОС, производится проверка наличия ОС по указанному адресу и выявляется системный реестр соответствующей ОС. После чего средство 210 анализирует системный реестр каждой обнаруженной ОС, во время которого определяет на каких логических дисках расположены файлы анализируемой ОС и какие имена логических дисков соответствуют анализируемой ОС. Таким образом, средство перечисления 210 выявляет все установленные неактивные операционные системы на компьютере 20, список логических дисков и имена логических дисков, соответствующие каждой установленной неактивной ОС. При этом дополнительно средство 210 сопоставит имена логических дисков одной неактивной ОС с именами логических дисков другой неактивной/активной ОС. Результатом сопоставления имен логических дисков различных ОС может являться сформированная таблица, содержащая информацию об именах логических дисков различных ОС. Далее средство перечисления 210 передает информацию об установленных неактивных ОС и соответствующих идентификаторах (именах) логических дисков средству поиска файлов 220. Под информацией об неактивных ОС понимается по крайней мере тип ОС, версия ОС и место размещения загрузочных файлов ОС, но не ограничивается ими.

В частном варианте реализации заявленного изобретения средство перечисления 210 может определить количество логических дисков с помощью активной (загруженной) ОС. Для этого средство 210 найдет системный реестр активной ОС и произведет его анализ (в случае с ОС «Windows»).

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

- ответ пользователя на запрос о проведении антивирусной проверки неактивных ОС (запрос может быть как по всем неактивным ОС, так и по некоторым из них), при этом в ответе пользователь указывает какие неактивные ОС необходимо проверить;

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

- дата последней антивирусной проверки неактивной ОС устарела, например, задается пользователем или по умолчанию временной порог между антивирусными проверками неактивной ОС, при превышении которого требуется проведения антивирусной проверки неактивной ОС;

- и т.д.

После определения необходимости проведения антивирусной проверки по крайней мере одной неактивной ОС средство поиска файлов 220 производит антивирусную проверку. Во время антивирусной проверки средство поиска файлов 220 определяет место размещения (полные путь хранения) каждого файла проверяемой неактивной ОС согласно именам (буквам) логических дисков, соответствующих проверяемой неактивной ОС. Для этого средство поиска файлов 220 сопоставляет идентификаторы (имена) логических дисков, относящиеся к проверяемой неактивной ОС, с идентификаторами логических дисков, относящимися к активной ОС. Стоит отметить, что антивирусная проверка может производиться как над всеми файлами проверяемой неактивной ОС, так и только над частью файлов. В предпочтительном варианте реализации производится антивирусная проверка файлов, которые относятся к автозапускаемым файлам, служащим для запуска проверяемой неактивной ОС, критическим файлам и исполняемым файлам, которые хранятся в папках «автозапуска» пользователей компьютера. Для того чтобы определить месторасположения указанных файлов, средство поиска файлов 220 использует полученные идентификаторы (например, имена) логических дисков для неактивной ОС и их соответствие идентификаторам (именам) логических дисков активной ОС. Для операционных систем семейства «Microsoft Windows» также будет проверен системный реестр неактивной ОС. Непосредственно антивирусная проверка файлов производится с помощью современных технических решений и технологий, содержащихся, например, в программных продуктах компании «АО Лаборатория Касперского».

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

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

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

Так, например, необходимость проведения дополнительного анализа (очистки неактивной ОС) связана с тем, что вредоносный файл может состоять из нескольких частей или иметь независимые части, которые могут как восстанавливать вредоносный файл, в случае его удаления, так содержать и исполнять вредоносную нагрузку или несанкционированные с пользователем действия (например, производить расчеты с помощью ресурсов компьютера для третьих лиц), которая будет исполняться на ОС в независимости от удаления вредоносного файла. Также могут быть различные ссылки из других файлов или системного реестра (для ОС Windows) к выявленному вредоносному файлу, которые также могут восстанавливать вредоносный файл или в случае удаления файла могут приводить к ошибке работе неактивной ОС, когда она будет загружена, в плоть до «зависания» ОС (невозможности продолжения работы ОС связанной, например, с зацикливанием команды). Так, в одном из примеров, файловая ссылка кроме текстового указателя на файл, к которому ссылка была изначально привязана, может содержать дополнительную информацию, относящуюся к вредоносному файлу и которая позволит восстановить указанный вредоносный файл. В другом примере вредоносная программа, имеющая распределенные по жесткому диску файлы, среди которых одним из файлов может являться символьная ссылка (англ. Symbolic). Символьная ссылка может содержать путь к любому объекту (файлу, другой ссылки, каталогу, несуществующему файлу), который должен быть открыт при обращении к символьной ссылки, причем объект может быть размещен как на логическом диске с другой файловой системой, так и в сети. В еще одном примере при удалении вредоносного файла был удален файл, отвечающий за работу какой-нибудь службы ОС, что приведет к нарушению в работе службы. Поэтому необходимо производить дополнительную проверку (очистку) неактивной ОС с целью выявления следов вредоносной активности вредоносного файла.

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

Рассмотрим такой пример: была выявлена символьная ссылка на логическом диске «С:», при этом имя логического диска соответствует неактивной ОС. Но поиск производится в активной ОС, которая имеет свое перечисление логических дисков. При анализе символьной ссылки был обнаружен указатель к файлу, размещенному на логическом диске «D:» (данное имя соответствует неактивной ОС). В тоже время для активной ОС указанный логический диск будет являться, например, логическим диском «Е:». В тоже время, логический диск «D:» активной ОС для неактивной ОС может являться, например, как логический диск «F:». Следовательно, если не произвести согласования имен для активной ОС и проверяемой неактивной ОС, то средство 230 произведет переход и поиск в другом месте хранения данных и ничего не выявит. Поэтому средство очищения 230 для правильного перехода по ссылке, указывающей на другую часть вредоносного файла, произведет согласование имен логических дисков всех операционных систем, обнаруженных на компьютере. После чего будет проведен дополнительный анализ.

По результатам дополнительной проверки средство очистки 230 удаляет найденные ссылки или файлы, если они также являются вредоносными, и/или сам вредоносный файл, который был обнаружен средством поиска файлов 220, если ранее вредоносный файл не был удален.

Кроме того, заявленное изобретение (средство очистки 230) может произвести проверку на возможную ошибку в дальнейшей работе проверяемой неактивной ОС после удаления вредоносного файла или перед его удалением. Для этого средство очистки 230 во время выполнения вышеописанных действий производит также анализ влияния (например, какую функцию выполняет вредоносный файл или связанные с ним файлы) вредоносного файла на другие файлы неактивной ОС и/или же произведет запрос к средству контроля критических файлов 240 для проверки вредоносного файла на критичность для проверяемой неактивной ОС.

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

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

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

На Фиг. 4 представлен пример способа перечисления операционных систем во время проведения антивирусной проверки неактивных операционных систем с помощью заявленного изобретения. На этапе 310 с помощью средства перечисления 210 определяют количество жестких дисков, установленных на компьютере. Стоит отметить, что здесь и далее в качестве жесткого диска может быть использовано по крайней мере одно запоминающее устройство. В результате чего производится разбор (анализ) структуры каждого физического диска с целью определения разделов физического диска и количества логических дисков, на которые разделен жесткий диск. Разбор структуры каждого жесткого диска производится с помощью набора драйверов для различных файловых систем, при этом набор драйверов в зависимости от реализации изобретения содержится или в самом средстве перечисления 210, или запрашивается из базы данных 150. На этапе 320 с помощью средства перечисления 210 определяют список разделов по крайней мере одного физического диска, т.е. список логических дисков, на которые разделен по крайней мере один физический диск. Для этого средство перечисления 210 использует указанный набор драйверов для различных типов файловых систем. Когда список логических дисков определен, то на этапе 330 производят выявление (поиск) всех файлов-загрузчиков операционных систем, которые содержатся на выявленных логических дисках с помощью средства перечисления 210. Кроме того, при выявлении файлов-загрузчиков средство перечисления 210 может произвести этап анализа указанного файла-загрузчика на целостность, т.е. на действительное наличие (присутствие) операционной системы на компьютере соответствующего файла-загрузчика, например, с помощью проверки наличия всех требуемых данных для загрузки соответствующей ОС (перечень таких данных заранее известен). После чего на этапе 340 анализируют структуру каждого выявленного файла-загрузчика для определения установленных ОС на компьютере пользователя. При анализе структуры файла-загрузчика определятся по крайней мере тип (имя) ОС и место хранения файлов определенной ОС (на каком логическом диске размещена ОС). Кроме того, для каждой ОС семейства «Microsoft Windows» (например, «Windows Vista», «Windows XP», «Windows 7») также производится поиск системного реестра. После определения всех установленных операционных систем (другими словами, формирования списка ОС) на этапе 350 определяют для каждой неактивной ОС соответствующие имена логических дисков из списка логических дисков. Так, например, для ОС Windows будет произведен анализ системного реестра, во время которого определяются имена логических дисков для указанной ОС Windows. После определения для каждой неактивной ОС соответствующих имен логических дисков средство перечисления 210 на этапе 360 производит сопоставления имен логических дисков различных ОС, причем как неактивных, так и активной. Как привило, активной ОС является одна ОС, которая загружена в момент времени работы заявленного изобретения. После чего может быть сформирована таблица связи имен логических дисков всех установленных ОС. На этапе 370 средство перечисления 210 передает информацию об неактивных ОС средству поиска файлов 220. При этом информация включает как сведения о самих неактивных ОС, так и о соответствующих каждой неактивной ОС именах логических дисков (например, в виде таблицы связи имен логических дисков для всех ОС).

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

На этапе 410 определяют необходимость проведения антивирусной проверки файлов для каждой выявленной неактивной ОС, при этом определение упомянутой необходимости производится на основании по крайней мере одного из перечисленных выше (при описании Фиг. 3) критериев. Например, таких как запрос пользователя или по дате проведения последней антивирусной проверки для соответствующей неактивной ОС. Стоит отметить, что под антивирусной проверкой файлов неактивной ОС или самой неактивной ОС в общем случае понимается проверка файлов, относящихся к автозапускаемым файлам и критическим файлам неактивной ОС. После определения неактивных ОС с помощью средства поиска файлов 220 определяют последовательность проведения антивирусной проверки неактивных ОС на этапе 420. В том случае, если антивирусная проверка необходима только для одной неактивной ОС, этап 420 может быть пропущен или последовательность будет содержать только одну неактивную ОС. В другом случае, если неактивных ОС будет по крайней мере две, то последовательность будет строиться согласно критериям, которые определили необходимость антивирусной проверки файлов неактивных ОС. Так, например, если будет запрос пользователя, то и последовательность будет определена в данном запросе. Если по дате последней проверки, то по принципу: чем дольше не было проверки неактивной ОС, тем выше приоритет проверки среди ОС. Далее на этапе 430 выявляют файлы, для которых будет произведена антивирусная проверка, для каждой неактивной ОС. Для этого определяют место размещения указанных файлов согласно именам логических дисков неактивной ОС и их сопоставлением с именами логических дисков активной ОС. После чего согласно месту размещения (полному пути хранения) каждого файла на этапе 440 производят антивирусную проверку каждого файла, проверяемой неактивной ОС. В предпочтительном варианте реализации производят антивирусную проверку файлов, которые относятся к автозапускаемым файлам, которые необходимы для запуска проверяемой неактивной ОС, критическим файлам и исполняемым файлам, которые хранятся в папках «автозапуска» учетных записей пользователей компьютера. На этапе 450 производят антивирусную проверку файлов с помощью современных технических решений и технологий, содержащихся, например, в программных продуктах компании «АО Лаборатория Касперского». В случае отсутствия вредоносного файла в неактивной ОС антивирусная проверка заканчивается. В противном случае, если по крайней мере один вредоносный файл был найдет, то передают его на этап 460. На этапе 460 производят проверку найденного вредоносного файла на его критичность относительно проверяемой неактивной ОС. Также в частном случае реализации вредоносный файл проверяют на его соответствие к критическим файлам всех ОС, установленных на компьютере. В одном из вариантов реализации проверка критичности файла заключается в сравнении выявленного вредоносного файла со списком критических файлов, который хранится в базе данных 150, для всех ОС, установленных на компьютере пользователя. В том случае, если вредоносный файл не является критическим файлом, производят удаление данного вредоносного файла на этапе 470. В противном случае, указанный вредоносный файл помещают в карантин и производят его лечение на этапе 480. Лечение заключается в анализе кода файла с последующим выявлением вредоносного функционала и последующим удалением найденного вредоносного функционала из файла. В том случае, если лечения указанного файла невозможно, производится удаление файла через замену безопасным файлов, который выполняет тоже предназначение, но не содержит вредоносного функционала. В этом случае безопасный файл размещается по месторасположению найденного вредоносного файла. Стоит отметить, что выявление критических файлов и их лечение или удаление позволит в дальнейшем избежать ошибок в работе неактивной ОС, когда она будет загружена.

На этапе 490 производят очищение проверяемой неактивной ОС с помощью средства очищения 230. Очищение заключается в поиске различных данных, связанных с вредоносным файлом с целью устранения следов работы вредоносного файла, т.е. устранения возможности восстановления вредоносного файла или устранения ошибки в работе неактивной ОС, когда она будет загружена в процессор. На этапе же 490 производят очистку согласно вариантам реализации, представленным при описании средства очищения 230 на Фиг. 3. После чего антивирусная проверка в соответствии с шагами 440-490 производится для последующей неактивной ОС, в случае определения необходимости проведения антивирусной проверки для двух и более неактивных ОС.

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

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

название год авторы номер документа
Удаление следов вредоносной активности из операционной системы, которая в настоящий момент не загружена на компьютерном устройстве 2016
  • Воронцов Дмитрий Викторович
  • Киржеманов Андрей Леонидович
  • Справцев Юрий Владимирович
RU2639666C2
Система и способ выполнения антивирусной проверки файла на виртуальной машине 2016
  • Монастырский Алексей Владимирович
  • Бутузов Виталий Владимирович
  • Головкин Максим Юрьевич
  • Карасовский Дмитрий Валериевич
  • Пинтийский Владислав Валерьевич
  • Кобычев Денис Юрьевич
RU2628921C1
Система и способ создания антивирусной записи 2018
  • Гордейчик Сергей Владимирович
  • Солдатов Сергей Владимирович
  • Сапронов Константин Владимирович
RU2697954C2
СИСТЕМА И СПОСОБ УВЕЛИЧЕНИЯ КАЧЕСТВА ОБНАРУЖЕНИЙ ВРЕДОНОСНЫХ ОБЪЕКТОВ С ИСПОЛЬЗОВАНИЕМ ПРАВИЛ И ПРИОРИТЕТОВ 2012
  • Зайцев Олег Владимирович
RU2514140C1
Система и способ обнаружения вредоносного кода в файле 2016
  • Головкин Максим Юрьевич
  • Монастырский Алексей Владимирович
  • Пинтийский Владислав Валерьевич
  • Павлющик Михаил Александрович
  • Бутузов Виталий Владимирович
  • Карасовский Дмитрий Валериевич
RU2637997C1
Система и способ адаптирования шаблонов опасного поведения программ к компьютерным системам пользователей 2017
  • Павлющик Михаил Александрович
  • Слободянюк Юрий Геннадьевич
  • Монастырский Алексей Владимирович
  • Мартыненко Владислав Валерьевич
RU2652448C1
СИСТЕМА И СПОСОБ ОБНАРУЖЕНИЯ ВРЕДОНОСНЫХ ИСПОЛНЯЕМЫХ ФАЙЛОВ НА ОСНОВАНИИ СХОДСТВА РЕСУРСОВ ИСПОЛНЯЕМЫХ ФАЙЛОВ 2013
  • Татаринов Иван Иванович
RU2541120C2
СИСТЕМА И СПОСОБ АНАЛИЗА СОБЫТИЙ ЗАПУСКА ФАЙЛОВ ДЛЯ ОПРЕДЕЛЕНИЯ РЕЙТИНГА ИХ БЕЗОПАСНОСТИ 2012
  • Павлющик Михаил Александрович
  • Монастырский Алексей Владимирович
RU2531565C2
Способ избирательного использования шаблонов опасного поведения программ 2017
  • Павлющик Михаил Александрович
  • Слободянюк Юрий Геннадьевич
  • Монастырский Алексей Владимирович
  • Мартыненко Владислав Валерьевич
RU2665909C1
Система и способ выявления наличия уязвимости в операционной системе на основании данных о процессах и потоках 2022
  • Монастырский Алексей Владимирович
  • Кондратьев Дмитрий Андреевич
RU2797716C1

Иллюстрации к изобретению RU 2 638 735 C2

Реферат патента 2017 года Система и способ оптимизации антивирусной проверки неактивных операционных систем

Изобретение относится к системе и способу антивирусной проверки операционных систем (ОС), установленных на компьютере и неактивных в момент проверки. Технический результат заключается в ускорении проведения антивирусной проверки неактивной ОС и в проведении антивирусной проверки только одной неактивной ОС при наличии нескольких установленных ОС. Система содержит средство перечисления ОС, предназначенное для поиска установленных неактивных ОС, определения идентификаторов логических дисков для каждой установленной неактивной ОС; средство поиска файлов, предназначенное для определения неактивной ОС, которую необходимо проверить на наличие вредоносных файлов, и проведения антивирусной проверки файлов неактивной ОС, причем при наличии нескольких установленных неактивных ОС производится выбор неактивной ОС для антивирусной проверки, при этом сопоставляют идентификаторы логических дисков, относящиеся к неактивной ОС, с идентификаторами логических дисков, относящимися к активной ОС, где под активной ОС понимается ОС, которая запущена в момент проведения проверки; определяют файлы, которые относятся к неактивной ОС, в активной ОС согласно полному пути хранения указанных файлов в неактивной ОС через сопоставленные идентификаторы логических дисков. 2 н. и 15 з.п. ф-лы, 5 ил., 1 табл.

Формула изобретения RU 2 638 735 C2

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

а) базу данных, связанную со средством перечисления операционных систем (ОС) и средством поиска файлов, предназначенную для хранения по крайней мере набора драйверов для различных файловых систем и информации, предназначенной для выполнения антивирусной проверки неактивных ОС;

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

- определяет все жесткие диски, установленные на компьютере;

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

- определяет список логических дисков;

- выявляет файлы, выполняющие загрузку ОС (файлы-загрузчики) на определенных логических дисках;

- производит анализ структуры каждого выявленного файла-загрузчика, во время которого определяется тип ОС, к которой относится файл-загрузчик, и места размещения ОС на логических дисках;

- формирует список неактивных ОС, который содержит по крайней мере одну неактивную ОС; и

- определяет идентификаторы логических дисков для каждой неактивной ОС;

в) средство поиска файлов, предназначенное для определения по крайней мере одной неактивной ОС, которую необходимо проверить на наличие вредоносных файлов, и проведения антивирусной проверки файлов по крайней мере одной неактивной ОС, причем при наличии нескольких установленных неактивных ОС производится выбор неактивной ОС для антивирусной проверки, при этом во время антивирусной проверки неактивной ОС средство поиска файлов:

- сопоставляет идентификаторы логических дисков, относящиеся к неактивной ОС, с идентификаторами логических дисков, относящимися к активной ОС, где под активной ОС понимается ОС, которая запущена в момент проведения указанной проверки;

- определяет файлы, которые относятся к неактивной ОС, в активной ОС согласно полному пути хранения указанных файлов в неактивной ОС через сопоставленные идентификаторы логических дисков;

- производит антивирусную проверку определенных файлов по определенным адресам хранения;

- выявляет и удаляет по крайней мере один вредоносный файл.

2. Система по п. 1, в которой средство перечисления ОС дополнительно при анализе структуры выявленного файла-загрузчика определяет полный адрес месторасположения файлов.

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

4. Система по п. 1, в которой под идентификаторами логических дисков для ОС «Microsoft Windows» понимаются по крайней мере имена логических дисков.

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

6. Система по п. 1, в которой упомянутое средство поиска файлов выявляет только файлы для проведения антивирусной проверки, относящиеся к автозапускаемым файлам ОС, системным файлам ОС, критическим файлам ОС и исполняемым файлам, хранящимся в папках «автозапуска» пользователей компьютера.

7. Система по п. 1, в которой средство поиска файлов при получении информации более чем об одной неактивной ОС определяет последовательность и время проведения антивирусной проверки определенных неактивных ОС.

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

9. Система по п. 8, в которой средство поиска файлов необходимость проведения антивирусной проверки определяет с помощью запроса к пользователю или автоматически.

10. Система по п. 9, в которой средство поиска файлов при автоматическом определении антивирусной проверки руководствуется по крайней мере одним из следующих критериев: датой последней антивирусной проверки или графиком антивирусной проверки неактивных ОС.

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

а) производят с помощью средства перечисления ОС поиск по крайней мере одной установленной на компьютере неактивной ОС, во время которого:

- определяют все жесткие диски, установленные на компьютере,

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

- определяют список логических дисков,

- выявляют файлы, выполняющие загрузку ОС (файлы-загрузчики) на определенных логических дисках,

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

- формируют список неактивных ОС, который содержит по крайней мере одну неактивную ОС,

- определяют идентификаторы логических дисков для каждой установленной неактивной ОС;

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

- сопоставляют идентификаторы логических дисков, относящиеся к неактивной ОС, с идентификаторами логических дисков, относящимися к активной ОС, где под активной ОС понимается ОС, которая запущена в момент проведения указанной проверки,

- определяют файлы, которые относятся к неактивной ОС, в активной ОС согласно полному пути хранения указанных файлов в неактивной ОС через сопоставленные идентификаторы логических дисков,

- производят антивирусную проверку определенных файлов согласно определенным адресам хранения,

- выявляют и удаляют по крайней мере один вредоносный файл.

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

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

14. Способ по п. 11, в котором при определении более одной неактивной операционной системы определяют последовательность и время проведения антивирусной проверки определенных неактивных операционных систем.

15. Способ по п. 11, в котором при определении более одной неактивной операционной системы определяют необходимость проведения антивирусной проверки каждой неактивной операционной системы.

16. Способ по п. 15, в котором необходимость проведения антивирусной проверки определяют с помощью запроса к пользователю или автоматически.

17. Способ по п. 11, в котором выявляют только файлы для проведения антивирусной проверки, относящиеся к автозапускаемым файлам ОС, системным файлам ОС, критическим файлам ОС и исполняемым файлам, хранящимся в папках «автозапуска» пользователей компьютера.

Документы, цитированные в отчете о поиске Патент 2017 года RU2638735C2

Способ приготовления лака 1924
  • Петров Г.С.
SU2011A1
Приспособление для суммирования отрезков прямых линий 1923
  • Иванцов Г.П.
SU2010A1
Приспособление для суммирования отрезков прямых линий 1923
  • Иванцов Г.П.
SU2010A1
Пломбировальные щипцы 1923
  • Громов И.С.
SU2006A1
Пломбировальные щипцы 1923
  • Громов И.С.
SU2006A1
СПОСОБ И УСТРОЙСТВО ДЛЯ ПРОВЕРКИ ФАЙЛОВОЙ СИСТЕМЫ НА НАЛИЧИЕ ВИРУСОВ 2010
  • Ниемеля Ярно
  • Хармонен Тимо
  • Зирвальд Йорн
  • Стохлберг Мика
RU2551820C2

RU 2 638 735 C2

Авторы

Воронцов Дмитрий Викторович

Киржеманов Андрей Леонидович

Справцев Юрий Владимирович

Даты

2017-12-15Публикация

2016-04-25Подача