объединение вирусной проверки и репликационной фильтрации
Классы МПК: | G06F12/16 защита от потерь данных в памяти |
Автор(ы): | ФРИС Роберт М. (US), СОМДЖИ Шираз М. (US) |
Патентообладатель(и): | МАЙКРОСОФТ КОРПОРЕЙШН (US) |
Приоритеты: |
подача заявки:
2007-03-15 публикация патента:
20.11.2011 |
Изобретение относится к системам объединения вирусной проверки и репликационной фильтрации. Техническим результатом является обеспечение антивирусной защиты данных. Способ содержит: осуществление доступа к одной или более записям в файл посредством комбинированного антивирусного/репликационного фильтра, используют функциональные возможности сканирования на предмет вирусов из состава комбинированного антивирусного/репликационного фильтра, обнаруживают, является ли запись в файл содержащей вирус, предпринимают одно или более действий на основе того, является ли запись в файл содержащей вирус, и помечают запись в файл одним или более вирусными индикаторами, представляющими информацию о вирусе, относящуюся к записи в файл. 3 н. и 10 з.п. ф-лы, 4 ил.
Формула изобретения
1. Реализуемый на рабочем сервере в компьютеризованной среде, в которой рабочий сервер резервируется одним или более серверами резервного копирования, способ управления процессами фильтрации вирусов и фильтрации резервного копирования посредством общего фильтра, содержащий этапы, на которых
осуществляют доступ к одной или более записям в файл посредством комбинированного антивирусного/репликационного фильтра, причем комбинированный антивирусный/репликационный фильтр содержит как функциональные возможности сканирования на предмет вирусов, так и функциональные возможности репликации данных;
используют функциональные возможности сканирования на предмет вирусов из состава комбинированного антивирусного/репликационного фильтра для сканирования одной или более записей в файл, к которым осуществлен доступ, в соответствии с одним или более определениями вирусов, при этом для каждой из одной или более записей в файл, к которым осуществлен доступ:
обнаруживают, является ли запись в файл, к которой осуществлен доступ, содержащей вирус, на основе упомянутых одного или более определений вирусов,
предпринимают одно или более действий на основе того, является ли запись в файл, к которой осуществлен доступ, содержащей вирус или нет, и
помечают запись в файл одним или более вирусными индикаторами, представляющими информацию о вирусе, относящуюся к записи в файл, к которой осуществлен доступ, причем эти один или более вирусных индикаторов указывают, является ли запись в файл, к которой осуществлен доступ, содержащей вирус или нет, и указывают предпринятые одно или более действий, так что информация о вирусе, относящаяся к записи в файл, может переноситься вместе с записью в файл;
используют функциональные возможности репликации данных из состава комбинированного антивирусного/репликационного фильтра для сравнения каждой из одной или более записей в файл, к которым осуществлен доступ, и соответствующих пометок вирусными индикаторами с одной или более репликационными политиками для определения того, какие, если такие вообще есть, из одной или более записей в файл, к которым осуществлен доступ, должны быть реплицированы; и
используют функциональные возможности репликации данных из состава комбинированного антивирусного/репликационного фильтра для репликации, по меньшей мере, одной из одной или более записей в файл, к которым осуществлен доступ, вместе с ее соответствующими пометками вирусными индикаторами, так чтобы информация о вирусе, относящаяся к этой, по меньшей мере, одной записи в файл, распространялась совместно с данной, по меньшей мере, одной записью в файл на сервер резервного копирования, при этом репликация информации о вирусе обеспечивает возможность модулям, которые впоследствии осуществляют доступ к упомянутой, по меньшей мере, одной записи в файл, принимать решения касаемо этой, по меньшей мере, одной записи в файл без необходимости выполнять дополнительные сканирования на предмет вирусов в отношении данной, по меньшей мере, одной записи в файл.
2. Способ по п.1, в котором при обнаружении того, является ли запись в файл, к которой осуществлен доступ, содержащей вирус или нет, на основе одного или более определений вирусов, идентифицируют эту запись в файл, к которой осуществлен доступ, как инфицированную каким-либо из одного или более вирусов.
3. Способ по п.2, в котором при помечании записи в файл одним или более вирусными индикаторами запись в файл помечают одним или более вирусными индикаторами до сравнения одной или более записей в файл с одной или более репликационными политиками.
4. Способ по п.3, в котором один или более вирусных индикаторов идентифицируют, что вирус был идентифицирован, но не был удален.
5. Способ по п.3, дополнительно содержащий этап, на котором удаляют любые из одного или более вирусов, причем один или более вирусных индикаторов идентифицируют, что, по меньшей мере, одна запись в файл имела место, но теперь удалена.
6. Способ по п.1, в котором при использовании функциональных возможностей репликации данных из состава комбинированного антивирусного/репликационного фильтра для определения того, какие, если такие вообще есть, из одной или более записей в файл, к которым осуществлен доступ, должны быть реплицированы, принимают решение не реплицировать, по меньшей мере, одну запись в файл вследствие инфицирования вирусом.
7. Способ по п.1, дополнительно содержащий этапы, на которых
принимают один или более запросов на восстановление данных, хранящихся на сервере резервного копирования, и
идентифицируют, что, по меньшей мере, один из этих одного или более запросов ссылается на данные, которые ассоциированы с одним или более вирусными индикаторами.
8. Способ по п.7, дополнительно содержащий этап, на котором посылают один или более ответов на упомянутые один или более запросов на основе идентифицированных вирусных индикаторов.
9. Способ по п.8, в котором, по меньшей мере, один из упомянутых одного или более ответов указывает, что запрашиваемые данные:
(i) ассоциированы с одним или более вирусами,
(ii) не могут быть восстановлены по причине одного или более вирусов или
(iii) могут быть восстановлены, только если сначала удалить один или более вирусов.
10. Реализуемый на сервере резервного копирования в компьютеризованной среде, в которой сервер резервного копирования резервирует данные для одного или более рабочих серверов, способ управления реплицируемыми данными в соответствии с одним или более вирусными индикаторами, обеспечиваемыми комбинированным антивирусным/репликационным фильтром, содержащим как функциональные возможности сканирования на предмет вирусов, так и функциональные возможности репликации данных, содержащий этапы, на которых
принимают резервную копию данных с одного из упомянутых одного или более рабочих серверов, при этом резервной копией данных запрашивается репликация записи в файл вместе с одним или более вирусными индикаторами, указывающими информацию о вирусе, относящуюся к записи в файл, при этом запись в файл помечена вирусными индикаторами посредством функциональных возможностей сканирования на предмет вирусов из состава комбинированного антивирусного/репликационного фильтра во время предшествующего сканирования на предмет вирусов в отношении записи в файл, так что сервер резервного копирования может осуществлять доступ к информации о вирусе, относящейся к записи в файл, без необходимости выполнять дополнительные сканирования на предмет вирусов, при этом вирусные индикаторы указывают, стала ли в некоторый момент запись в файл содержащей вирус или нет, и указывают какие-либо действия, предпринятые в отношении записи в файл на основе того, стала ли в некоторый момент запись в файл содержащей вирус или нет;
осуществляют доступ к упомянутым одному или более вирусным индикаторам из резервной копии данных;
применяют одну или более политик сервера резервного копирования для сервера резервного копирования к запросу на данные для идентификации одного или более ответных действий, которые должны быть предприняты для запроса на данные, на основе информации о вирусе, указываемой в вирусных индикаторах.
11. Способ по п.10, в котором идентифицированные одно или более ответных действий включают в себя удаление одного или более вирусов из записи в файл.
12. Способ по п.10, в котором идентифицированные одно или более ответных действий включают в себя одно или более из очистки, по меньшей мере, части записи в файл и очистки предыдущей копии записи в файл на сервере резервного копирования.
13. Машиночитаемый носитель для использования в компьютеризованной среде, в которой рабочий сервер резервируется одним или более серверами резервного копирования, при этом на машиночитаемом носителе сохранены машиноисполняемые инструкции, которые при их исполнении процессором предписывают рабочему серверу выполнять способ управления процессами фильтрации вирусов и фильтрации резервного копирования посредством общего фильтра, содержащий этапы, на которых
осуществляют доступ к записи в файл посредством комбинированного антивирусного/репликационного фильтра, причем комбинированный антивирусный/репликационный фильтр содержит как функциональные возможности сканирования на предмет вирусов, так и функциональные возможности репликации данных;
используют функциональные возможности сканирования на предмет вирусов из состава комбинированного антивирусного/репликационного фильтра для сканирования записи в файл, к которой осуществлен доступ, в соответствии с одним или более определениями вирусов, при этом для записи в файл, к которой осуществлен доступ:
обнаруживают, что запись в файл, к которой осуществлен доступ, является содержащей вирус, на основе упомянутых одного или более определений вирусов,
предпринимают одно или более действий, чтобы удалить вирус, на основе обнаружения того, что запись в файл, к которой осуществлен доступ, является содержащей вирус, и помечают запись в файл одним или более вирусными индикаторами, представляющими информацию о вирусе, относящуюся к записи в файл, к которой осуществлен доступ, причем эти один или более вирусных индикаторов указывают, что запись в файл, к которой осуществлен доступ, является содержащей вирус, и указывают одно или более действий, предпринятые для удаления вируса, так что информация о вирусе, относящаяся к записи в файл, может переноситься вместе с записью в файл;
используют функциональные возможности репликации данных из состава комбинированного антивирусного/репликационного фильтра для сравнения записи в файл, к которой осуществлен доступ, и соответствующих пометок вирусными индикаторами с одной или более репликационными политиками для определения того, что запись в файл, к которой осуществлен доступ, должна быть реплицирована; и
используют функциональные возможности репликации данных из состава комбинированного антивирусного/репликационного фильтра для репликации записи в файл, к которой осуществлен доступ, вместе с ее соответствующими пометками вирусными индикаторами, так чтобы информация о вирусе, относящаяся к записи в файл, распространялась совместно с записью в файл на сервер резервного копирования, при этом репликация информации о вирусе обеспечивает возможность модулям, которые впоследствии осуществляют доступ к записи в файл, принимать решения касаемо записи в файл на основе того, что запись в файл оказалась содержащей вирус и что одно или более действий были предприняты для удаления вируса, без необходимости выполнять дополнительные сканирования на предмет вирусов в отношении записи в файл.
Описание изобретения к патенту
Уровень техники
В силу, по меньшей мере частично, распространенности электронных файлов отдельные лица и организации испытывают потребность в защите электронных файлов на регулярной основе. Один способ защиты электронных файлов состоит в периодическом резервном копировании файлов для создания надежного восстановления данных. Для этого традиционные системы резервного копирования на индивидуальном уровне или на уровне предприятия могут включать в себя один или несколько репликационных фильтров, которые идентифицируют, подлежат ли записи в данные резервному копированию на сервере резервного копирования. Например, пользователь может произвести одну или несколько записей в данные, а репликационный фильтр затем может перехватить каждую запись, и затем определить, относится ли запись к данным, подлежащим защите (т.е. резервному копированию). Если файл подлежит защите, репликационный фильтр может затем передать запись в файл журнала, содержащий много таких записей.
Файл журнала (или его соответствующая копия) может затем быть передан на один или несколько серверов резервного копирования. Например, пользователь на персональном компьютере может запустить один или несколько процессов резервного копирования, которые реплицируют файл журнала и/или любые другие подобные идентифицированные данные в одну или несколько локальных или удаленных выделенных областей хранения, например, связанных с конкретным сервером резервного копирования. Аналогично, один или несколько репликационных агентов на рабочем сервере могут запланировать резервное копирование файла журнала на рабочем сервере, и затем передать новые данные записи в одну или несколько выделенных областей хранения на сервере резервного копирования. В последнем случае пользователь (или администратор рабочего сервера) может затем запрашивать данные, связанные с реплицированным файлом журнала, из сервера резервного копирования.
Однако подобное резервное копирование данных является лишь одним способом защиты данных. Другие способы защиты данных включают в себя, например, вирусное сканирование. В частности, хорошо известно, что компьютерные вирусы могут уничтожать данные и наносить ущерб компьютерным системам, который может приводить к дальнейшей потере файлов, которые первоначально не были инфицированы. Поэтому для борьбы с такими угрозами пользователь или администратор должен установить одну или несколько антивирусных программ на одной или нескольких компьютерных системах. Один способ работы традиционного антивирусного программного обеспечения предусматривает использование одного или нескольких антивирусных фильтров, которые идентифицируют записи в конкретный файл и затем сканируют запись, чтобы определить, содержит ли запись известный вирус. Способность антивирусного программного обеспечения распознавать вирус обычно опирается на набор антивирусных дефиниций, которые антивирусный фильтр проверяет при сканировании записей в файл. При этом сможет ли антивирусный фильтр идентифицировать вирус, зависит от степени обновленности антивирусных дефиниций. В частности, если антивирусное программное обеспечение давно не обновлялось, антивирусный(е) фильтр(ы) может идентифицировать, что конкретный(ая) файл (или запись в файл) чист(а), несмотря на то, что файл в действительности может содержать недавно созданный вирус.
Отсюда следует, что сущность (частное лицо или организация, и т.д.) может установить несколько разных программ для защиты данных, которые могут включать в себя несколько разных программных фильтров, действующих независимо друг от друга. В одном традиционном примере каждая программа, имеющая фильтр, сначала зарегистрирует этот фильтр (например, антивирусный фильтр и/или репликационный фильтр) с помощью менеджера фильтрации операционной системы. Менеджер фильтрации, в свою очередь, передает каждую запись в файл на каждый фильтр, когда или если необходимо. В целом, может быть трудно настроить, как каждый программный фильтр должен регистрироваться с помощью менеджера фильтрации, чтобы гарантировать любое необходимое упорядочение. В результате, может случиться так, что менеджер фильтрации передаст записи в файл на репликационный фильтр и затем на антивирусный фильтр. В других случаях, конечно, менеджер фильтрации может сначала передать запись в файл на антивирусный фильтр прежде, чем отправить ее на репликационный фильтр.
К сожалению, несмотря на то, что конкретное упорядочение фильтров может быть трудно настраивать, упорядочение фильтров может оказывать значительное влияние на то, как данные защищаются и/или сохраняются. Например, одна особо важная проблема с организациями, которые реализуют системы резервного копирования, состоит в том, что невозможность выявить определенные электронные вирусы может привести к более широкому распространению вирусов при выполнении процессов резервного копирования. Эта проблема может быть особенно острой, когда, например, репликационный фильтр принимает записи в файл и передает их в файл журнала прежде, чем эти записи в файл будут обследованы антивирусным фильтром. Такое упорядочение фильтров может означать в ряде случаев, что инфицированный файл может не быть вылечен или даже идентифицирован как инфицированный, прежде чем файл будет передан на сервер резервного копирования.
Напротив, даже если бы можно было гарантировать, что антивирусный фильтр принимает записи в файл до репликационного фильтра, это не решило бы все потенциальные проблемы. Например, инфицированный файл в компьютерной системе может пройти незамеченным, если антивирусные дефиниции, используемые антивирусным фильтром, устарели, например, если дефиниция еще не создана для вируса, инфицирующего файл. При этом файл может реплицироваться один или несколько раз репликационным фильтром, даже если первый проверен антивирусным фильтром. Это может приводить к тому, что на сервере резервного копирования может существовать несколько резервных копий инфицированной версии файла. При наличии обновления антивирусных дефиниций для антивирусного фильтра для включения этого конкретного вируса антивирусный фильтр сможет, в конце концов, идентифицировать, что новые записи в файл инфицированы.
Однако в большинстве случаев антивирусный фильтр просто вычищает или удаляет инфицированную запись в файл и/или весь соответствующий базовый файл на рабочем сервере. К сожалению, репликационный фильтр обычно не располагает информацией о действиях по идентификации вирусов и/или очистки от вирусов, выполняемых антивирусным фильтром, и, таким образом, просто реплицирует очищенные записи в файл. Реплицированный(е) файл и/или записи в файл для очищенного файла затем поступает(ют) в файл журнала и/или иначе реплицируе(ю)тся обратно на сервер резервного копирования, как это обычно делается. При этом сервер резервного копирования не знает, был ли файл инфицирован, и просто сохраняет обновленные резервные копии файла (т.е. включающие в себя новые записи в файл) совместно с ранее инфицированными данными файла. Таким образом, несмотря на то, что антивирусный фильтр можно расположить до репликационного фильтра на рабочем сервере, это не будет гарантировать, что инфицированные данные на сервере резервного копирования будут очищены.
Соответственно существует ряд трудностей, связанных с адресацией информации о вирусе в системах резервного копирования.
Сущность изобретения
Реализации настоящего изобретения предусматривают системы, способы и компьютерные программные продукты, которые эффективно распространяют антивирусную информацию по данным в среде резервного копирования. В, по меньшей мере, одной реализации, например, общий фильтр содержит антивирусный и репликационный компоненты фильтра. Общий фильтр может принимать записи в файл и передавать записи в файл на антивирусный компонент. Антивирусный компонент сканирует каждую запись в файл и передает каждую сканированную запись в файл совместно с любой необходимой антивирусной информацией для записи в файл на компонент репликационной фильтрации общего фильтра. Таким образом, репликационный фильтр может реплицировать определенные записи в файл журнала таким образом, чтобы поддерживать любую информацию о ранее обнаруженном вирусе. При этом как рабочий сервер, так и сервер резервного копирования может идентифицировать, должны ли принятые резервные данные или ранее принятые резервные данные привлекать внимание антивируса.
Например , один иллюстративный способ, выполняющийся на рабочем сервере, управления процессами фильтрации вирусов и фильтрации резервирования посредством общего фильтра может включать в себя этап, на котором идентифицируют одну или несколько записей в файлы посредством общего фильтра. Кроме того, способ может включать в себя этап, на котором сканируют одну или несколько записей в файл, идентифицированные на общем фильтре, в соответствии с одной или несколькими вирусными дефинициями. Способ также может включать в себя этап, на котором сравнивают одну или несколько сканированных записей в файл, идентифицированных на общем фильтре, с одной или несколькими репликационными политиками. Кроме того, способ может включать в себя этап, на котором передают копию, по меньшей мере, одной из одной или нескольких сканированных записей в файл в файл журнала, благодаря чему, по меньшей мере, одна запись в файл реплицируется на сервер резервного копирования.
Напротив, иллюстративный способ, выполняющийся на сервере резервного копирования, управления реплицированными данными в соответствии с одним или несколькими вирусными индикаторами, может включать в себя этап, на котором принимают одну или несколько резервных копий данных с одного или нескольких продукционных серверов. Кроме того, способ может включать в себя этап, на котором идентифицируют один или несколько вирусных индикаторов одной или нескольких принятых резервных копий данных. В этом случае один или несколько вирусных индикаторов могут идентифицировать, что, по меньшей мере, одна из одной или нескольких резервных копий данных связана с инфицированными данными. Способ также может включать в себя этап, на котором идентифицируют одну или несколько политик для сервера резервного копирования. В целом, одна или несколько политик могут идентифицировать одно или несколько ответных действий, которые соответствуют одному или нескольким вирусным индикаторам. Кроме того, способ может включать в себя этап, на котором выполняют любое из одного или нескольких ответных действий в соответствии с одной или несколькими политиками.
Эта сущность изобретения призвана представлять в упрощенной форме ряд концепций, которые дополнительно описаны ниже в подробном описании. Эта сущность изобретения не призвана идентифицировать ключевые признаки или существенные признаки заявленного изобретения, а также не призвана определять объем заявленного изобретения.
Дополнительные признаки и преимущества изобретения будут изложены в нижеследующем описании, и отчасти будут ясны из описания, или смогут быть изучены в ходе практического применения изобретения. Признаки и преимущества изобретения могут быть реализованы и достигнуты посредством инструментов и комбинаций, конкретно указанных в прилагаемой формуле изобретения. Эти и другие признаки настоящего изобретения будут ясны из нижеследующего описания и прилагаемой формулы изобретения, или смогут быть изучены в ходе практического применения изобретения, как указано выше.
Краткое описание чертежей
Для описания, каким образом можно получить вышеупомянутые и другие преимущества и признаки изобретения, более конкретное описание изобретения, кратко описанного выше, будет представлено со ссылкой на конкретные варианты его осуществления, которые проиллюстрированы в прилагаемых чертежах. С учетом того, что эти чертежи описывают только типичные варианты осуществления изобретения и поэтому не подлежат рассмотрению в порядке ограничения его объема, изобретение будет описано и объяснено с дополнительной специфичностью и детализацией с использованием прилагаемых чертежей, в которых:
фиг.1A - общая схема в соответствии с реализацией настоящего изобретения, в которой рабочий сервер сканирует записи в файл посредством общего антивирусного/репликационного фильтра и передает эти записи в файл на сервер резервного копирования;
фиг.1B - более детальная схема процессов на рабочем сервере в соответствии с реализацией настоящего изобретения, в которой общий антивирусный/репликационный фильтр помечает одну или несколько принятых записей в файл одним или несколькими вирусными индикаторами до передачи записей в файл в файл журнала;
фиг.1C - схема, в которой сервер резервного копирования принимает одну или несколько резервных копий данных, которые включают в себя один или несколько вирусных индикаторов, и осуществляет над ними одно или несколько соответствующих ответных действий в соответствии с реализацией настоящего изобретения; и
фиг.2 - логические блок-схемы способов, выполняющихся на рабочем сервере и на сервере резервного копирования для распространения антивирусных аннотаций для записей в файл по системе резервного копирования, в соответствии с реализацией настоящего изобретения.
Подробное описание
Реализации настоящего изобретения относятся к системам, способам и компьютерным программным продуктам, которые эффективно распространяют антивирусную информацию по данным в среде резервного копирования. В, по меньшей мере, одной реализации, например, общий фильтр содержит антивирусный и репликационный компоненты фильтра. Общий фильтр может принимать записи в файл и передавать записи в файл на антивирусный компонент. Антивирусный компонент сканирует каждую запись в файл и передает каждую сканированную запись в файл совместно с любой необходимой антивирусной информацией для записи в файл на компонент репликационной фильтрации общего фильтра. Таким образом, репликационный фильтр может реплицировать определенные записи в файл в файл журнала таким образом, чтобы поддерживать любую информацию о ранее обнаруженном вирусе. При этом как рабочий сервер, так и сервер резервного копирования может идентифицировать, должны ли принятые резервные данные или ранее принятые резервные данные привлекать внимание антивируса.
Согласно нижеследующему более подробному описанию эти и другие признаки настоящего изобретения можно обеспечить использованием любого количества компонентов, модулей и схем. Например, реализации настоящего изобретения описаны ниже, в основном, с точки зрения рабочего сервера и сервера резервного копирования, которые передают данные, созданные и/или измененные на рабочем сервере. Однако такая установка не требуется во всех реализациях. В частности, в ряде случаев рабочий сервер может быть представителем персональной компьютерной системы, который резервируется непосредственно другой компьютерной системой, независимо от того, можно ли рассматривать такие компьютерные системы как серверы .
Кроме того, реализации настоящего изобретения описаны здесь, в основном, применительно к действиям, выполняемым общим фильтром, который обеспечивает единый общий интерфейс для доступа к функциональным возможностям антивирусного и репликационного компонентов фильтрации. Таким образом, этот общий фильтр можно также описать как комбинированный фильтр, т.е. фильтр, который обеспечивает комбинированные функции антивирусного фильтра и репликационного фильтра. В любом случае, как будет ясно, поскольку из антивирусного и репликационного компонентов фильтрации можно построить единый фильтр, разработчик, который создает единый фильтр, может спроектировать упорядочение для каждого компонента. Таким образом, разработчик может настроить фильтр так, чтобы вызовы системы ввода/вывода сначала обрабатывались, например, антивирусным компонентом, а затем обрабатывались репликационным компонентом. При этом только единый фильтр, например общий фильтр, нужно будет регистрировать с помощью менеджера фильтрации, пригодного для обработки действий по антивирусной и репликационной фильтрации.
Однако очевидно, что комбинированный/общий фильтр является просто одним способом осуществления одной или нескольких реализаций настоящего изобретения. В альтернативных реализациях, например, разработчик может создать отдельные антивирусный и репликационный фильтры, имеющие соответствующие средства идентификации и связи друг с другом в конкретном порядке. В частности, антивирусный и репликационный фильтры могут быть установлены отдельно на продукционном сервере, но в конкретном порядке, чтобы гарантировать конкретный порядок с помощью менеджера фильтрации. Затем антивирусный и репликационный фильтры могут быть снабжены одним или несколькими средствами для идентификации и связи друг с другом, например внеполосным каналом связи. Таким образом, из нижеследующего описания изобретения и формулы изобретения следует, что существует несколько путей практического осуществления описанных здесь принципов.
В любом случае, на фиг.1A показана общая схема системы 100 резервного копирования, в которой рабочий сервер 105 принимает одну или несколько записей в файл, сканирует эти записи в файл с помощью антивирусного и репликационного компонентов общего фильтра, и передает одну или несколько из этих записей на сервер 110 резервного копирования. В целом, запись в файл (например, 103, 107) может генерироваться каждый раз, когда пользователь (или другая сущность) создает данные, дополняет или изменяет существующие данные и пр. Затем рабочий сервер 105 может перехватывать или фильтровать каждую из этих записей в файл с использованием любого количества механизмов. В, по меньшей мере, одной реализации настоящего изобретения, например, рабочий сервер 105 перехватывает и принимает каждую запись в файл 103, 107 посредством менеджера 115 фильтрации.
В общем случае менеджер 115 фильтрации может быть способен перехватывать каждый вызов системы ввода/вывода на рабочем сервере 105 и передавать каждый такой вызов на один или несколько зарегистрированных фильтров (например, фильтры 125, 127, фиг.1B). Такие вызовы могут включать в себя любое количество системных запросов, например открыть файл , закрыть файл , а также различные записи, удаления, изменения в файлах и т.д. В частности, каждое изменение в файле может генерировать вызов системы ввода/вывода, и в ряде случаев могут существовать десятки или сотни разных вызовов системы ввода/вывода, которые менеджер 115 фильтрации может быть способен перехватывать. Вне зависимости от конфигурации менеджер 115 фильтрации, в конечном итоге, распределяет различные вызовы, которые он перехватывает, на любое количество фильтров, зарегистрированных в нем. В частности, некоторые фильтры, например антивирусный фильтр, может быть способен принимать все вызовы, перехваченные менеджером 115 фильтрации, тогда как другие фильтры могут быть способны принимать лишь определенные типы вызовов в системе ввода/вывода.
В, по меньшей мере, одной реализации настоящего изобретения менеджер 115 фильтрации может быть способен передавать все системные вызовы (например, записи в файл) на комбинированный антивирусный ( АВ ) и репликационный фильтр 125 (или комбинированный или общий фильтр 125). Например, менеджер 115 фильтрации принимает записи 103, 107 в файл и передает каждую из этих записей в файл на общий фильтр 125. Согласно нижеследующему более подробному описанию общий фильтр 125 может затем сканировать каждую принятую запись в файл на предмет вирусов и при необходимости передавать копию любой одной или нескольких из этих записей в файл в файл 130 журнала. В целом, файл журнала , например файл 130 журнала, обычно содержит один или несколько электронных файлов, способных поддерживать копии всех изменений указанных данных (создания, удаления, модификации и т.д.) для конкретного тома рабочего сервера 105. Например, файл 130 журнала может представлять все изменения тому 120 в конкретный момент времени.
Затем сервер резервного копирования 110 может резервировать файл журнала 130 (а также любые дополнительные файлы журнала для других томов на рабочем сервере 105). В целом, процессы резервного копирования могут осуществляться в разнообразных условиях, например, по требованию или согласно конкретному расписанию резервирования. В любом случае процессы резервного копирования, в целом, предусматривают, что рабочий сервер 105 может передавать данные файла 130 журнала на один или несколько агентов управления (например, 135) на сервере 110 резервного копирования. Обычно, один или несколько агентов управления (например, 135) затем применяют принятые изменения данных к одному или нескольким томам хранения (например, 145), которые могут содержать другие предыдущие копии изменений конкретных данных.
Однако в соответствии с реализациями настоящего изобретения один или несколько агентов управления (например, 135) также могут сравнивать принятые резервные данные с одной или несколькими настройками 140 политики, пригодными для осуществления конкретного ответного действия 143. Например, согласно нижеследующему более подробному описанию, если агент 135 управления идентифицирует, что какие-либо данные в файле 130 журнала помечены на предмет вирусов (т.е. включают в себя один или несколько вирусных индикаторов), настройки 140 политики могут предписывать серверу 110 резервного копирования осуществлять любое количество соответствующих ответных действий 143. Например, настройки 140 политики могут предписывать серверу 110 резервного копирования удалить принятые данные, помеченные вирусами, вычистить (т.е. уничтожить или удалить вирусы) или удалить принятые резервные данные, а также вычистить или удалить предыдущие копии данных.
Соответственно, по меньшей мере, один аспект настоящего изобретения предусматривает не только сканирование на предмет вирусов, но также гарантирование того, что любая информация об обнаружении вируса сможет эффективно распространяться на соответствующие сущности в системе 100. В, по меньшей мере, одной реализации для этого можно, например, помечать записи в файл одним или несколькими вирусными индикаторами и гарантировать, что один или несколько вирусных индикаторов остаются присоединенными, по необходимости. Например, на фиг.1B показана более детальная схема в соответствии с реализацией настоящего изобретения, в которой рабочий сервер 105 идентифицирует один или несколько вирусов посредством общего фильтра 125 и использует общий фильтр 125 для присоединения одного или нескольких вирусных индикаторов к инфицированным файлам.
В частности, на фиг.1B показано, что менеджер 115 фильтрации может принимать записи 103 и 107 в файл, например, описанные ранее на фиг.1A. Кроме того, на фиг.1B показано, что, по меньшей мере, запись 103 в файл инфицирована вирусом (например, 113). Затем менеджер 115 фильтрации передает записи 103 и 107 в файл на любое количество надлежащим образом зарегистрированных фильтров, например, фильтры 125, 127 и т.д. Например, на фиг.1B показано, что менеджер 115 фильтрации передает запись 103 в файл (и присоединенный вирус 113), а также запись 107 в файл на общий АВ/репликационный фильтр 125. Как упомянуто выше, общий фильтр 125, в свою очередь, может содержать любое количество подходящих компонентов, включая, по меньшей мере, антивирусный компонент 123 и репликационный компонент 127. В целом, фильтр 125 может быть настроен так, чтобы все записи, поступающие от менеджера 115 фильтрации, передавались сначала на антивирусный компонент 123, а затем на репликационный компонент 127. Однако подобное упорядочение компонентов может не всегда требоваться, если записи в файл можно пометить одним или несколькими вирусными индикаторами прежде, чем передать их в файл журнала (например, 130).
В любом случае, на фиг.1B показано, что общий фильтр 125 может принимать записи 103 и 107 в файл и осуществлять над ними любое количество действий сканирования и маркирования. Например, антивирусный компонент 123 фильтра 125 может сканировать запись 103 в файл и сравнивать содержащиеся в ней данные с любым количеством антивирусных дефиниций 150. В этом случае фильтр 125 идентифицирует наличие вируса 113 в записи 103 в файл. Напротив, антивирусный компонент 123 также принимает запись 107 в файл, но не распознает в ней никаких вирусов. Соответственно на фиг.1B показано, что антивирусный компонент 123 просто передает запись 107 в файл на репликационный компонент 127 как есть, но в отношении записи 103 в файл может осуществлять ряд дополнительных действий.
Например, обнаружив вирус 113, антивирусный компонент 123 может удалить вирус. Однако в других случаях антивирусный компонент 123 может просто обнаруживать вирус и не удалять его, или обнаруживать то, что выглядит как вирус, и обеспечивать указание, что вирус может присутствовать. При этом на фиг.1B показано, что антивирусный компонент 123 помечает запись 103 в файл одним или несколькими вирусными индикаторами 117, которые включают в себя указания, касающиеся действий и/или определений антивирусного компонента 123. Например, один или несколько вирусных индикаторов 117 могут включать в себя информацию о том, что вирус 113 все еще содержится в записи 103 в файл, или что существует предположение о наличии вируса 113, хотя и не подтвержденное. Аналогично, один или несколько вирусных индикаторов 117 могут указывать, что антивирусный компонент 123 обнаружил и удалил вирус 113 из записи 103 в файл, но что вирус 113, тем не менее, когда-то присутствовал. Таким образом, очевидно, что один или несколько вирусных индикаторов 117 могут включать в себя любое количество указаний, на основании которых последующие компоненты и модули могут принимать дополнительные решения относительно записи 103 в файл, а также в отношении их нижележащего файла (например, 133).
Так или иначе помеченный или маркированный, антивирусный компонент 123 может затем передать запись 103 в файл на репликационный компонент 127 совместно с одним или несколькими вирусными индикаторами 117. Например, на фиг.1B показано, что репликационный компонент принимает записи 103 и 107 в файл. В конце концов репликационный компонент 127 сравнивает каждую из этих записей 103, 107 в файл с репликационными политиками 155 для определения, запланированы ли для репликации файлы, связанные с этими записями в файл. Например, на фиг.1B показано, что запись 107 в файл не запланирована для репликации, и поэтому репликационный компонент 127 просто передает запись 107 в файл в том 120 и добавляет эту запись в файл к соответствующему файлу 137. Напротив, на фиг.1B показано, что репликационный компонент 127 определяет, что запись 103 в файл связана с файлом 133 который на основании репликационных политик 155 запланирован для репликации.
Конечно, репликационный агент 127 может изменять свои специализированные механизмы на основании наличия каких-либо вирусных индикаторов (например, 117). Например, репликационные политики 155 могут указывать, что файлу, который в ином случае был бы запланирован на репликацию, запрещается репликация, когда присутствует один или несколько вирусных индикаторов (например, 117). Таким образом, репликационный компонент 127 может поместить запись 103 в файл в карантин, передать запись 103 в файл в том 120, не помещая копию в файл 130 журнала, и может также (или альтернативно) передать один или несколько вирусных индикаторов в файл 130 журнала без соответствующих данных записи в файл. Таким образом, репликационный компонент 127 может быть способен осуществлять целый ряд действий.
В любом случае на фиг.1B показано, что репликационный компонент 127 идентифицирует, что запись 103 в файл подлежит репликации и, таким образом, создает копию 103a записи в файл. Как показано, копия 103a записи в файл также включает в себя копию одного или нескольких вирусных индикаторов (т.е. 117a). При этом на фиг.1B показано, что репликационный компонент 127 передает запись 103 в файл в том 120, где она включается со своим нижележащим базовым файлом 133. Напротив, репликационный компонент 127 передает копию 103a записи в файл и копию(и) 117a соответствующего вирусного индикатора в файл 130 журнала. В результате запись 103 в файл, а также присоединенные один или несколько вирусных индикаторов 117 могут быть включены в процессы резервного копирования (т.е. через копии 103a, 117a).
Как упомянуто выше, это означает, что сервер 110 резервного копирования может, таким образом, принимать и идентифицировать любую известную информацию о вирусе для (и осуществлять соответствующие действия на) принятых или сохраненных данных, без необходимости требовать, чтобы сервер 110 резервного копирования осуществлял дополнительные сканирования на предмет вирусов. Например, согласно фиг.1C сервер 110 резервного копирования принимает данные файла 130 журнала, которые включают в себя самую последнюю копию 103a записи в файл и соответствующие один или несколько вирусных индикаторов 117a. В частности, сервер 110 резервного копирования принимает и идентифицирует данные файла журнала 130 посредством одного или нескольких агентов управления (например, 135). В целом, агент управления содержит любое количество компьютерно-выполняемых инструкций, которые реализованы для любого количества процессов, например инициирования процессов репликации, осуществления действий над принятыми данными и т.д. В частности, каждый агент 135 управления может дополнительно включать в себя (или быть связан с) одним или несколькими агентами добавления, например антивирусным агентом 160.
Таким образом, получив файл 130 журнала, агент 135 управления может идентифицировать один или несколько вирусных индикаторов 117a. Затем агент 135 управления может определить, что нужно совершить одно или несколько действий и, таким образом, дополнительно сверяется с одной или несколькими настройками 140 политики. Например, одна или несколько настроек 140 политики могут включать в себя одну или несколько инструкций для отбрасывания инфицированной записи в файл, помещения в карантин инфицированной записи в файл и/или осуществления аналогичных действий над предыдущими копиями данных. Например, согласно фиг.1C агент 135 управления идентифицирует из настроек 140 политики набор инструкций по осуществлению ответного действия 147. В этом примере ответное действие 147 включает в себя инструкции по вычищению всех копий реплики нижележащего базового файла 133 и ее итерационных обновлений. В частности, настройки 140 политики могут указывать агенту 135 управления, что всякий раз при приеме вирусного индикатора (например, 117) для конкретной записи в файл (например, 103a) предполагается, что нижележащий базовый файл (например, реплика 165) содержит вирус.
Например, на сервере 110 резервного копирования уже хранится (например, в томе 145 хранения) несколько предыдущих копий (на основании разных событий резервирования) файла 133. В частности, на фиг.1C показано, что на сервере резервного копирования 110 хранится начальная реплика 165 файла 133 в момент времени t0 , обновление 170 файла в момент времени t1 , обновление 175 файла в момент времени t2 , обновление 180 в момент времени t3 и обновление 185 в момент времени t4 . Таким образом, запись 103a в файл будет в этом случае обновлением реплики 165 (т.е. для файла 133) в момент времени t5 .
В этом конкретном примере в соответствии с инструкциями ответного действия 147 агент 135 управления вычищает запись 103a в файл (если она еще не вычищена или не очищена ) посредством антивирусного агента 160. Агент 135 управления также может использовать антивирусный агент 160 для вычищения каждой из различных реплик 165, 170, 175, 180, 185. Таким образом, очистив каждую копию, агент 135 управления передает соответствующие инструкции 190 для замены реплик 165, 170, 175, 180 и 185 файла новыми данными 195. Данные 195, в свою очередь, могут включать в себя базовый файл и последующие обновления (т.е. t0-t5 ) без идентифицированного вируса.
Соответственно на фиг.1A-1C показан ряд схем и компонентов для идентификации вирусов на уровне рабочего сервера, распространения этой информации на уровень сервера резервного копирования и осуществления любого количества соответствующих действий на каждом таком уровне. В дополнение к вышеизложенному реализации настоящего изобретения также можно описать посредством логических блок-схем способов, содержащих одну или несколько последовательностей этапов для достижения конкретного результата. Например, на фиг.2 показаны логические блок-схемы, с точки зрения рабочего сервера 105 и сервера 110 резервного копирования, фильтрации записей в файл с использованием общего/комбинированного АВ/репликационного фильтра 125. Этапы, показанные на фиг.2, описаны ниже со ссылкой на схемы и компоненты, показанные на фиг.1A-1C.
Например, на фиг.2 показано, что способ, выполняющийся на рабочем сервере 105, управления процессами фильтрации вирусов и фильтрации резервирования посредством общего фильтра может содержать этап 200, на котором идентифицируют одну или несколько записей в файл. На этапе 200 идентифицируют одну или несколько записей в файлы посредством общего фильтра. Например, согласно фиг.1A и 1B рабочий сервер 105 принимает записи 103 и 107 в файл (т.е. любое количество вызовов системы ввода/вывода) посредством менеджера 115 фильтрации. Менеджер 115 фильтрации, в свою очередь, передает эти записи на общий АВ/репликационный фильтр 125.
Кроме того, на фиг.2 показано, что способ, выполняющийся на рабочем сервере 105, может содержать этап 210 сканирования записей в файл на предмет вирусов. На этапе 210 сканируют одну или несколько записей в файл, идентифицированных на общем фильтре, в соответствии с одной или несколькими вирусными дефинициями. Согласно фиг.1B, например, общий АВ/репликационный фильтр 125 принимает записи 103 и 107 в файл и сравнивает соответствующие данные с одной или несколькими антивирусными дефинициями 150 посредством антивирусного компонента 123. Общий АВ/репликационный фильтр 125, таким образом, определяет посредством антивирусного компонента 123, что запись 103 в файл включает в себя вирус 113.
На фиг.2 также показано, что способ, выполняющийся на рабочем сервере 105, может содержать этап 220 сравнения сканированных файлов с репликационной политикой. На этапе 220 сравнивают одну или несколько сканированных записей в файл, идентифицированных на общем фильтре, с одной или несколькими репликационными политиками. Например, на фиг.1B показано, что АВ/репликационный фильтр 125 также принимает записи 103 и 107 в файл в репликационном компоненте 127 после лечения/сканирования антивирусным компонентом 123. Затем репликационный компонент 127 сравнивает записи 103 и 107 в файл с репликационными политиками 155 для определения, подлежат ли эти записи в файл защите посредством процессов резервного копирования.
Кроме того, на фиг.2 показано, что способ, выполняющийся на рабочем сервере 105, может содержать этап 230 передачи записей в файл в файл журнала. На этапе 230 передают копию, по меньшей мере, одной из одной или нескольких сканированных записей в файл в файл журнала, благодаря чему, по меньшей мере, одна запись в файл реплицируется на сервер резервного копирования. Например, согласно фиг.1B, хотя общий АВ/репликационный фильтр 125 принимает записи 103 и 107 в файл, репликационный фильтр идентифицирует, что только запись в файл 103 запланирована на репликацию. Соответственно репликационный компонент 127 копирует только запись 103 в файл (т.е. как копию 103a) в файл 130 журнала, но передает обе записи 103 и 107 в файл в том 120 хранения.
При этом на фиг.2 показано, что способ, выполняющийся на сервер 110 резервного копирования, управления реплицированными данными в соответствии с одним или несколькими вирусными индикаторами, обеспечиваемый общим фильтром на одном или нескольких рабочих серверах, может содержать этап 240 приема резервных копий данных. На этапе 240 принимают одну или несколько резервных копий данных с одного или нескольких рабочих серверов. Например, согласно фиг.1C агент 130 управления сервера 110 резервного копирования принимает резервные данные, по меньшей мере, файла 130 журнала от рабочего сервера 105.
Кроме того, на фиг.2 показано, что способ, выполняющийся на сервере 110 резервного копирования, может содержать этап 250, на котором идентифицируют один или несколько вирусных индикаторов в принятых данных. На этапе 250 идентифицируют один или несколько вирусных индикаторов одной или нескольких принятых резервных копий данных, в котором один или несколько вирусных индикаторов идентифицируют, что, по меньшей мере, одна из одной или нескольких резервных копий данных связана с инфицированными данными. Например, на фиг.1C показано, что агент 135 управления принимает данные файла 130 журнала, которые включают в себя запись 103a в файл и один или несколько вирусных индикаторов 117a. Соответственно агент 135 управления идентифицирует из одного или нескольких вирусных индикаторов 117a, что вирус существует или что вирус был удален, но тем не менее существовал в предыдущей версии файла.
На фиг.2 также показано, что способ, выполняющийся на сервере 110 резервного копирования, может содержать этап 260, на котором идентифицируют одну или несколько политик для ответных действий. На этапе 260 идентифицируют одну или несколько политик для сервера резервного копирования, в котором одна или несколько политик идентифицируют одно или несколько ответных действий, соответствующих одному или нескольким вирусным индикаторам. Например, на фиг.1C показано, что агент 135 управления сверяется с настройками 140 политики и принимает инструкции по реализации ответного действия 147, которые требуют, чтобы сервер 110 резервного копирования вычищал все предыдущие или текущие копии файла 133 (т.е. нижележащего файла для записи 103a).
Кроме того, на фиг.2 показано, что способ, выполняющийся на сервере 110 резервного копирования, может содержать этап 270 выполнения ответного действия для вирусных индикаторов. На этапе 270 выполняют любое из одного или нескольких ответных действий в соответствии с одной или несколькими политиками. Например, на фиг.1C показано, что агент 135 управления (например, посредством антивирусного агента 160) берет каждую базовую копию и обновления для файла 133 (т.е. в моменты времени t0 - t5 ) и удаляет любые вирусные инфекции. Затем агент 135 управления подготавливает чистую копию 195 этих данных и передает соответствующие инструкции 190 для замены исходных копий этих данных 165, 170, 175, 180, 185 в томе 145 хранения новыми, чистыми данными 195.
Соответственно на фиг.1A-2 показан ряд компонентов и механизмов, гарантирующих, что идентифицированная информация о вирусе может эффективно распространяться по системе резервного копирования 100. В результате этих и других признаков можно более эффективно бороться с угрозами, связанными с непреднамеренной репликацией вирусов. В частности, широкое распространение информации о вирусе обеспечивает ряд дополнительных признаков в соответствии с рассмотренными здесь принципами. Например, рабочий сервер 105 может принять один или несколько запросов на данные, которые являются или были инфицированными. Рабочий сервер 105, например, посредством общего фильтра 125 может определить, что запрос относится к одному или нескольким файлам, которые связаны с одним или несколькими вирусными индикаторами, и отклонять или удовлетворять запрос на основании любого количества политик рабочего сервера.
Запросы на определенные резервные данные также можно обрабатывать аналогичным образом. Например, пользователь может запросить один или несколько файлов, которые были сохранены на сервере 110 резервного копирования (т.е. были зарезервированы). Общий фильтр 125 (или другой необходимый агент) может идентифицировать из индекса, что запрос предусматривает, что один или несколько файлов, которые ранее были связаны в один момент с одним или несколькими вирусными индикаторами. Затем рабочий сервер 105 сможет обеспечить предупреждение пользователю, или даже просканировать и даже удалить любые соответствующие данные, позже принятые от сервера 110 резервного копирования, на основании запросов.
Аналогично, запросы на резервные данные, поступающие с рабочего сервера 105 на сервер 110 резервного копирования, могут требовать такого же вычисления. Таким образом, агент 135 управления может идентифицировать из одного или нескольких запросов, что запрашиваемые данные связаны с одним или несколькими вирусными индикаторами, или связаны с одним или несколькими файлами, которые, в свою очередь, присоединены к одному или нескольким вирусным индикаторам. Затем агент 135 управления может удалить вирус до возвращения данных, отклонить запрос и т.п., в зависимости от любого количества различных настроек политики.
Варианты осуществления настоящего изобретения могут содержать компьютер специального назначения или общего назначения, включающий в себя различное компьютерное оборудование, более подробно описанное ниже. Варианты осуществления в объеме настоящего изобретения также включают в себя компьютерно-читаемые носители для переноса или хранения компьютерно-выполняемых инструкций или структур данных. Такие компьютерно-читаемые носители могут представлять собой любые доступные носители, к которым компьютер общего назначения или специального назначения может осуществлять доступ.
В порядке примера, но не ограничения, такие компьютерно-читаемые носители могут содержать ОЗУ, ПЗУ, ЭСППЗУ, CD-ROM или другой оптический дисковый накопитель, магнитный дисковый накопитель или другие магнитные запоминающие устройства, или любой другой носитель, которые можно использовать для переноса и хранения нужного средства программного кода в форме компьютерно-выполняемых инструкций или структур данных, и к которым компьютер общего назначения или специального назначения может осуществлять доступ. При переносе или предоставлении информации по сети или другому соединению связи (проводному, беспроводному или комбинированному) на компьютер компьютер правильно воспринимает соединение как компьютерно-читаемый носитель. Таким образом, любое такое соединение можно именовать компьютерно-читаемым носителем. Комбинации вышеперечисленных вариантов также следует причислить к компьютерно-читаемым носителям.
Компьютерно-выполняемые инструкции содержат, например, инструкции и данные, которые предписывают компьютеру общего назначения, компьютеру специального назначения или устройству обработки специального назначения осуществлять определенную функцию или группу функций. Хотя настоящее изобретение было описано применительно к структурным признакам и/или этапам способа, следует понимать, что настоящее изобретение, заданное в прилагаемой формуле изобретения, не обязано ограничиваться вышеописанными конкретными признаками или этапами. Напротив, вышеописанные конкретные признаки и этапы раскрыты как иллюстративные формы реализации формулы изобретения.
Настоящее изобретение можно реализовать в других конкретных формах, не выходя за рамки его сущности или существенных характеристик. Описанные варианты осуществления следует рассматривать во всех отношениях только как иллюстративные, но не ограничительные. Таким образом, объем изобретения определяется прилагаемой формулой изобретения, а не вышеизложенным описанием. Все изменения, находящиеся в пределах смысла и диапазона эквивалентности формулы изобретения, должны входить в его объем.
Класс G06F12/16 защита от потерь данных в памяти