Способ антивирусной защиты и устройство для его реализации

Иллюстрации

Показать все

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

Реферат

Изобретение относится к области вычислительной техники, к цифровым вычислительным машинам.

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

Известны способы защиты от вредоносного программного обеспечения, где для поиска вирусов используются базы сигнатур. Эти базы постоянно обновляются. Сканирование компьютера и удаление вирусов занимает существенное время. Антивирусы работают только с уже известными и выявленными вирусами, для которых эти сигнатуры были выявлены. (Троянские программы Лаборатория Касперского [Электронный ресурс]. - Режим доступа: www.securelist.com/ru/threats/detect/trojan-programs).

Известны эвристические антивирусы, которые анализируют файловую систему и оценивают размер траффика в сети. У эвристического подхода есть свои недостатки, например наличие ложных срабатываний. (Пихтулов А.А., Михайлов Д. Эвристические признаки Bluetooth-вирусов для мобильных устройств / Наука и современность - М. - 2011. - с. 233-237).

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

Заявленный способ антивирусной защиты поясняется графическими материалами, см. фиг. 1-2.

На фиг. 1 показано устройство компьютера с Гарвардской архитектурой, на фиг. 2 показана схема заявленного устройства.

Заявленный способ антивирусной защиты реализован следующей последовательностью действий, см. фиг. 1-2.

1. Коды программы разделяют на фрагменты, затем начало и конец фрагмента задают как адреса контрольных точек (КТ) и для каждого фрагмента на основе последовательности команд рассчитывают сигнатуру.

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

3. При выполнении кодов программы рассчитывается сигнатура и в контрольной точке сравнивается с указанным значением.

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

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

Устройство для антивирусной защиты работает следующим образом.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

На основании изложенного заявленный способ антивирусной защиты и устройство для его реализации соответствуют требованию условий патентоспособности «новизна» и «изобретательский уровень».

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

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