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

Иллюстрации

Показать все

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

Реферат

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

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

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

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

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

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

Еще один минус, который можно выделить - это борьба с неизвестным вредоносным ПО. Часто чтобы обнаружить новое вредоносное ПО требуются усилия не одного специалиста в данной области. И главная проблема состоит в том, чтобы оперативно обнаружить еще неизвестное вредоносное ПО. При этом также важна автоматизация процесса обнаружения угроз, а также лечения.

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

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

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

В патенте US 7591018 B1 описывается система для аппаратного поиска и лечения вирусов. Специальное устройство, содержащее антивирусный модуль в своей памяти, может быть подсоединено к ПК. Все носители информации, подсоединенные к данной системе, также проверяются. Но данная система подразумевает наличие ПК для работы. И данная система не осуществляет антивирусное тестирование ПК благодаря имитации подключения к ПК Flash-накопителей.

В патенте US 7881919 B2 описывается способ и система для имитации подключения к ПК USB-видео устройства с целью тестирования видеодрайвера. Данная система использует имитацию подключения USB устройства, но не для целей поиска и удаления вирусов на ПК.

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

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

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

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

Способ аппаратного обнаружения и лечения неизвестного вредоносного ПО, установленного на ПК, содержащий этапы, на которых:

I - подготавливают и осуществляют серию экспериментов, при этом экспериментом является осуществление имитации подключения к проверяемому ПК внешнего устройства или другого ПК, заполненного какой-либо информацией;

II - производят анализ изменений в информации на имитируемых внешних устройствах или других ПК, полученных в ходе всех экспериментов;

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

А) если обнаружено неизвестное вредоносное ПО на проверяемом ПК, для которого существует возможность удаления с помощью механизма лечения, то формируют механизм лечения и применяют его к проверяемому ПК.

Система аппаратного обнаружения и лечения неизвестного вредоносного ПО, установленного на ПК, содержащая:

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

II - упомянутый контроллер, также связанный с антивирусным модулем и предназначенный для:

A) инициирования антивирусного модуля после получения от модуля подключения информации о том, что заявленная система подключена к проверяемому ПК;

B) передачи от антивирусного модуля на модуль подключения экспериментов и механизмов лечения, а также передачи данных в ходе каждого эксперимента от модуля подключения на антивирусный модуль;

III - упомянутый антивирусный модуль, также связанный с, по меньшей мере, одним модулем памяти, и предназначенный для:

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

B) проведения анализа изменений в информации на имитируемых внешних устройствах или других ПК, полученных в ходе всех экспериментов;

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

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

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

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

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

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

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

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

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

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

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

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

Система 101 аппаратного обнаружения и лечения неизвестного вредоносного программного обеспечения, установленного на персональном компьютере (далее Система), представляет собой отдельное компактное устройство, подобное Flash-накопителю, подключаемое к ПК, например, через интерфейс USB или Ethernet, и предназначена для обнаружения и удаления вредоносного ПО, такого как, например, черви.

Система 101 содержит модуль подключения 102, которым в примерном случае может являться, например, USB-разъем, который подключается к соответствующему порту проверяемого ПК 109. Следует отметить, что данная Система 101 может быть подключена к ПК 109 с помощью других известных интерфейсов, таких как, например, eSATA и Fire Wire, а также беспроводных интерфейсов, таких как, например, Bluetooth, WiFi. Модуль подключения 102 также может быть выполнен в виде Ethernet-разъема. Следует также отметить, что в описываемой Системе 101 может быть несколько модулей подключения 102. Модуль подключения 102 соединен с контроллером 103, который предназначен для передачи данных между всеми элементами Системы 101. Контроллер 103 соединен с модулем связи 106 с целью осуществления связи с каким-либо ПК, удаленным сервером или другим подобным устройством через сеть Интернет. Модуль связи 106 может работать, используя современные стандарты беспроводной связи, такие как UMTS/CDMA (3G), WIMAX/LTE (4G), WiFi, HSPA, EDGE, a также используя проводные технологии передачи данных, такие как Ethernet, оптическое волокно, ASDN, xDSL и другие. В примерном варианте реализации в качестве модуля связи 106 выступает Ethernet-разъем, позволяющий подключить описываемую Систему 101 к какому-либо ПК, с возможностью выхода в сеть Интернет. Стоит отметить, что модуль связи 106 опционален, и связь с каким-либо ПК, удаленным сервером или другим подобным устройством через сеть Интернет может быть осуществлена с помощью модуля подключения 102. В данном случае Система 101 может быть подключена с помощью модуля подключения 102 к какому-либо ПК с возможностью выхода в сеть Интернет. Модуль питания 104, связанный с контроллером 103, предназначен для осуществления автономной работы Системы 101 в течение длительного времени без подзарядки. Модуль питания 104 может быть гальваническим элементом или аккумулятором, например, литиево-ионным. Также модуль питания 104 может быть ионистором. Ионистор - это энергонакопительный конденсатор, заряд в котором накапливается на границе раздела двух сред - электрода и электролита. Подобное устройство заряжается очень быстро и далее работает как аккумулятор. Модуль питания 104 является опциональным модулем, так как, например, при подключении Системы 101 к проверяемому ПК 109 с помощью USB-разъема необходимое для работы питание Система 101 получит от ПК 109. Контроллер 103 также связан с антивирусным модулем 107. Антивирусный модуль 107 предназначен для нескольких задач. Одной из задач является имитация подключения к ПК 109 накопителей различного типа, в том числе и Flash-накопителей. Необходимые для этого данные передаются от антивирусного модуля 107 через контроллер 103 на модуль подключения 102. Антивирусный модуль 107 может имитировать подключение накопителя любой модели и размера с какими-либо псевдослучайными данными, а также случайными серийными номерами. Также антивирусный модуль 107 предназначен для анализа полученных данных в ходе работы Системы 101, а именно в ходе имитации подключения накопителей, на предмет наличия вредоносного ПО на ПК 109. По результатам анализа антивирусный модуль 107 производит автоматическое удаление вредоносного ПО, установленного на ПК 109. Вредоносным ПО являются, по меньшей мере, черви. Антивирусным модулем 107 может являться, например, такой продукт как Kaspersky Antivirus, Antivirus for Windows Workstations, Kaspersky Antivirus for Linux Workstations, McAfee Antivirus, Norton Antivirus или другой подобный продукт. В частном варианте антивирусный модуль 107 может быть представлен в виде нескольких модулей, каждый из которых предназначен для решения определенных задач. Например, отдельный модуль предназначен для имитации устройства, другой - для анализа данных, третий - для осуществления удаления вредоносного ПО и так далее. Антивирусный модуль 107 использует ресурсы оперативной памяти, которые в частном варианте реализации может предоставлять контроллер 103. Антивирусный модуль 107 связан с модулем памяти 108. Модуль памяти 108 содержит информацию, необходимую для работы антивирусного модуля 107, такую как данные, необходимые для имитации устройства, а также для удаления вредоносного ПО. Антивирусный модуль 107 помещает в модуль памяти 108 данные анализа. Данные анализа могут быть в дальнейшем использованы для передачи на сторону компании, предоставляющей антивирусные решения, используя модуль связи 106. Модулем памяти 108 может являться, например, блок Flash-памяти NOR или NAND типа. Контроллер 103 также связан с модулем управления и отображения информации 105, предназначенным для запуска Системы 101, информирования пользователя о ходе работы Системы 101, о результате работы, о действиях, которые необходимо совершить после выполнения всех работ и так далее. Модуль управления и отображения информации 105 может быть реализован, например, как сенсорный экран, содержащий элементы управления, позволяющие, например, инициировать работу Системы 101. Также сенсорный экран позволяет пользователю получать подробную информацию обо всех вредоносных или подозрительных объектах, найденных во время работы Системы 101, а также о действиях, которые были выполнены для удаления вредоносного ПО, установленного на ПК 109. Модуль управления и отображения информации 105 может быть реализован в других вариантах. Так, например, в частном варианте модуль управления и отображения информации 105 может быть реализован в виде набора управляющих кнопок совместно с светодиодным индикатором, позволяющим, например, определить прогресс выполнения эксперимента, которым в нашем случае является осуществление имитации подключения к проверяемому ПК внешнего устройства или другого ПК. При этом может быть предусмотрена различная цветовая индикация, соответствующая, например, таким событиям, как "ПК проверен и не содержит вредоносного ПО", а также "ПК проверен и содержит вредоносное ПО". Модуль управления и отображения информации 105 для предоставления информации пользователю может также использовать звуковые сигналы, которые позволят оценить пользователю такие события, как прекращение эксперимента или же наличие на ПК 109 вредоносного ПО.

На Фиг.2 изображено взаимодействие антивирусного модуля и модуля памяти.

В Системе 101 основными элементами является антивирусный модуль 107 и модуль памяти 108. Для осуществления действий, связанных с обнаружением и удалением вредоносного ПО, антивирусный модуль 107 взаимодействует с базами данных, которые записаны в модуле памяти 108. В примерном варианте осуществления Системы 101 таких баз данных четыре. База данных идентификаторов устройств 201 содержит информацию, которая может определять имитируемое устройство. Если в качестве модуля подключения 102 используется USB-разъем, то происходит имитация Flash-накопителя. Далее будем рассматривать этот примерный случай. В данном случае информацией, которая содержится в базе данных идентификаторов устройств 201 и определяет имитируемый Flash-накопитель, является информация о названиях накопителей, файловых системах, объемах памяти, производителях, а также другие подобные данные, которые позволяют определить имитируемый Flash-накопитель. Данная информация может быть структурирована таким образом, что все указанные выше параметры будут объединены для описаний моделей известных и популярных Flash-накопителей. Так, например, информация, описывающая подключение Flash-накопителя Kingston может включать в себя такие параметры, как: название накопителя - Kingston UFD, производитель - Kingston, файловая система - FAT32, объем памяти - 4 Гб. Таким образом, каждый раз при инициировании работы Системы 101 антивирусный модуль 107 использует информацию из базы данных идентификаторов устройств 201 для имитации подключения к ПК 109 Flash-накопителя.

Другой базой данных, записанной в модуле памяти 108, является контентная база данных 202. Контентная база данных 202 содержит большой объем данных, которые предназначены для заполнения имитируемого Flash-накопителя. Такими данными могут быть различные папки с различными названиями, файлы с различными расширениями и названиями и так далее. Для задач обнаружения и удаления вредоносного ПО, в том числе и неизвестного, такая база данных необходима из-за того, что, во-первых, позволяет произвести имитацию Flash-накопителя, содержащего какую-то информацию, что делает имитацию более приближенной к реальным ситуациям, а во-вторых, позволяет обнаружить вредоносное ПО с помощью анализа действий, которые оно предпринимает над записанными на имитируемый Flash-накопитель данными. Поэтому заполнение данными для имитируемого Flash-накопителя псевдослучайное. Данные выбираются антивирусным модулем 107 из контентной базы данных 202 с учетом необходимости изучить в ходе имитации подключения к ПК 109 Flash-накопителя те или иные особенности поведения вредоносного ПО, установленного на ПК 109. Так, например, для каждого имитируемого Flash-накопителя антивирусный модуль 107 может выбирать из контентной базы данных 202, например, несколько папок и архивов с различными названиями и разным наполнением. Таким наполнением могут являться файлы с различными расширениями. Например, создав несколько папок и архивов на имитируемом Flash-накопителе можно выяснить, есть ли на проверяемом ПК 109 вредоносное ПО, которое может копировать себя в эти папки и архивы, проявляя при этом функционал вируса-компаньона, исполняемый файл которого имеет то же имя, что и какое-то приложение, но другое расширение. Часто вместо расширения .EXE вирус-компаньон располагается в файле с расширением .COM, что обеспечивает его загрузку и запуск при активизации программы по имени. Для файлов с расширением .EXE можно выяснить, есть ли на проверяемом ПК 109 вредоносное ПО, способное заражать исполняемые файлы, добавляя в них свой код. Для файлов с расширением .DOC можно выяснить, есть ли на проверяемом ПК 109 вредоносное ПО, обладающее деструктивным функционалом, способным исказить или уничтожить представленную в документе информацию, или же сделать документ недоступным для чтения. На следующем же имитируемом Flash-накопителе антивирусный модуль 107 может выбрать из контентной базы данных 202 информацию, которая поможет осуществить более детальную оценку поведения данного вредоносного ПО. Данные примеры не ограничивают возможности описываемой Системы 101. Папок и файлов с различными расширениями, по анализу действий над которыми можно определить вредоносное ПО, может быть любое количество. Следует отметить, что Система 101 не обладает какими-либо статистическими признаками, по которым можно было бы понять, что к ПК 109 подключена именно Система 101. Таким образом, в ходе работы Системы 101 нет возможности отличить, какое устройство подключено, Flash-накопитель или же заявленная Система 101, что не позволит в будущем создать вредоносное ПО, которое могло бы определить, что к ПК 109 подключена именно Система 101, и в ответ на это не воздействовать на имитируемый Flash-накопитель.

На Фиг.3 изображено взаимодействие антивирусного модуля и баз данных, расположенных в модуле памяти.

Для осуществления имитации подключения Flash-накопителя к ПК 109 с целью обнаружения и удаления вредоносного ПО антивирусный модуль 107 выбирает из базы данных идентификаторов устройств 201 информацию, определяющую какой-либо Flash-накопитель, из контентной базы данных 202 выбирает информацию, которой будет заполнен данный имитируемый Flash-накопитель. Этот набор данных позволяет произвести имитацию любого известного Flash-накопителя, при этом непустого. Далее информация из двух баз данных дважды копируется в базу данных с результатами экспериментов 203. База данных с результатами экспериментов 203 является третьей базой данных, записанной в модуле памяти 108. Каждый набор информации из контентной базы данных 202 и из базы данных идентификаторов устройств 201, выбранный антивирусным модулем 107 и позволяющий провести имитацию любого известного Flash-накопителя, является экспериментом. База данных с результатами экспериментов 203 разделена на две части. При этом в первой части базы данных с результатами экспериментов 203а будет находиться информация для имитации любого известного Flash-накопителя, передаваемая на ПК 109 с целью решения задач обнаружения и удаления вредоносного ПО, а во второй части базы данных с результатами экспериментов 203б будет находиться та же информация, но на ПК 109 она не будет передаваться, а будет использоваться лишь для сравнения с информацией из первой части базы данных с результатами экспериментов 203а после прекращения имитации подключения Flash-накопителя. Таким образом, в первой части базы данных с результатами экспериментов 203а будет находиться информация для имитации Flash-накопителей, то есть изменяемые эксперименты, так как вредоносное ПО, которое установлено на ПК 109, может вносить изменения в эту информацию в ходе имитации подключения Flash-накопителя с целью обнаружения и удаления вредоносного ПО. Во второй части базы данных с результатами экспериментов 203б будут находиться неизменяемые эксперименты, которые используются только для сравнения с изменяемыми экспериментами. Также необходимо отметить, что если, например антивирусный модуль 107 выберет из базы данных идентификаторов устройств 201 информацию, которая будет определять имитируемый Flash-накопитель, например, накопитель Kingston с объемом памяти - 4 Гб, то антивирусный модуль 107 в первой части базы данных с результатами экспериментов 203а выделит 4 Гб памяти под этот изменяемый эксперимент. Антивирусный модуль 107 может частично или полностью заполнить этот объем памяти информацией из контентной базы данных 202, сформировав, таким образом, изменяемый эксперимент. При этом вторую часть базы данных с результатами экспериментов 203б антивирусный модуль 107 может заполнять только информацией из контентной базы данных 202, так как именно она важна при сравнении экспериментов. Антивирусный модуль 107 для целей обнаружения и удаления вредоносного ПО может выбирать информацию из контентной базы данных 202 и базы данных идентификаторов устройств 201 неоднократно, формируя тем самым наборы изменяемых и неизменяемых экспериментов. При этом формирование экспериментов построено на адаптивном подходе. В случае обнаружения различий между изменяемым и неизменяемым экспериментом, то есть обнаружения подозрительной активности, следующий эксперимент может провоцировать потенциально вредоносное ПО, установленное на ПК 109, на те действия, которые Система 101 желает изучить. Так, например, обнаружив в ходе сравнения экспериментов создание на имитируемом Flash-накопителе файла autorun.inf, Система 101 может в ходе следующего эксперимента произвести имитацию Flash-накопителя, который содержит файл autorun.inf, для того, чтобы оценить, произойдет ли замена данного файла. По таким действиям можно выявить определенные поведенческие особенности неизвестного вредоноснго ПО, установленного на ПК 109. Также в рамках работы Системы 101 может автоматически меняться количество экспериментов. Так, например, если в ходе сравнения изменяемых и неизменяемых экспериментов обнаруживается то, что изменяемый эксперимент не изменяется, то количество дальнейших экспериментов, то есть имитаций подключения Flash-накопителя, можно уменьшить вплоть до одного. И наоборот, если обнаружена подозрительная активность в ходе сравнения изменяемых и неизменяемых экспериментов, то количество экспериментов может быть увеличено для более точного исследования потенциально вредоносного ПО, установленного на ПК 109. Следует отметить, что в частном варианте изобретения база данных с результатами экспериментов 203 может не использоваться. Все эксперименты, как изменяемые, так и неизменяемые, могут быть записаны непосредственно на модуль памяти 108, например, в папку, которая формируется для каждого эксперимента.

Антивирусная база данных 204 является четвертой базой данных, которая записана в модуле памяти 108. Антивирусная база данных 204 содержит сигнатуры известного вредоносного ПО, данные, необходимые для эвристического анализа, и используется антивирусным модулем 107 для обнаружения, а также удаления известного вредоносного ПО, которое может проявлять активность в ходе имитации Flash-накопителя. Антивирусный модуль 107 после прекращения нескольких экспериментов, то есть имитаций подключения Flash-накопителей, также сравнивает изменяемые и неизменяемые эксперименты из базы данных с результатами экспериментов 203 с целью анализа изменений и выявления закономерностей. В случае обнаружения неизвестного вредоносного ПО в ходе анализа экспериментов и выявления закономерностей антивирусный модуль 107 может генерировать сценарий, позволяющий, например, удалить вредоносное ПО.

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

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

Работа Системы 101 начинается на этапе 401. На данном этапе Систему 101 подключают к исследуемому ПК 109 с помощью модуля подключения 102, которым в примерном варианте реализация является USB-разъем. Таким образом, Система 101 для аппаратной антивирусной проверки подключается к USB-порту исследуемого ПК 109. После подключения Системы 101 она получает питание от ПК 109 через USB, при этом ПК 109 не видит Систему 101 как какое-либо устройство. После подключения Системы 101 к ПК 109, контроллер 103 передает на антивирусный модуль 107 сигнал для начала работы Системы 101. В частном варианте исполнения задачи инициирования работы Системы 101 выполняет модуль управления и отображения информации 105, который может содержать элементы управления, при воздействии на которые можно инициализировать Систему 101. Как было сказано ранее, Система 101 может делать несколько экспериментов с целью обнаружения и удаления вредоносного ПО, установленного на ПК 109, при этом количество экспериментов может изменяться динамически или же количество может быть задано пользователем.

На этапе 402 Система 101 проверяет, сделаны ли все эксперименты или нет. В случае если не все эксперименты выполнены, то работа системы продолжается на этапе 403. В случае если число экспериментов заранее задано, то на данном этапе Система 101, а именно антивирусный модуль 107, после каждого эксперимента проверяет количество оставшихся для выполнения экспериментов. Как было отмечено ранее, Система 101 может адаптивно рассчитывать количество экспериментов, которые еще необходимо выполнить. Поэтому на этапе 402 антивирусный модуль 107, изучив результаты эксперимента, может в динамике поменять количество будущих экспериментов.

На этапе 403 идет подготовка Системы 101 к проведению эксперимента, то есть к проведению имитации Flash-накопителя. Антивирусный модуль 107, получив сигнал для начала работы от контроллера 103, выбирает из базы данных идентификаторов устройств 201 информацию, которая может определять имитируемый Flash-накопитель. Подобной информацией является информация о названиях накопителей, файловых системах, объемах памяти, производителях, а также другие подобные данные, определяющие имитируемый Flash-накопитель. Далее, антивирусный модуль 107 выбирает данные из контентной базы данных 202, которыми будет заполнен имитируемый Flash-накопитель. Такими данными могут быть различные папки с различными названиями, файлы с различными расширениями и названиями и так далее. Заполнение данными для имитируемого Flash-накопителя псевдослучайное. Так для каждого имитируемого Flash-накопителя антивирусный модуль 107 выбирает из контентной базы данных 202, например, несколько папок и архивов с различными названиями и разным наполнением. Антивирусный модуль 107 может динамически решать, какие данные лучше использовать для того или иного эксперимента. Так, например, если в ходе первого эксперимента обнаружено, что контрольная сумма файла с расширением .exe изменилась, то велика вероятность того, что на ПК 109 есть вредоносное ПО, которое добавляет в исполняемые файлы свой код. Тогда в следующем эксперименте антивирусный модуль 107 выберет из контентной базы данных 202 несколько файлов с расширением .exe с целью проверки результатов предыдущего эксперимента. Антивирусный модуль 107 далее помещает выбранные данные из контентной базы данных 202 и информацию из базы данных идентификаторов устройств 201 в базу данных с результатами экспериментов 203, формируя эксперименты по имитации подключения Flash-накопителя. При этом база данных с результатами экспериментов 203 разделена на две части. В первой части базы данных с результатами экспериментов 203а будут находиться изменяемые эксперименты, которые используются для имитации любого известного Flash-накопителя. Именно набор данных, определяющих изменяемый эксперимент, то есть имитируемый Flash-накопитель, направляется на ПК 109 с целью обнаружения и удаления вредоносного ПО, установленного на ПК 109. Эксперименты, которые находятся в первом разделе базы данных с результатами экспериментов 203а, изменяемы, так как вредоносное ПО, которое установлено на ПК 109, может вносить изменения в эксперимент, то есть в информацию, которая записана на имитируемом Flash-накопителе. Во второй части базы данных с результатами экспериментов 203б будут находиться неизменяемые эксперименты, то есть те же самые наборы данных, которые используются только для сравнения с изменяемыми экспериментами.

Далее, на этапе 404, осуществляется эксперимент, то есть происходит имитация подключения Flash-накопителя с выбранными данными, которые его идентифицируют, и выбранными данными, которые заполняют имитируемый Flash-накопитель. Антивирусный модуль 107 из первой части базы данных с результатами экспериментов 203а выбирает изменяемый эксперимент и передает его через контроллер 103 на модуль подключения 102, а от него на ПК 109. В зависимости от объема памяти имитируемого Flash-накопителя и объема информации для его заполнения, антивирусный модуль 107 посчитает объем заполненной и свободной памяти. Эта информация через контроллер 103 будет также направлена на модуль подключения 102, а от него на ПК 109. С точки зрения ПК 109 запуск имитации Flash-накопителя Системой 101 выглядит как подключение Flash-накопителя и ничем от него не отличается. Появляются сообщения о подключении устройства с определенным именем и объемом памяти, появляются сообщения о действиях, которые можно произвести, можно увидеть записанные на имитируемом Flash-накопителе данные и так далее. Имитация длится в течение какого-то промежутка времени, длительность которого выбирается антивирусным модулем 107. Длительность может выбираться как случайно, так и с учетом происходящих во время имитации событий. Антивирусный модуль 107 может следить за состоянием изменяемого эксперимента из первой части базы данных с результатами экспериментов 203а во времени, и, видя, что происходит активное создание файлов или изменение файлов, антивирусный модуль 107 может увеличить длительность имитации, и, наоборот, если активности нет, антивирусный модуль 107 может уменьшить длительность имитации.

Далее на этапе 405 происходит завершение эксперимента, то есть прекращение имитации подключения Flash-накопителя, с выбранными данными, которые его идентифицируют, и выбранными данными, которые заполняют имитируемый Flash-накопитель. Антивирусный модуль 107 прекращает передавать любые данные на ПК 109 через контроллер 103 и модуль подключения 102. После отключение антивирусный модуль 107 проверяет данный изменяемый эксперимент, то есть данные, которые были на имитируемом Flash-накопителе. Анализ полученных данных может осуществляться в разной последовательности и в несколько этапов. Так, например, на первом этапе проверки антивирусный модуль 107 сравнивает изменяемый эксперимент из первой части базы данных с результатами экспериментов 203а с неизменяемым экспериментом из второй части базы данных с результатами экспериментов 203б.

Далее, если на этапе 406 антивирусным модулем 107 не обнаружено нарушения целостности информации на имитируемом Flash-накопителе, то есть нет различий между изменяемым экспериментом из первой части базы данных с результатами экспериментов 203а и неизменяемым экспериментом из второй части базы данных с результатами экспериментов 203б, то это может означать, что на проверяемом ПК 109 не установлено вредоносное ПО, такое как черви. Таким образом, если нарушения целостности информации на имитируемом Flash-накопителе не обнару