RU2454714C1 - Система и способ повышения эффективности обнаружения неизвестных вредоносных объектов - Google Patents

Система и способ повышения эффективности обнаружения неизвестных вредоносных объектов Download PDF

Info

Publication number
RU2454714C1
RU2454714C1 RU2010154528/08A RU2010154528A RU2454714C1 RU 2454714 C1 RU2454714 C1 RU 2454714C1 RU 2010154528/08 A RU2010154528/08 A RU 2010154528/08A RU 2010154528 A RU2010154528 A RU 2010154528A RU 2454714 C1 RU2454714 C1 RU 2454714C1
Authority
RU
Russia
Prior art keywords
objects
malicious
processing
level
safe
Prior art date
Application number
RU2010154528/08A
Other languages
English (en)
Inventor
Юрий Вячеславович Машевский (RU)
Юрий Вячеславович Машевский
Роман Сергеевич Василенко (RU)
Роман Сергеевич Василенко
Original Assignee
Закрытое акционерное общество "Лаборатория Касперского"
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Закрытое акционерное общество "Лаборатория Касперского" filed Critical Закрытое акционерное общество "Лаборатория Касперского"
Priority to RU2010154528/08A priority Critical patent/RU2454714C1/ru
Priority to US13/190,601 priority patent/US8479296B2/en
Priority to EP11187019.2A priority patent/EP2472425B1/en
Priority to CN201110442195.1A priority patent/CN102592079B/zh
Application granted granted Critical
Publication of RU2454714C1 publication Critical patent/RU2454714C1/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/561Virus type analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms

Abstract

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

Description

Область техники
Настоящее изобретение относится к компьютерным системам, более конкретно к системам обнаружения неизвестных вредоносных объектов.
Уровень техники
В настоящее время в антивирусной индустрии широко распространены технологии сигнатурного и эвристического анализа вредоносного программного обеспечения (ПО), что ранее было вполне достаточно для защиты пользователей, так как скорость появления новых вредоносных программ была относительно невысокой: десятки и сотни в день. И даже небольшие антивирусные лаборатории могли проанализировать такое число обнаруживаемых вредоносных файлов.
Рост численности пользователей сети Интернет и приход в сеть электронной коммерции (например, онлайн-магазинов, электронной оплаты услуг в сети) обусловили активное развитие деятельности злоумышленников на сегодняшний день. Число ежедневно обнаруживаемых программ лишь за последние три года возросло более чем в 10 раз. И темпы роста продолжают увеличиваться. Таким образом, антивирусные лаборатории пытаются снизить нагрузку на аналитиков, работающих с поступающими вредоносными файлами, путем внедрения различных автоматических или автоматизированных методов обнаружения неизвестного вредоносного ПО. Сигнатурные способы плохо приспособлены для подобных целей, так как они ориентированы исключительно на нахождение известных объектов. Под объектами будем понимать файлы различного формата, например исполняемые файлы, сценарии, документы и др. Это связано с тем, что в их основе лежит сравнение значений хеш-функции от небольших участков файла. Таким образом, в силу криптографических свойств функций хеширования изменение даже одного бита во входных данных полностью меняет выходной результат. Многие злоумышленники используют этот факт в свою пользу, и, следовательно, во время проверки вредоносный файл с незначительными изменениями может признаться безопасным, так как сигнатуры для него и для выявленных ранее объектов будут отличаться. Для оценки подобных ситуаций в антивирусной индустрии используют два параметра, характеризующих работу антивирусного ПО. Одним из них является уровень обнаружения неизвестного вредоносного программного обеспечения, определяемый как отношение обнаруженных вредоносных объектов ко всему множеству вредоносных объектов, на котором работал антивирус. Другим параметром (уровнем ложных срабатываний) считается отношение количества безопасных объектов, признанных вредоносными, ко всему множеству безопасных объектов, на котором проводилось исследование. Эвристические методы защиты также обладают недостатками при обнаружении неизвестного вредоносного ПО: во-первых, длительное, относительно сигнатурных методов, время работы, а, во-вторых, они уже близки к границе своих возможностей, обеспечивая обнаружение на уровне 60-70%. Дальнейший рост уровня обнаружения может осуществляться лишь в незначительной степени. Это связано прежде всего с тем, что обнаружение вредоносного ПО эвристическими методами является более трудоемким процессом по сравнению с добавлением сигнатуры в базу данных. Поэтому подобный механизм осуществляется только для целых классов вредоносного ПО. Таким образом, эвристические методы не учитывают единичные экземпляры ПО. В том числе, можно также отметить, что они требуют длительной доработки и подвержены риску ложных срабатываний. При этом, используя комплексный подход в области обнаружения вредоносного ПО, предложенный ниже, можно повысить уровень защиты пользователей.
Помимо традиционных методов сигнатурного сравнения и эвристических методов был использован способ построчного сравнения, который заключается в выделении уникальных строк из исполняемого файла и сравнении их с аналогичными элементами, характерными для вредоносного ПО. Примером подобной технологии является заявка US 20050223238 A1, в которой описываются механизмы построчного сравнения. При этом для получения множества уникальных строк на первом этапе из файла удаляются все общеупотребительные строки, например, вызовы различных API-функций, а также строки, которые характерны для безопасного ПО. После указанного удаления по статистике остается около 10-20% от исходного числа строк, именно эта информация и признается уникальной. В дальнейшем происходит сравнение выбранных строк с уже известными аналогами, относящимися к вредоносному ПО. Результатом работы описанного способа является выявление количества одинаковых строк в исследуемом файле и в ранее известном вредоносном ПО. При этом для однозначного выявления вредоносного программного обеспечения в некоторых случаях все же может потребоваться участие человека - антивирусного аналитика.
Впоследствии были предложены варианты определения вредоносного ПО, исходя из сравнения функциональности анализируемой программы с уже известными шаблонами. При этом под функциональностью в большинстве случаев подразумеваются трассы выполнения (см. Фиг.7) и графы вызовов.
Трасса выполнения программы - это последовательность вызываемых процедур и функций с указанием передаваемых им параметров. В качестве примера на Фиг.7 показана часть трассы выполнения для программного «червя». Под вредоносным ПО класса «червь» подразумевается программное обеспечение, которое способно несанкционированно копировать свое тело по сетевым ресурсам с сохранением возможности дальнейшего распространения. С более подробным определением можно ознакомиться по ссылке - http://www.securelist.com/ru/glossary?glossid=152527951. В указанном фрагменте происходит определение сетевого адреса компьютера по его имени, соединение с ним и передача информации. Таким образом, трасса выполнения программы является достаточно удобным инструментом при анализе ПО, так как можно непосредственно отследить сам порядок действий.
Графы вызовов показывают в статическом режиме структуру ПО, при этом вершинами в них является множество некоторых процедур или функций, а ребра отражают возможность прямого обращения из одной вершины в другую. Графы вызовов обычно делят на два подмножества. В случае невысокой степени детализации речь идет о так называемых call-графах (термин, использующийся в специальной литературе), иначе говорят о flow-графах. В дальнейшем в описании изобретения будем придерживаться аналогичной терминологии. Для сравнения Фиг.8 и Фиг.9 демонстрируют примеры flow- и call-графа соответственно. Фиг.8 представляет собой часть flow-графа для «троянской программы» (подробное определение можно посмотреть по ссылке - http://www.securelist.com/ru/glossary?letter=244#gloss152528302). На Фиг.8 вершинами являются логические блоки (последовательность инструкций на низкоуровневом языке, вызываемых до команды перехода), а ребрами - вызовы одного логического блока из другого. В отличие от flow-графа, в call-графе, как указано на Фиг.9, вершинами являются процедуры или функции, написанные на высокоуровневом языке. При этом условие существования ребра между двумя вершинами не меняется. Также в call-графе выделяют уникальные функции 910 (написанные самим программистом) и стандартные 920 (библиотечные).
Так, например, подобный механизм предложен в заявке US 20070240215 A1, где рассматривается трасса выполнения программы. В патенте US 7093239 B1 шаблон функциональности формируется во время запуска ПО в виртуальной среде. В заявке US 20070094734 A1 описывается порядок построения деревьев, характеризующих процесс выполнения рассматриваемой программы. Недостатком указанных технологий является запуск в виртуальной среде (например, на виртуальной машине или в эмуляторе), что является ресурсоемкой операцией. Также некоторые вредоносные объекты проверяют факт работы в виртуальной среде, в случае которого происходит завершение их деятельности. Если же виртуальная среда не используется, вредоносное ПО может запускаться непосредственно на компьютере, что приведет к его заражению - процессу нежелательному как для пользователя, так и для антивирусной компании. Часто описанный выше механизм называют активным заражением. Обнаружение вредоносного ПО в указанных выше патентах и заявках основано в первую очередь на определении уровня «похожести» на элемент класса вредоносного ПО. При этом термин «похожесть» в области программного обеспечения определяется с точки зрения наличия одинаковых частей и определения их количества. Для этих целей вводится некоторое правило сравнения, например, расстояние Левенштейна между двумя объектами и пороговое значение этого расстояния, при превышении которого объекты признаются принадлежащими разным классам. Так, например, в заявке US 20070136455 A1 описывается механизм классификации ПО на основании задания некоторого правила и порогового значения. В заявке US 20090631001 также предлагается способ классификации (кластеризации), однако он основан на том, какие именно действия выполняются программой. То есть на первом этапе ПО запускается в виртуальной среде (например, на виртуальной машине), а затем на основании заранее известных шаблонов причисляется к тому или иному классу. В том числе на основании указанного способа предлагается классифицировать и вредоносное ПО. Объединение технологий классификации и поведенческого анализа показало хорошие результаты как при обнаружении вредоносных исполняемых файлов, так и при оптимизации размеров антивирусных баз.
Однако подобные технологии плохо применимы для других типов вредоносного ПО, например, для сценариев (скриптов, scripts) и документов. В первую очередь, это связано с различиями в технологии работы и с форматом файлов.
Таким образом, требуется создание обобщенной модели обнаружения вредоносных объектов, учитывающей различные типы файлов, такие как, например, исполняемые файлы, скрипты, документы и т.д. В то же время в некоторых случаях существуют ситуации, когда подобные системы не могут однозначно определить вредоносный исполнимый файл. Например, расстояние между объектами превышает заданное пороговое значение, но все же очень близко к нему. Помимо совершенствования технологий обнаружения вредоносных программ, существует также проблема, связанная с временем реагирования на неизвестные компьютерные угрозы. Существуют ситуации, когда на компьютере пользователя невозможно определить, является ли объект вредоносным или нет. В таких случаях на данный момент на сервер антивирусной компании отправляется информация об объекте, например имя, размер, значение хеш-функции. Однако для дальнейшего анализа потребуется получить образец объекта, что может занять длительное время. Передача от пользователя файла целиком могла бы сократить время реакции. Но на данный момент количество поступающих запросов от пользователей, содержащих информацию об имени, размере и хеш-значении файла, на серверы антивирусных компаний достигает десятков тысяч в день, что порождает большой трафик. Таким образом, учитывая степень загруженности сетевых каналов и серверов антивирусных компаний, передача файлов целиком не всегда нецелесообразна, так как возрастет объем трафика, и серверы антивирусных лабораторий будут не в состоянии его обработать. В связи с этим нужно применять механизмы взаимодействия с пользователем, когда о программном обеспечении передается информация, которая, во-первых, существенно меньше в объеме по сравнению с исходным файлом, а во-вторых, обеспечивает высокую надежность при обнаружении вредоносного ПО.
Таким образом, требуется получить способ, который позволял бы минимизировать количество случаев, когда антивирусная система не может в режиме реального времени обработать информацию, приходящую от пользователей, и дать точный ответ по поводу анализируемого объекта.
Наряду с усовершенствованием механизмов определения вредоносного ПО стоит обратить внимание на ретростективу развития отрасли антивирусных технологий. После опубликования (реализации) новых технологий вирусописатели со своей стороны анализируют их. Такой анализ направлен в первую очередь на поиск механизмов, позволяющих избежать обнаружения вредоносного ПО уже известными способами. Таким образом, противодействие «меча» и «щита» будет существовать до тех пор, пока существуют данные, представляющие интерес для кого-либо. Из чего следует, что эффективность даже очень хорошей технологии может снижаться по мере того, как злоумышленники будут находить новые возможности сокрытия вредоносного ПО. Здесь и далее под эффективностью понимается соотношение уровня обнаружения неизвестных вредоносных объектов и уровня ложных срабатываний при таком обнаружении. В частном варианте эффективность антивирусного ПО может определяться как разность между уровнем обнаружения и уровнем ложных срабатываний.
В связи с этим доверие к технологиям, известным и используемым на данный момент, должно быть основано на их текущей эффективности. В качестве примера снижения эффективности обнаружения можно привести ситуацию с построчным сравнением. Злоумышленники, проанализировав суть метода, начинают использовать механизмы, снижающие его эффективность, например шифрование и динамическую генерацию строк. Фиг.13А демонстрирует в качестве примера часть строк для двух троянских программ сходной вредоносной функциональности. Однако при сравнении их строк видно, что практически все из них разные. Таким образом, метод построчного сравнения не даст верного результата в этом случае. Другим примером деградации антивирусной технологии может послужить использование лишних вызовов API-функций в ответ на обнаружение вредоносных программ методом анализа графов вызовов. Фиг.13Б указывает на то, что две вредоносные программы осуществляют одинаковые действия, однако при этом совершают дополнительные (лишние) шаги, которые не влияют на конечный результат. Такие мусорные инструкции затрудняют использование графов вызовов для обнаружения вредоносного ПО.
Анализ предшествующего уровня техники и возможностей позволяет получить новый технический результат, заключающийся в повышении эффективности обнаружения неизвестных вредоносных объектов.
Сущность изобретения
Настоящее изобретение предназначено для компьютерных систем, более конкретно для обнаружения вредоносных объектов.
Технический результат настоящего изобретения заключается в повышении эффективности обнаружения неизвестных вредоносных объектов.
Одним из предметов настоящего изобретения является способ обнаружения неизвестных вредоносных объектов, в котором: а) формируют набор характеристик, каждая из которых описывает файл в общем виде; б) для каждой характеристики выбирают, по крайней мере, один способ ее обработки; в) определяют уровень обнаружения вредоносных объектов, по крайней мере, для одного способа обработки; г) определяют уровень ложных срабатываний, по крайней мере, для одного способа обработки; д) рассчитывают эффективность, по крайней мере, для одного способа обработки путем оценки соотношения уровня обнаружения и уровня ложных срабатываний; е) выбирают тот способ обработки, для которого эффективность обнаружения вредоносных объектов максимальна; ж) используют выбранный способ обработки для обнаружения неизвестных вредоносных объектов.
В частном варианте реализации в указанном выше способе под объектом подразумевается исполняемый файл, файл сценария или документ.
В другом варианте исполнения в качестве характеристик объекта могут выступать, в числе прочего, рабочие области, уникальные строки, последовательности вызовов API-функций, графы вызовов и трассы выполнения.
В еще одном варианте выполнения в описанном выше способе используются полные базы данных вредоносных и безопасных объектов. Также могут быть использованы частичные базы данных, сформированные, например, за сутки или за месяц.
В частном варианте реализации все описанные действия способа совершаются периодически с целью актуализации информации об эффективности способа обработки характеристик.
В другом варианте выполнения представленного способа анализируются объекты заданного типа, тем самым выявляется наиболее эффективный способ обработки при работе с объектами определенного типа.
В еще одном варианте исполнения вышеописанного способа уровень обнаружения вредоносных объектов определяется как отношение количества вредоносных объектов, признанных вредоносными, к общему количеству вредоносных объектов. При этом уровень ложных срабатываний определяется с использованием отношения числа безопасных объектов, признанных вредоносными, к общему количеству безопасных объектов.
В частном варианте реализации эффективность оценивается для комбинации, по крайней мере, двух способов обработки.
Другим предметом настоящего изобретения является система обнаружения неизвестных вредоносных объектов, включающая: средство формирования набора характеристик, каждая из которых описывает объект в общем виде; средство определения уровня обнаружения способа обработки характеристики объекта; средство определения уровня ложных срабатываний способа обработки; средство расчета эффективности способа обработки; средство выбора наиболее эффективного способа обработки; базы данных вредоносных и безопасных объектов.
В частных вариантах выполнения объектом в вышеописанной системе является исполняемый файл, файл сценария или документ.
В еще одном варианте реализации в качестве характеристик объекта выступают рабочие области, уникальные строки, шаблоны поведения, графы и трассы выполнения, порядок вызова API-функций.
В других вариантах исполнения указанной выше системы базы данных вредоносных и безопасных объектов могут использоваться как полностью, так и частично, например, только те данные, которые сформированы за временной интервал, например за сутки, месяц или год.
В еще одном варианте выполнения описанной ранее системы анализируются объекты определенного типа, таким образом, определяется наиболее эффективный способ обработки, например, для исполняемых файлов, для документов и так далее.
В частном варианте реализации предложенной системы дополнительно содержится средство формирования комбинаций способов обработки. При этом эффективность оценивается для комбинации, по крайней мере, двух способов обработки, следовательно, рассматриваются не только единичные способы, но и их различные сочетания.
Третьим предметом настоящего изобретения является машиночитаемый носитель для обнаружения неизвестных вредоносных объектов, на котором сохранена компьютерная программа, при выполнении которой на компьютере выполняются следующие этапы: формирование набора характеристик, каждая из которых описывает объект в общем виде, для всех объектов из баз данных вредоносных и безопасных объектов; выбор способа обработки характеристики объекта; определение уровня обнаружения вредоносных объектов для способа обработки характеристики объекта; оценка уровня ложных срабатываний для способа обработки характеристики объекта; выбор способа обработки, обладающего максимальной эффективностью; выполнение выбранного способа обработки с целью обнаружения неизвестных вредоносных объектов.
Дополнительные преимущества изобретения будут раскрыты далее в ходе описания вариантов реализации изобретения. Также отметим, что все материалы данного описания направлены на детальное понимание того технического предложения, которое изложено в формуле изобретения.
Краткое описание прилагаемых чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут раскрыты дальше в описании со ссылками на прилагаемые чертежи.
Фиг.1 иллюстрирует механизм обнаружения вредоносных объектов с использованием предлагаемого способа.
Фиг.2 описывает один из вариантов выбора релевантных характеристик исследуемого файла с точки зрения минимизации времени их обработки.
Фиг.3 показывает последовательность действий при нахождении наиболее эффективного способа обработки характеристики объекта для обнаружения неизвестных вредоносных объектов.
Фиг.4 иллюстрирует процесс выбора компьютера, способного провести анализ набора характеристик исследуемого объекта.
Фиг.5 демонстрирует примерную архитектуру системы, реализующей способ на Фиг.3.
Фиг.6 показывает примерную схему компьютера общего назначения, на котором развертывается настоящее техническое решение.
Фиг.7 демонстрирует пример части трассы выполнения программного червя.
Фиг.8 иллюстрирует часть flow-графа для троянской программы.
Фиг.9 показывает часть call-графа для программного червя.
Фиг.10 описывает сущность рабочих областей исполняемого файла.
Фиг.11 схематично изображает структуру файла в формате PDF.
Фиг.12 демонстрирует пример оценки эффективности обнаружения неизвестных вредоносных объектов.
Фиг.13А иллюстрирует пример модификации строк в программе таким образом, чтобы построчное сравнение было невозможным.
Фиг.13Б показывает способ противодействия анализу графа вызовов ПО путем добавления инструкций, не несущих полезной нагрузки.
Фиг.14 иллюстрирует пример соотношения эффективности работы каждого способа по отдельности и их комбинации.
Подробное описание предпочтительных вариантов осуществления
Объекты и признаки настоящего изобретения, способы для достижения этих признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является ничем иным, как конкретными деталями, обеспеченными для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется только в объеме приложенной формулы.
В область решаемых задач входит повышение эффективности обнаружения неизвестных вредоносных объектов.
Основные преимущества настоящего изобретения вытекают из использования «файлового генома» (далее будем использовать этот термин без кавычек) для обнаружения вредоносного ПО и адаптивного выбора способа проверки объекта. Под файловым геномом подразумевается набор характеристик, каждая из которых в общем виде описывает файл таким образом, чтобы можно было определить его принадлежность к одному из классов. В одном из вариантов реализации файловый геном состоит из набора так называемых «генов» (по аналогии с биологией), при этом ген является аналогом характеристики объекта. В дальнейшем для простоты изложения будем использовать термин «ген». В частности, файловый геном может включать уникальные строки исследуемого объекта, его рабочие области, трассу выполнения, заранее предопределенные шаблоны вредоносного поведения, flow-граф, call-граф и т.д. Стоит отметить, что может существовать несколько способов обработки каждого гена. Способом обработки гена считается применение заранее определенных действий при работе с геном, которые направлены на принятие решения о том, является объект вредоносным или нет. Например, одним из способов обработки call-графа является сравнение его с аналогичными известными элементами из баз данных. Здесь и далее под рабочими областями понимаются некоторые части файла, в частности, загруженные в оперативную память, которые наиболее полно его описывают. В качестве примера на Фиг.10 изображен один из вариантов получения рабочих областей исполняемого файла, используемого в среде операционных систем семейства Windows. Такие файлы называют РЕ-файлами (см. http://www.microsoft.com/whdc/system/platform/firmware/PECOFF.mspx). Они имеют свою определенную структуру, а именно: заголовки, набор секций, таблицы импорта, перемещений и т.д. При этом информативными элементами для анализа в данном случае являются заголовок, точка входа, указание на основную функцию и иные служебные области. Фиг.10 представляет собой частный вариант реализации получения рабочей области. В качестве наиболее важных частей файла выбираются заголовок, адрес в оперативной памяти, с которого начинается выполнение программы (точка входа), указатель на основную функцию и указатель на завершение выполнения. В дальнейшем до и после указанных частей берется по 4 КБ данных. Таким образом, формируется 32 КБ информации, которая помещается в оперативную память, и с ней происходит дальнейшая работа. Такой подход минимизирует время обработки файла, так как непосредственный доступ к объекту на жестком диске является самой медленной операцией на компьютере, а работа с оперативной памятью существенно быстрее.
Однако при анализе файлов другого формата, например PDF, в качестве рабочих областей выступают другие части файла. В данном случае в первую очередь может рассматриваться его активное содержимое, такое как java-скрипты (сценарии, написанные на языке javascript). Это связано с тем, что выполнение java-скрипта в теле документа является небезопасной операцией, так как java-скрипт внутри себя может вызвать, в том числе, и исполняемый файл. Структура формата PDF изображена на Фиг.11, из которой видно, что существует четкое разделение между объектами внутри файла и существует таблица перекрестных ссылок между ними.
Каждый из генов может обрабатываться различными способами. Например, если для анализа выбран call-граф, тогда полученная последовательность, в том числе, сравнивается с аналогичными последовательностями, хранящимися в базе данных. В то же время гены, базы данных для которых не занимают много места, могут быть обработаны без запросов к центральной базе данных. Для этого указанные базы данных передаются пользователям, и с их помощью может происходить проверка непосредственно на компьютере пользователя.
Фиг.1 демонстрирует способ обнаружения неизвестных объектов. На этапе 110 сравнивается значение хеш-функции от анализируемого объекта с теми значениями, которые хранятся в базах данных вредоносных и безопасных объектов. Причем указанные базы данных могут работать под управлением любых из существующих, а также будущих СУБД, например, Oracle, MySQL, Microsoft SQL Server и т.д. В качестве функции хеширования может быть использована как любая известная на данный момент, например MD5, SHA-1, SHA-2, Skein, так и разработанная позднее. Предварительный этап 110 обусловлен в первую очередь трудоемкостью процесса формирования и обработки файлового генома. Таким образом, вначале мы минимизируем то множество, для которого должны происходить проверки, путем выявления неизвестного ПО. Затем для отобранных объектов осуществляем проверки в соответствии с алгоритмами, описанными ниже. Следовательно, благодаря описанному подходу указанный недостаток себя не проявляет.
На шаге 120, в случае если поиск прошел успешно, анализ завершается. В противном случае переходят к шагу 130, где для исследуемого объекта формируется файловый геном для дальнейшего анализа. При этом характер и объем данных может определяться в зависимости от возможностей и ресурсов компьютера и типа анализируемого файла. Более подробно процесс получения указанной информации изображен на Фиг.2 и Фиг.3. В тот момент, когда данные подготовлены, на этапе 140 они отправляются тому компьютеру, который по своим характеристикам способен их обработать. Выбор компьютера может осуществляться несколькими способами. Один из вариантов реализации представлен на Фиг.4. Далее на шаге 150 происходит обработка полученных данных в соответствии ранее определенными способами. Предположим, что на предыдущем этапе для отправки на другой компьютер был выбран шаблон функциональности. Таким образом, на шаге 150 указанная информация сначала подвергается точному сравнению с аналогичными объектами, хранящимися в базе вредоносных объектов. Такая итерация включена в связи с тем, что, с одной стороны, операция нечеткого поиска является ресурсоемкой, а с другой - могут существовать ситуации, когда сравнение по значениям хеш-функции прошло безуспешно, но шаблоны функциональности полностью совпадают. При положительном результате сравнения объект признается вредоносным, иначе происходит нечеткий поиск. Нечеткий поиск в данном контексте означает применение алгоритмов нечеткого сравнения строк, например, Левенштейна, Ландау-Вишкина и т.д. То есть рассматриваемый шаблон функциональности представляется в виде последовательности (строки), которая сравнивается с другими шаблонами функциональности, которые уже существуют в базе данных. В этом случае определяется степень похожести между объектами, а решение принимается на основе превышения некоторого заданного порога.
В частном варианте реализации степень похожести может определяться так, как описано в патенте US 5440742.
В другом частном варианте реализации шаблону функциональности может присваиваться определенный рейтинг опасности, по которому будет приниматься решение, считать объект вредоносным или нет. В частности, рейтинг опасности может определяться так, как указано в патенте US 7530106, или следующим образом:
- из неизвестного шаблона функциональности выделяются все логические блоки;
- определяется статус каждого из выделенных блоков;
- в зависимости от статуса и количества появлений блоку выставляется рейтинг опасности;
- рейтинг опасности для всего шаблона функциональности формируется путем объединения рейтингов по всем логическим блокам.
В частном варианте реализации рейтинг опасности для всего шаблона функциональности может быть подсчитан путем простого суммирования всех полученных ранее рейтингов с последующим нормированием. В описанной последовательности действий под логическим блоком может пониматься, в частности, список ассемблерных инструкций, выполняемых до команды передачи управления (см. описание Фиг.8). Также можно выделить несколько возможных статусов логического блока: вредоносный (встречается только во вредоносных шаблонах), безопасный (встречается только в безопасных шаблонах), смешанный (встречается как во вредоносных, так и в безопасных шаблонах) и неизвестный (такой блок, который встречается впервые).
На основании полученного рейтинга опасности шаблона функциональности принимается решение о признании объекта вредоносным.
В дальнейшем после окончания обработки полученных данных переходят к пункту 160, где пользователю отправляется ответ о том, является ли объект вредоносным.
Фиг.2 иллюстрирует один из частных вариантов процесса выбора релевантных генов. Способ их определения основан на минимизации времени получения ответа о наличии вредоносной составляющей. Таким образом, в первую очередь выбирается способ, посредством которого будет производиться обнаружение неизвестного вредоносного ПО. На основании выбранного способа формируется необходимая информация. В частном варианте реализации описанный процесс осуществляется с использованием нечеткой логики. Определяются две лингвистические переменные: «эффективность способа» и «ресурсоемкость получения входных данных для способа», - для каждой из которых определяется терм-множество, например, {«низкая», «средняя», «высокая»}. При этом эффективность способов периодически пересматривается. Затем сформированный упорядоченный список можно разделить на категории в зависимости от типовой конфигурации компьютера, например «маломощный», «средний», «высокопроизводительный». В качестве примера для подобного анализа может быть приведен патент RU 98611 «Система улучшения производительности персонального компьютера за счет адаптивной настройки конфликтных приложений». Таким образом, на основании указанного способа может быть сформирован оптимальный набор генов, который компьютер пользователя в состоянии выделить из исследуемого файла и которые дадут наилучшие результаты при обнаружении вредоносного программного обеспечения.
Фиг.3 представляет способ определения наиболее эффективной комбинации способов обработки генов для обнаружения неизвестных вредоносных объектов. Здесь и далее под комбинацией способов обработки генов подразумевается множество способов нахождения неизвестных вредоносных объектов и соответствующих им генов, состоящее, по крайней мере, из одного элемента. Эффективность в данном случае будет определяться как соотношение уровня обнаружения и уровня ложных срабатываний. При этом под уровнем обнаружения неизвестного вредоносного программного обеспечения понимается отношение обнаруженных вредоносных объектов ко всему множеству вредоносных объектов, на котором работал антивирус, а уровнем ложных срабатываний - отношение количества безопасных объектов, признанных вредоносными, ко всему множеству безопасных объектов, на котором проводилось исследование.
Использование различных комбинаций способов обработки генов обусловлено тем, что в некоторых случаях не самые эффективные способы обработки по отдельности дают наилучший результат при совместной работе. Так, Фиг.14 представляет собой пример, когда применение способов обработки 1410 и 1420 вместе нелинейно повышает эффективность обнаружения вредоносных объектов. Результат их совместной работы изображен кривой 1430.
В предлагаемом способе на шаге 310 для всех объектов из баз данных вредоносных и безопасных объектов формируют файловый геном. В дальнейшем на этапе 320 выбирают для каждого гена, по крайней мере, один способ обработки. Затем на стадии 330 формируют, по крайней мере, одну комбинацию способов обработки генов, для которых впоследствии оценивается эффективность их работы. Стоит отметить, что сформированная комбинация может состоять лишь из одного способа обработки гена. Для расчета эффективности на этапах 340 и 350 определяется уровень обнаружения и уровень ложных срабатываний для каждой комбинации. Затем на основании данных, полученных на предыдущих стадиях, на шаге 360 рассчитывают эффективность каждой рассмотренной комбинации. Фиг.12 показывает частный вариант определения эффективности при обнаружении вредоносных объектов. Затем полученные ранее результаты оценки сравниваются на шаге 370, и из всех комбинаций выбирается наиболее эффективная. В соответствии с выбранной комбинацией в дальнейшем формируются только те гены, которые требуются для ее осуществления.
Стоит отметить, что эффективность комбинаций способов обработки может пересматриваться время от времени, что обеспечит более актуальную информацию о степени доверия им, и, следовательно, повысит качество обнаружения неизвестного вредоносного ПО.
При появлении генов, неизвестных ранее, предварительные значения эффективности для них по каждому типу объектов заносятся в базу данных. При этом по мере набора статистики указанные значения пересматриваются.
Также могут возникнуть ситуации, когда появляется новый тип файлов, при этом анализ существующих генов не дает удовлетворительных результатов. То есть существует большое количество случаев, когда обработка и анализ известных генов дают ошибочный результат. Таким образом, при появлении новых типов файлов может возникнуть потребность выделения новых генов. При этом процесс определения информации о файле, которая может считаться геном, носит итеративный характер.
Также подвергаются временному анализу и сами базы данных с генами, а именно рассматривается мощность покрытия множества вредоносных программ отдельным геном. Под мощностью покрытия подразумевается процент вредоносных объектов, которые выявляются при помощи одного гена. Как было указано выше, эффективность комбинаций способов обработки может меняться со временем, это относится и к мощности покрытия. Для оценки таких изменений полезна средняя мощность покрытия множества вредоносных объектов генами, которая вычисляется как среднее арифметическое от всех мощностей покрытия указанного множества генами. При этом снижение указанной величины может свидетельствовать как о снижении эффективности комбинации, в соответствии с которой формируются гены, а также о необходимости изменения правил добавления новых генов.
Фиг.4 иллюстрирует процесс выбора компьютера, который по своим характеристикам может обработать файловый геном. В частном варианте реализации на центральном сервере может храниться информация о параметрах компьютеров сети и статистики времени их работы. Например, все множество компьютеров сети может быть разделено по уровню производительности, аналогично патенту RU 98611 «Система улучшения производительности персонального компьютера за счет адаптивной настройки конфликтных приложений». В дальнейшем в зависимости от ресурсоемкости выбранного на этапе 130 способа определяется подмножество компьютеров с требуемыми характеристиками. Затем подмножество еще раз сужается вследствие определения уровня сетевой доступности. Здесь под сетевой доступностью понимается период нахождения компьютера в сети, степень его загруженности, пропускная способность каналов связи и т.п. При этом, если среди компьютеров пользователей не нашлось требуемого объекта, в роли анализирующего компьютера может выступить сервер антивирусной компании. Если же количество компьютеров, удовлетворяющих заданным критериям велико, из них может быть выбрано лишь некоторое подмножество. Пусть, например, требуется найти компьютер со средними характеристиками для анализа некоторого программного обеспечения. На Фиг.4 изображено множество компьютеров с указанными параметрами, в том числе компьютер 2 и компьютер 3. При этом только один из них - компьютер 3 - обладает средним уровнем сетевой доступности, т.е. вероятность получения ответа от него выше, чем от компьютера 2. Следовательно, для обработки данных в рассматриваемом случае может быть выбран лишь компьютер 3.
Фиг.5 демонстрирует примерную архитектуру системы, реализующей способ 300. Система 500 включает средство формирования файлового генома 510, предназначенное для выделения различных генов из объектов, принадлежащих базам данных вредоносных 520 и безопасных 530 объектов. Также система 500 содержит средство 540 формирования всевозможных комбинаций способов обработки генов, которые представляют собой некоторое множество, например, {Ген 1:Способ 1, Ген 2:Способ 5, Ген 7:Способ 11, …}. Далее описываемая система включает средство оценки уровня обнаружения 550 и средство оценки уровня ложных срабатываний 560, связанные с базами данных вредоносных 520 и безопасных 530 объектов соответственно, а также со средством расчета эффективности 570. Средство 570 анализирует данные, полученные от средств 550 и 560, а затем определяет эффективность каждой комбинации. В дальнейшем средство выбора 580 сравнивает рассчитанные значения эффективности и выбирает наибольшее.
На первом этапе средство 510 формирует файловый геном для объектов из баз данных вредоносных 520 и безопасных 530 объектов, затем обращается к средству формирования всевозможных комбинаций 540, которое из имеющихся генов и соответствующих им способов генерирует различные их сочетания. Так как комбинация способов обработки может состоять из одного элемента, то в частных вариантах исполнения системы 500 средство 540 может отсутствовать. Далее для сформированных комбинаций оценивается уровень обнаружения неизвестных вредоносных объектов и уровень ложных срабатываний средствами 550 и 560 соответственно. Указанные оценки в дальнейшем учитывается средством расчета эффективности 570, предназначенным для определения эффективности работы каждой комбинации. При этом эффективность может рассчитываться с использованием различных механизмов. Фиг.12 представляет собой один из частных вариантов определения указанной величины. Значения, полученные средством 570, сравниваются между собой средством выбора 580. Таким образом, средство выбора 580 отмечает наиболее эффективную комбинацию способов обработки генов при обнаружении неизвестных вредоносных объектов. Следовательно, при использовании найденной комбинации будет повышаться эффективность обнаружения неизвестных вредоносных программ.
В частном варианте реализации могут рассматриваться объекты определенного типа, то есть определяться комбинации способов обработки, которые лучше всего подходят для их обработки. Также могут быть использованы части баз данных вредоносных и безопасных объектов, например, за заданный промежуток времени.
В одном из вариантов реализации системы 500 файловый геном состоит из одного гена - шаблона функциональности. В таком случае в системе 500 существует лишь один ген, а средство формирования файлового генома 510 аналогично соответствующим элементам из системы, описанной в патенте US 5440742. Таким образом, на первом этапе средство 510 строит шаблон функциональности для объектов из баз данных 520 и 530 аналогично патенту US 5440742. Далее средство формирования комбинаций способов обработки 540 генерирует различные сочетания одного гена (шаблон функциональности) и способов его обработки. При этом одним из них может являться способ, описанный в патенте US 5440742. В дальнейшем сформированные комбинации оцениваются средствами 550 и 560 с точки зрения уровня обнаружения и уровня ложных срабатываний. На основании проведенной оценки средство расчета эффективности 570 определяет эффективность работы каждой комбинации. После чего средство выбора 580 выявляет наиболее эффективную комбинацию. Так как в предложенном варианте реализации фигурирует лишь один ген, то все комбинации отличаются лишь сочетаниями способов обработки. Также с течение времени эффективность способов может пересматриваться.
При появлении новых генов ранее собранные коллекции вредоносных объектов могут быть заново проанализированы, в том числе, могут быть обнаружены гены, соответствующие безопасным объектам. После такой перепроверки существует возможность обновления и внесения правок в базу данных.
Фиг.6 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая, в свою очередь, память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20, в свою очередь, содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс привода магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.).
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35 и дополнительные программные приложения 37, другие программные модули 38 и программные данные 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который, в свою очередь, подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47 персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например колонки, принтер и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг.6. В вычислительной сети могут присутствовать также и другие устройства, например маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 51 и глобальную вычислительную сеть (WAN) 52. Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 51 через сетевой адаптер или сетевой интерфейс 53. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью 52, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными, и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
Фиг.7 иллюстрирует пример части трассы выполнения программного червя. В представленном фрагменте трассы выполнения осуществляются порядок действий, описанный ниже. На шаге 710 определяется сетевой адрес компьютера по его имени, в качестве параметра передается строка «mxl.mail.yahoo.com». Далее на этапе 720 происходит попытка установки соединения с ним, которая завершается успешно. После этого осуществляется получение данных 730, а затем на стадии 740 вычисляется длина интересующей строки, которая впоследствии отправляется на шаге 750. Таким образом, из трассы выполнения программы становится понятно, какие функции и с какими параметрами вызываются, что оказывается полезным для анализа ПО при сравнении шаблонов функциональности.
Фиг.8 демонстрирует часть flow-графа для троянской программы. На Фиг.8 вершинами является совокупность ассемблерных инструкций, выполняемых до перехода. Две вершины связаны ребром тогда и только тогда, когда из одной из них существует вызов другой. При этом можно отметить как безусловные переходы 810, так и условные - 820. Для условного перехода 820 всегда существует некоторое предположение, которое либо выполняется, либо нет. Например, запись «jnz short loc_40686 В» означает переход в область lос_40686 В в случае, если значение флага ZF отлично от нуля.
Фиг.9 представляет собой часть call-графа, построенного для программного червя. Вершинами в данном случае являются некоторые процедуры или функции языка высокого уровня, например, «открыть файл». При этом из них можно выделить стандартные или встроенные функции 920, а также уникальные 910, которые были написаны конкретным программистом для себя. Ребро соединяет две вершины в том случае, если из одной функции существует вызов другой. Например, внутри функции Sub_401463 вызываются функции RegQueryValueExA, Sub_401031, RegCloseKey и т.д., то есть из вершины Sub_401463 существуют ребра в RegQueryValueExA, Sub_401031 и в RegCloseKey.
Фиг.10 показывает пример формирования рабочих областей. В частном варианте реализации в качестве наиболее информативных частей файла выбираются заголовок, адрес в оперативной памяти, с которого начинается выполнение программы (точка входа), указатель на основную функцию и указатель на завершение выполнения. В дальнейшем до и после указанных частей берется по 4 КБ данных. Таким образом, формируется 32 КБ информации, которая помещается в оперативную память и с ней происходит дальнейшая работа. Такой подход минимизирует время обработки файла, так как непосредственный доступ к объекту на жестком диске является самой медленной операцией на компьютере, а работа с оперативной памятью существенно быстрее.
Фиг.11 демонстрирует структуру файла в формате PDF. Описываемый формат подразумевает наличие заголовка 1110, который начинается с '%PDF'. Далее идет список объектов файла 1120, для которых указывается, в числе прочего, номер и тип, а также способ, с помощью которого он закодирован. Окончание каждого объекта отмечается специальной меткой. В таблице перекрестных ссылок 1130 указываются ссылки на другие объекты внутри документа, а в следующей секции 1140 прописываются правила разбора этой таблицы. Область 1150 показывает завершение документа, которое помечается последовательностью символов '%EOF'.
Фиг.12 представляет собой пример определения эффективности обработки неизвестного объекта. Значение эффективности принадлежит отрезку от 0 до 1. В частном варианте реализации, такое значение может определяться эмпирически. Например, берем множество вредоносных и безопасных объектов определенного типа. Для каждого элемента множества выделяем требуемые гены. Далее обрабатываем полученные гены заранее определенными способами. По результатам обработки принимаем решение о том, является ли объект вредоносным. Таким образом, на последнем шаге получаем множество Х объектов, признанных вредоносными. Тогда эффективность обработки неизвестного объекта может быть рассчитана по формуле:
Figure 00000001
где k - эффективность способа обработки неизвестного объекта,
Figure 00000002
- количество вредоносных объектов, признанных вредоносными,
Figure 00000003
- количество безопасных объектов, признанных вредоносными,
В, W - заданное количество вредоносных и безопасных объектов соответственно.
Как отмечалось ранее, описанный способ определения эффективности может осуществляться периодически для формирования наиболее актуальных оценок.
Фиг.13А демонстрирует пример обмана механизма построчного сравнения файлов. Фиг.13А показывает часть строк для двух троянских программ, которые имеют одинаковый функционал, но различаются в наименовании используемых файлов. Таким образом, оба объекта совершают вредоносные действия, однако при сравнении их строк видно, что практически все из них разные. Из этого следует, что метод построчного сравнения не даст положительного результата в этом случае.
Фиг.13Б представляет один из вариантов противодействия обнаружению вредоносных программ методом сравнения графов вызовов. В указанных списках вызываемых функций злоумышленниками включены дополнительные шаги, которые не влияют на конечный результат. При этом сравнение указанных графов вызовов не признает их похожими. Следовательно, такие мусорные инструкции затрудняют использование графов вызовов для обнаружения вредоносного ПО.
Фиг.14 иллюстрирует пример работы комбинации 1430 двух способов обработки генов 1410 и 1420. Здесь по оси ординат отложен уровень обнаружения неизвестных вредоносных объектов, а по оси абсцисс - уровень ложных срабатываний. Таким образом, способ обработки 1410 гена А и способ обработки 1420 гена Б по отдельности имеют не высокую эффективность, однако существуют ситуации, когда эффективность их совместного применения 1430 значительно превышает как эффективность каждого из способов по отдельности, так и их суммарную эффективность.
В заключение следует отметить, что приведенные в описании сведения являются только примерами, которые не ограничивают объем настоящего изобретения, определенного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего изобретения, согласующиеся с сущностью и объемом настоящего изобретения.

Claims (18)

1. Способ обнаружения неизвестных вредоносных объектов, в котором:
а) формируют набор характеристик, каждая из которых описывает объект, для всех объектов из баз данных вредоносных и безопасных объектов;
б) для каждой характеристики выбирают, по крайней мере, один способ обработки характеристики объекта;
в) определяют уровень обнаружения вредоносных объектов, по крайней мере, для одного способа обработки характеристики объекта;
г) определяют уровень ложных срабатываний, по крайней мере, для одного способа обработки характеристики объекта;
д) рассчитывают эффективность, по крайней мере, для одного способа обработки характеристики объекта путем оценки соотношения уровня обнаружения и уровня ложных срабатываний;
е) выбирают способ обработки, для которого эффективность обнаружения вредоносных объектов максимальна;
ж) используют выбранный способ обработки для обнаружения неизвестных вредоносных объектов.
2. Способ по п.1, где объектом является исполняемый файл, файл сценария или документ.
3. Способ по п.1, где в качестве характеристики выступает, по крайней мере, одна из следующих:
- рабочие области,
- уникальные строки,
- последовательности вызовов API-функций,
- графы вызовов,
- трасса выполнения.
4. Способ по п.1, в котором используются полные базы данных вредоносных и безопасных объектов.
5. Способ по п.1, в котором используются базы данных вредоносных и безопасных объектов, сформированные за временной интервал.
6. Способ по п.1, в котором все действия выполняются периодически.
7. Способ по п.1, в котором анализируются объекты определенного типа.
8. Способ по п.1, в котором определение уровня обнаружения вредоносных объектов определяется как отношение числа вредоносных объектов, признанных вредоносными, к общему числу вредоносных объектов.
9. Способ по п.1, в котором определение уровня ложных срабатываний осуществляется с использованием отношения количества безопасных объектов, признанных вредоносными, к общему количеству безопасных объектов.
10. Способ по п.1, в котором эффективность оценивается для комбинации, по крайней мере, двух способов обработки характеристик объекта.
11. Система обнаружения неизвестных вредоносных объектов, которая включает:
- средство формирования набора характеристик, каждая из которых описывает объект, связанное со средством определения уровня обнаружения, средством определения уровня ложных срабатываний и с базами данных вредоносных и безопасных объектов,
- средство определения уровня обнаружения, по крайней мере, для одного способа обработки характеристики объекта, которое также связано с базой данных вредоносных объектов и со средством расчета эффективности,
- база данных вредоносных объектов, предназначенная для хранения коллекций вредоносных объектов,
- средство определения уровня ложных срабатываний, по крайней мере, для одного способа обработки характеристики объекта, связанное с базой данных безопасных объектов и со средством расчета эффективности,
- база данных безопасных объектов, предназначенная для хранения коллекций безопасных объектов,
- средство расчета эффективности, предназначенное для оценки соотношения уровня обнаружения и уровня ложных срабатываний, по крайней мере, для одного способа обработки характеристики объекта, которое также связано со средством выбора,
- средство выбора, предназначенное для выбора наиболее эффективного способа обработки характеристики объекта для обнаружения неизвестных вредоносных объектов,
- средство обнаружения, предназначенное для обнаружения неизвестных вредоносных объектов выбранным способом.
12. Система по п.11, в которой объектом является исполняемый файл, файл сценария или документ.
13. Система по п.11, в которой характеристика объекта включает, по крайней мере, один из следующих элементов:
- рабочие области программного обеспечения,
- уникальные строки,
- шаблоны поведения,
- графы выполнения,
- трассы выполнения,
- порядок вызова API-функций.
14. Система по п.11, в которой используются полные базы данных вредоносных и безопасных объектов.
15. Система по п.11, в которой используются базы данных вредоносных и безопасных объектов, сформированные за временной интервал.
16. Система по п.11, в которой анализируются объекты определенного типа.
17. Система по п.11, в которой эффективность оценивается для комбинации, по крайней мере, двух способов обработки характеристик объекта.
18. Машиночитаемый носитель для обнаружения неизвестных вредоносных объектов, на котором сохранена компьютерная программа, при выполнении которой на компьютере выполняются следующие этапы:
- формирование набора характеристик, каждая из которых описывает объект, для всех объектов из баз данных вредоносных и безопасных объектов,
- выбор, по крайней мере, одного способа обработки характеристики объекта,
- определение уровня обнаружения вредоносных объектов, по крайней мере, для одного способа обработки характеристики объекта,
- оценка уровня ложных срабатываний, по крайней мере, для одного способа обработки характеристики объекта,
- расчет эффективности, по крайней мере, для одного способа обработки характеристики объекта,
- выбор способа обработки характеристики объекта, у которого эффективность максимальна,
- выполнение выбранного способа обработки с целью обнаружения неизвестных вредоносных объектов.
RU2010154528/08A 2010-12-30 2010-12-30 Система и способ повышения эффективности обнаружения неизвестных вредоносных объектов RU2454714C1 (ru)

Priority Applications (4)

Application Number Priority Date Filing Date Title
RU2010154528/08A RU2454714C1 (ru) 2010-12-30 2010-12-30 Система и способ повышения эффективности обнаружения неизвестных вредоносных объектов
US13/190,601 US8479296B2 (en) 2010-12-30 2011-07-26 System and method for detecting unknown malware
EP11187019.2A EP2472425B1 (en) 2010-12-30 2011-10-28 System and method for detecting unknown malware
CN201110442195.1A CN102592079B (zh) 2010-12-30 2011-12-26 用于检测未知恶意软件的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2010154528/08A RU2454714C1 (ru) 2010-12-30 2010-12-30 Система и способ повышения эффективности обнаружения неизвестных вредоносных объектов

Publications (1)

Publication Number Publication Date
RU2454714C1 true RU2454714C1 (ru) 2012-06-27

Family

ID=44925355

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2010154528/08A RU2454714C1 (ru) 2010-12-30 2010-12-30 Система и способ повышения эффективности обнаружения неизвестных вредоносных объектов

Country Status (4)

Country Link
US (1) US8479296B2 (ru)
EP (1) EP2472425B1 (ru)
CN (1) CN102592079B (ru)
RU (1) RU2454714C1 (ru)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2527738C1 (ru) * 2013-04-24 2014-09-10 Общество с ограниченной ответственностью "НАНО Секьюрити" Способ обезвреживания вредоносных программ, блокирующих работу пк, с использованием отдельного устройства для активации пользователем процедуры противодействия вредоносному программному обеспечению
RU2538287C2 (ru) * 2013-02-06 2015-01-10 Закрытое акционерное общество "Крафтвэй корпорэйшн ПЛС" Способ проверки антивирусом компьютера в uefi на ранней стадии загрузки компьютера
US8955120B2 (en) 2013-06-28 2015-02-10 Kaspersky Lab Zao Flexible fingerprint for detection of malware
RU168346U1 (ru) * 2016-06-23 2017-01-30 Закрытое Акционерное Общество "Научно-Производственное Объединение "Эшелон" Устройство выявления уязвимостей
US9582335B2 (en) 2011-11-24 2017-02-28 AO Kaspersky Lab System and method for distributing processing of computer security tasks
RU2614561C1 (ru) * 2015-12-18 2017-03-28 Закрытое акционерное общество "Лаборатория Касперского" Система и способ определения похожих файлов
RU2644537C2 (ru) * 2016-07-05 2018-02-12 Общество с ограниченной ответственностью "Айдеко" Способ определения типа сетевого трафика для фильтрации и управления сетевыми соединениями
RU2645268C2 (ru) * 2013-10-04 2018-02-19 БИТДЕФЕНДЕР АйПиАр МЕНЕДЖМЕНТ ЛТД Сложное классифицирование для выявления вредоносных программ
RU2654151C1 (ru) * 2017-08-10 2018-05-16 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносных файлов с использованием обученной модели обнаружения вредоносных файлов
RU2673407C1 (ru) * 2017-10-18 2018-11-26 Акционерное общество "Лаборатория Касперского" Система и способ определения вредоносного файла
RU2679785C1 (ru) * 2017-10-18 2019-02-12 Акционерное общество "Лаборатория Касперского" Система и способ классификации объектов
RU2708356C1 (ru) * 2018-06-29 2019-12-05 Акционерное общество "Лаборатория Касперского" Система и способ двухэтапной классификации файлов

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9552478B2 (en) 2010-05-18 2017-01-24 AO Kaspersky Lab Team security for portable information devices
US8874579B2 (en) 2011-08-18 2014-10-28 Verisign, Inc. Systems and methods for identifying associations between malware samples
US9224067B1 (en) * 2012-01-23 2015-12-29 Hrl Laboratories, Llc System and methods for digital artifact genetic modeling and forensic analysis
US9519782B2 (en) 2012-02-24 2016-12-13 Fireeye, Inc. Detecting malicious network content
US9832211B2 (en) 2012-03-19 2017-11-28 Qualcomm, Incorporated Computing device to detect malware
CN103425928B (zh) * 2012-05-17 2017-11-24 富泰华工业(深圳)有限公司 电子装置的杀毒系统及方法
US20140040279A1 (en) * 2012-08-02 2014-02-06 International Business Machines Corporation Automated data exploration
US9419985B1 (en) * 2012-09-25 2016-08-16 Morta Security Inc Interrogating malware
US10069854B2 (en) * 2012-11-17 2018-09-04 The Trustees Of Columbia University In The City Of New York Methods, systems and media for evaluating layered computer security products
WO2014122662A1 (en) * 2013-02-10 2014-08-14 Cyber Active Security Ltd. Method and product for providing a predictive security product and evaluating existing security products
US10152591B2 (en) 2013-02-10 2018-12-11 Paypal, Inc. Protecting against malware variants using reconstructed code of malware
US9380066B2 (en) * 2013-03-29 2016-06-28 Intel Corporation Distributed traffic pattern analysis and entropy prediction for detecting malware in a network environment
US9734040B2 (en) 2013-05-21 2017-08-15 Microsoft Technology Licensing, Llc Animated highlights in a graph representing an application
EP3000041A4 (en) * 2013-05-21 2017-05-10 Concurix Corporation Graph for navigating application code
US8990777B2 (en) 2013-05-21 2015-03-24 Concurix Corporation Interactive graph for navigating and monitoring execution of application code
US9852290B1 (en) * 2013-07-12 2017-12-26 The Boeing Company Systems and methods of analyzing a software component
US9336025B2 (en) 2013-07-12 2016-05-10 The Boeing Company Systems and methods of analyzing a software component
US9396082B2 (en) 2013-07-12 2016-07-19 The Boeing Company Systems and methods of analyzing a software component
US9280369B1 (en) 2013-07-12 2016-03-08 The Boeing Company Systems and methods of analyzing a software component
US9280841B2 (en) 2013-07-24 2016-03-08 Microsoft Technology Licensing, Llc Event chain visualization of performance data
US9292415B2 (en) 2013-09-04 2016-03-22 Microsoft Technology Licensing, Llc Module specific tracing in a shared module environment
US9294501B2 (en) * 2013-09-30 2016-03-22 Fireeye, Inc. Fuzzy hash of behavioral results
US9479521B2 (en) 2013-09-30 2016-10-25 The Boeing Company Software network behavior analysis and identification system
EP3069267A4 (en) 2013-11-13 2017-09-27 Microsoft Technology Licensing, LLC Software component recommendation based on multiple trace runs
CN103679025B (zh) * 2013-11-26 2016-06-15 南京邮电大学 一种基于树突细胞算法的恶意代码检测方法
JP6084556B2 (ja) * 2013-12-02 2017-02-22 日本電信電話株式会社 バイト列抽出装置、バイト列抽出方法、および、バイト列抽出プログラム
US9769189B2 (en) * 2014-02-21 2017-09-19 Verisign, Inc. Systems and methods for behavior-based automated malware analysis and classification
US10242185B1 (en) 2014-03-21 2019-03-26 Fireeye, Inc. Dynamic guest image creation and rollback
CN103955645B (zh) * 2014-04-28 2017-03-08 百度在线网络技术(北京)有限公司 恶意进程行为的检测方法、装置及系统
CN104021346B (zh) * 2014-06-06 2017-02-22 东南大学 基于程序流程图的Android恶意软件检测方法
US9367685B2 (en) 2014-09-30 2016-06-14 Juniper Networks, Inc. Dynamically optimizing performance of a security appliance
US9479531B1 (en) * 2014-12-12 2016-10-25 Symantec Corporation Systems and methods for accelerating malware analyses in automated execution environments
US20160241560A1 (en) * 2015-02-13 2016-08-18 Instart Logic, Inc. Client-site dom api access control
US10708296B2 (en) 2015-03-16 2020-07-07 Threattrack Security, Inc. Malware detection based on training using automatic feature pruning with anomaly detection of execution graphs
US10599844B2 (en) * 2015-05-12 2020-03-24 Webroot, Inc. Automatic threat detection of executable files based on static data analysis
RU2614929C1 (ru) * 2015-09-30 2017-03-30 Акционерное общество "Лаборатория Касперского" Способ передачи антивирусных записей, используемых для обнаружения вредоносных файлов
US10148673B1 (en) * 2015-09-30 2018-12-04 EMC IP Holding Company LLC Automatic selection of malicious activity detection rules using crowd-sourcing techniques
US10193906B2 (en) * 2015-12-09 2019-01-29 Checkpoint Software Technologies Ltd. Method and system for detecting and remediating polymorphic attacks across an enterprise
US9800588B1 (en) * 2015-12-16 2017-10-24 Symantec Corporation Automated analysis pipeline determination in a malware analysis environment
US10839312B2 (en) 2016-08-09 2020-11-17 International Business Machines Corporation Warning filter based on machine learning
US10372909B2 (en) 2016-08-19 2019-08-06 Hewlett Packard Enterprise Development Lp Determining whether process is infected with malware
US10521590B2 (en) * 2016-09-01 2019-12-31 Microsoft Technology Licensing Llc Detection dictionary system supporting anomaly detection across multiple operating environments
RU2634171C1 (ru) * 2016-12-12 2017-10-24 Акционерное общество "Лаборатория Касперского" Способ выполнения кода интерпретатором
US10783246B2 (en) 2017-01-31 2020-09-22 Hewlett Packard Enterprise Development Lp Comparing structural information of a snapshot of system memory
US10089467B1 (en) * 2017-05-23 2018-10-02 Malwarebytes Inc. Static anomaly-based detection of malware files
EP3639544B1 (en) * 2017-06-16 2022-08-10 Motorola Mobility LLC Rogue unit detection information
US10909243B2 (en) * 2017-06-29 2021-02-02 AVAST Software s.r.o. Normalizing entry point instructions in executable program files
US10929534B2 (en) 2017-10-18 2021-02-23 AO Kaspersky Lab System and method detecting malicious files using machine learning
US10795998B2 (en) * 2018-03-02 2020-10-06 Cisco Technology, Inc. Dynamic routing of files to a malware analysis system
CN108418840A (zh) * 2018-05-18 2018-08-17 广西电网有限责任公司 基于人工智能的关键信息基础设施网络风险管控系统
US10776487B2 (en) * 2018-07-12 2020-09-15 Saudi Arabian Oil Company Systems and methods for detecting obfuscated malware in obfuscated just-in-time (JIT) compiled code
US10992703B2 (en) 2019-03-04 2021-04-27 Malwarebytes Inc. Facet whitelisting in anomaly detection
US11316873B2 (en) 2019-06-28 2022-04-26 Bank Of America Corporation Detecting malicious threats via autostart execution point analysis
CN110618930A (zh) * 2019-08-12 2019-12-27 上海戎磐网络科技有限公司 全球软件基因数据库系统、软件基因的处理方法及介质
US11550910B2 (en) 2019-09-30 2023-01-10 AVAST Software s.r.o. Creating generic rules in a high dimensional sparse feature space using negative feedback
CN111324892B (zh) * 2020-01-19 2023-09-19 上海戎磐网络科技有限公司 生成脚本文件的软件基因和脚本检测的方法、装置及介质
US11363057B1 (en) * 2020-04-17 2022-06-14 American Express Travel Related Services Company, Inc. Computer-based system for analyzing and quantifying cyber threat patterns and methods of use thereof
US11843618B1 (en) 2022-05-15 2023-12-12 Uab 360 It Optimized analysis for detecting harmful content

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2271613C1 (ru) * 2004-09-15 2006-03-10 Военный университет связи Способ защиты вычислительных сетей от несанкционированных воздействий
RU91202U1 (ru) * 2009-10-01 2010-01-27 ЗАО "Лаборатория Касперского" Система обнаружения неизвестных вредоносных программ
EP2228743A1 (en) * 2009-03-08 2010-09-15 Deutsche Telekom AG Method for detecting new malicious executables, based on discovering and monitoring characteristic system call sequences

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440742A (en) 1991-05-10 1995-08-08 Siemens Corporate Research, Inc. Two-neighborhood method for computing similarity between two groups of objects
US6357008B1 (en) * 1997-09-23 2002-03-12 Symantec Corporation Dynamic heuristic method for detecting computer viruses using decryption exploration and evaluation phases
US7093239B1 (en) 2000-07-14 2006-08-15 Internet Security Systems, Inc. Computer immune system and method for detecting unwanted code in a computer system
US7043757B2 (en) * 2001-05-22 2006-05-09 Mci, Llc System and method for malicious code detection
US7478431B1 (en) * 2002-08-02 2009-01-13 Symantec Corporation Heuristic detection of computer viruses
US7644441B2 (en) 2003-09-26 2010-01-05 Cigital, Inc. Methods for identifying malicious software
US7707634B2 (en) * 2004-01-30 2010-04-27 Microsoft Corporation System and method for detecting malware in executable scripts according to its functionality
US7913305B2 (en) 2004-01-30 2011-03-22 Microsoft Corporation System and method for detecting malware in an executable code module according to the code module's exhibited behavior
US8037535B2 (en) * 2004-08-13 2011-10-11 Georgetown University System and method for detecting malicious executable code
US20060149821A1 (en) * 2005-01-04 2006-07-06 International Business Machines Corporation Detecting spam email using multiple spam classifiers
US7860842B2 (en) * 2005-03-16 2010-12-28 Oracle International Corporation Mechanism to detect and analyze SQL injection threats
US20070094734A1 (en) 2005-09-29 2007-04-26 Mangione-Smith William H Malware mutation detector
US7917481B1 (en) * 2005-10-31 2011-03-29 Symantec Operating Corporation File-system-independent malicious content detection
US7809670B2 (en) 2005-12-09 2010-10-05 Microsoft Corporation Classification of malware using clustering that orders events in accordance with the time of occurance
US7624448B2 (en) * 2006-03-04 2009-11-24 21St Century Technologies, Inc. Intelligent intrusion detection system utilizing enhanced graph-matching of network activity with context data
US9171157B2 (en) 2006-03-28 2015-10-27 Blue Coat Systems, Inc. Method and system for tracking access to application data and preventing data exploitation by malicious programs
WO2007117567A2 (en) * 2006-04-06 2007-10-18 Smobile Systems Inc. Malware detection system and method for limited access mobile platforms
EP1870829B1 (en) * 2006-06-23 2014-12-03 Microsoft Corporation Securing software by enforcing data flow integrity
US20080047009A1 (en) * 2006-07-20 2008-02-21 Kevin Overcash System and method of securing networks against applications threats
US20100281248A1 (en) * 2007-02-16 2010-11-04 Lockhart Malcolm W Assessment and analysis of software security flaws
US8312546B2 (en) * 2007-04-23 2012-11-13 Mcafee, Inc. Systems, apparatus, and methods for detecting malware
US20090031001A1 (en) 2007-07-27 2009-01-29 Archer Charles J Repeating Direct Memory Access Data Transfer Operations for Compute Nodes in a Parallel Computer
DE102007038763A1 (de) * 2007-08-16 2009-02-19 Siemens Ag Verfahren und Vorrichtung zur Sicherung eines Programms gegen eine Kontrollflussmanipulation und gegen einen fehlerhaften Programmablauf
US8010614B1 (en) * 2007-11-01 2011-08-30 Bitdefender IPR Management Ltd. Systems and methods for generating signatures for electronic communication classification
US9237166B2 (en) * 2008-05-13 2016-01-12 Rpx Corporation Internet search engine preventing virus exchange
US7530106B1 (en) 2008-07-02 2009-05-05 Kaspersky Lab, Zao System and method for security rating of computer processes
US8181251B2 (en) * 2008-12-18 2012-05-15 Symantec Corporation Methods and systems for detecting malware
WO2010105184A2 (en) * 2009-03-13 2010-09-16 Breach Security , Inc. A method and apparatus for phishing and leeching vulnerability detection
US8863279B2 (en) * 2010-03-08 2014-10-14 Raytheon Company System and method for malware detection
US7925874B1 (en) 2010-05-18 2011-04-12 Kaspersky Lab Zao Adaptive configuration of conflicting applications
US20120102568A1 (en) * 2010-10-26 2012-04-26 Mcafee, Inc. System and method for malware alerting based on analysis of historical network and process activity

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2271613C1 (ru) * 2004-09-15 2006-03-10 Военный университет связи Способ защиты вычислительных сетей от несанкционированных воздействий
EP2228743A1 (en) * 2009-03-08 2010-09-15 Deutsche Telekom AG Method for detecting new malicious executables, based on discovering and monitoring characteristic system call sequences
RU91202U1 (ru) * 2009-10-01 2010-01-27 ЗАО "Лаборатория Касперского" Система обнаружения неизвестных вредоносных программ

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9582335B2 (en) 2011-11-24 2017-02-28 AO Kaspersky Lab System and method for distributing processing of computer security tasks
RU2538287C2 (ru) * 2013-02-06 2015-01-10 Закрытое акционерное общество "Крафтвэй корпорэйшн ПЛС" Способ проверки антивирусом компьютера в uefi на ранней стадии загрузки компьютера
US9262636B2 (en) 2013-04-24 2016-02-16 Nano Security Ltd. Method for neutralizing PC blocking malware using a separate device for an antimalware procedure activated by user
RU2527738C1 (ru) * 2013-04-24 2014-09-10 Общество с ограниченной ответственностью "НАНО Секьюрити" Способ обезвреживания вредоносных программ, блокирующих работу пк, с использованием отдельного устройства для активации пользователем процедуры противодействия вредоносному программному обеспечению
EA029778B1 (ru) * 2013-04-24 2018-05-31 Общество с ограниченной ответственностью "НАНО Секьюрити" Способ обезвреживания вредоносных программ, блокирующих работу пк, с использованием отдельного устройства для активации пользователем процедуры противодействия вредоносному программному обеспечению
RU2580036C2 (ru) * 2013-06-28 2016-04-10 Закрытое акционерное общество "Лаборатория Касперского" Система и способ создания гибкой свертки для обнаружения вредоносных программ
US8955120B2 (en) 2013-06-28 2015-02-10 Kaspersky Lab Zao Flexible fingerprint for detection of malware
RU2645268C2 (ru) * 2013-10-04 2018-02-19 БИТДЕФЕНДЕР АйПиАр МЕНЕДЖМЕНТ ЛТД Сложное классифицирование для выявления вредоносных программ
RU2614561C1 (ru) * 2015-12-18 2017-03-28 Закрытое акционерное общество "Лаборатория Касперского" Система и способ определения похожих файлов
RU168346U1 (ru) * 2016-06-23 2017-01-30 Закрытое Акционерное Общество "Научно-Производственное Объединение "Эшелон" Устройство выявления уязвимостей
RU2644537C2 (ru) * 2016-07-05 2018-02-12 Общество с ограниченной ответственностью "Айдеко" Способ определения типа сетевого трафика для фильтрации и управления сетевыми соединениями
RU2654151C1 (ru) * 2017-08-10 2018-05-16 Акционерное общество "Лаборатория Касперского" Система и способ обнаружения вредоносных файлов с использованием обученной модели обнаружения вредоносных файлов
RU2673407C1 (ru) * 2017-10-18 2018-11-26 Акционерное общество "Лаборатория Касперского" Система и способ определения вредоносного файла
RU2679785C1 (ru) * 2017-10-18 2019-02-12 Акционерное общество "Лаборатория Касперского" Система и способ классификации объектов
RU2708356C1 (ru) * 2018-06-29 2019-12-05 Акционерное общество "Лаборатория Касперского" Система и способ двухэтапной классификации файлов

Also Published As

Publication number Publication date
US8479296B2 (en) 2013-07-02
CN102592079B (zh) 2015-03-25
EP2472425A2 (en) 2012-07-04
EP2472425A3 (en) 2013-12-11
US20120174227A1 (en) 2012-07-05
CN102592079A (zh) 2012-07-18
EP2472425B1 (en) 2015-09-16

Similar Documents

Publication Publication Date Title
RU2454714C1 (ru) Система и способ повышения эффективности обнаружения неизвестных вредоносных объектов
CN109145600B (zh) 使用静态分析元素检测恶意文件的系统和方法
US9998484B1 (en) Classifying potentially malicious and benign software modules through similarity analysis
RU2680738C1 (ru) Каскадный классификатор для приложений компьютерной безопасности
Soh et al. Detecting clones in android applications through analyzing user interfaces
EP2955658B1 (en) System and methods for detecting harmful files of different formats
US7809670B2 (en) Classification of malware using clustering that orders events in accordance with the time of occurance
Zhao et al. Malicious executables classification based on behavioral factor analysis
Mehtab et al. AdDroid: rule-based machine learning framework for android malware analysis
US9239922B1 (en) Document exploit detection using baseline comparison
CN107403093B (zh) 检测多余软件的系统和方法
RU2706883C1 (ru) Система и способ снижения количества ложных срабатываний классифицирующих алгоритмов
Savenko et al. Dynamic Signature-based Malware Detection Technique Based on API Call Tracing.
US20190294792A1 (en) Lightweight malware inference architecture
CN111222137A (zh) 一种程序分类模型训练方法、程序分类方法及装置
US20220217160A1 (en) Web threat investigation using advanced web crawling
US11397812B2 (en) System and method for categorization of .NET applications
CN108229168B (zh) 一种嵌套类文件的启发式检测方法、系统及存储介质
Alshamrani Design and analysis of machine learning based technique for malware identification and classification of portable document format files
US11836251B2 (en) Malware detection using a machine learning model
JP2020181567A (ja) アクセス権に基づいてコンピューティングデバイス上でタスクを実行するシステムおよび方法
RU2587424C1 (ru) Способ контроля приложений
RU2583712C2 (ru) Система и способ обнаружения вредоносных файлов определенного типа
US20220237289A1 (en) Automated malware classification with human-readable explanations
CN112580038A (zh) 反病毒数据的处理方法、装置及设备