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

Иллюстрации

Показать все

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

Реферат

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

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

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

Компьютерная безопасность является неотъемлемой частью информационных технологий. Нарушение безопасности компьютеров может произойти в случае заражения компьютеров различными вредоносными программами (далее - вредоносными файлами), такими как вирусы, троянские программы, эксплойты (англ. 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 выявляет все файлы-загрузчики (т.е. файлы, которые необходимы для старта процесса загрузки ОС) операционных систем, содержащиеся на логических дисках. Кроме того, в одном из вариантов реализации при выявлении файла-загрузчика средство переч