RU2747514C2 - Система и способ категоризации приложения на вычислительном устройстве - Google Patents
Система и способ категоризации приложения на вычислительном устройстве Download PDFInfo
- Publication number
- RU2747514C2 RU2747514C2 RU2019120230A RU2019120230A RU2747514C2 RU 2747514 C2 RU2747514 C2 RU 2747514C2 RU 2019120230 A RU2019120230 A RU 2019120230A RU 2019120230 A RU2019120230 A RU 2019120230A RU 2747514 C2 RU2747514 C2 RU 2747514C2
- Authority
- RU
- Russia
- Prior art keywords
- application
- classification
- category
- results
- security
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/567—Computer malware detection or handling, e.g. anti-virus arrangements using dedicated hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/568—Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
- H04W12/128—Anti-malware arrangements, e.g. protection against SMS fraud or mobile malware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Virology (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Изобретение относится к области вычислительной техники для обнаружения вредоносных приложений на вычислительных устройствах с использованием удаленного сервера. Технический результат заключается в снижении количества ошибок первого и второго рода при определении категории приложения. Технический результат достигается за счет способа категоризации приложения на вычислительном устройстве, согласно которому: собирают при помощи средства защиты, функционирующего на вычислительном устройстве, набор признаков приложения, присутствующего на вычислительном устройстве, для последующей передачи серверу безопасности; классифицируют приложение при помощи сервиса классификации, функционирующего на сервере безопасности, на основании собранного набора признаков, где результат классификации получают с помощью заранее обученной классифицирующей экспертной системы в виде вероятности принадлежности приложения к категориям приложений; определяют актуальность результатов классификации при помощи репутационного сервиса, предоставляющего результаты классификации ранее классифицированных приложений, и правил актуальности на основании результатов классификации; определяют категорию приложения при помощи средства защиты с использованием эвристических правил для определения категории приложения на основании актуальных результатов классификации. 5 з.п. ф-лы, 4 ил.
Description
Область техники
Изобретение относится к области обнаружения вредоносных приложений на вычислительных устройствах с использованием удаленного сервера.
Уровень техники
Широкое распространение вычислительных, в том числе и мобильных, устройств открывает для злоумышленников большие возможности для проведения кибер-атак, например, с использованием вредоносного программного обеспечения. Путем получения неправомерного доступа к вычислительным устройствам пользователя злоумышленники могут получить доступ к конфиденциальным данным пользователя, к перепискам, могут осуществлять действия от имени пользователей, в том числе и проводить денежные операции. Для защиты пользователей устройств часто применяется специализированное программное обеспечение (ПО) - антивирусное ПО.
Современное антивирусное ПО зачастую работает в паре с удаленной инфраструктурой, в рамках которой функционируют всевозможные сервисы, в частности предоставляющие данные, например, относительно принадлежности приложения к некоторой категории по запросу от антивирусного ПО. Такие сервисы позволяют снизить нагрузку вычислительное устройство пользователя, забирая на себя трудоемкие вычислительные задачи, например распознавание образов или классификацию объектов (файлов, приложений и т.п.) по ряду признаков.
Однако даже вышеупомянутый подход обладает недостатками. Большое число антивирусных приложений, подключенных к удаленному серверу создает также большую нагрузку на сервисы удаленной инфраструктуры. При этом множество запросов от антивирусных приложений, установленных на разные устройства, являются идентичными - например являются запросами на получение информации о категории одного и того же приложения или файла. Для того, чтобы каждый раз не запускать идентичные задачи на удаленной инфраструктуре, используются кеширующие сервисы, которые запоминают результаты выполнения этих задач сервисами.
Например в публикации US 9438631 В2 описан подход к использованию кеша приложений, в котором содержатся вердикты - результаты анализа антивирусным ПО - ранее проанализированных приложений. Такой подход призван снизить нагрузку на устройство при анализе приложений вне этого устройства (англ. off-device), на котором это приложение присутствует.
В публикации US 20170012912 A1 также описана возможность кеширования вердиктов анализа сообщений электронной почты, что снижает число обращений к классифицирующим сервисам, которые выносят некоторый вердикт в рамках анализа сообщений электронной почты.
Хотя существующие подходы и решают некоторые задачи, связанные со снижением нагрузки на вычислительные устройства, выполняющие сложные вычислительные задачи, они обладают недостатками, связанными с появлениями ошибок первого и второго рода при выполнении задач по запросу от антивирусного ПО. Настоящее изобретение призвано устранить эти недостатки.
Раскрытие изобретения
Настоящее изобретение предназначено для категоризации приложения на вычислительном устройстве.
Технический результат настоящего изобретения заключается в реализации заявленного назначения.
Еще один технический результат настоящего изобретения заключается в снижении количества ошибок первого и второго рода при определении категории приложения.
Способ категоризации приложения на вычислительном устройстве, согласно которому: собирают при помощи средства защиты, функционирующего на вычислительном устройстве, набор признаков приложения, присутствующего на вычислительном устройстве, для последующей передачи серверу безопасности; классифицируют приложение при помощи сервиса классификации, функционирующего на сервере безопасности, на основании собранного набора признаков; при этом результатом классификации является вероятность принадлежности приложения к категориям приложений; определяют категорию приложения при помощи средства защиты с использованием собранных признаков приложения, а также полученных от сервера безопасности результатов классификации.
В другом варианте реализации способа набор признаков включает в себя по меньшей мере: количество фалов в пакете приложения; количество исполняемых файлов в пакете приложения; количество и типы запрашиваемых разрешений; количество классов в исполняемых файлах; количество методов в исполняемых файлах.
В другом варианте реализации способа пакетом приложения является apk-архив приложения.
В другом варианте реализации способа исполняемым файлом является dex-файл.
В другом варианте реализации способа вычислительным устройством является мобильное вычислительное устройство.
В другом варианте реализации способа категориями приложений являются: категория доверенных приложений; категория вредоносных приложений; категория нежелательных приложений.
В другом варианте реализации способа категорию приложения определяют при помощи собранных признаков, которые не использовались для классификации сервисом безопасности.
Система категоризации приложения на вычислительном устройстве, которая состоит из: средства защиты, функционирующего на вычислительном устройстве, и которое предназначено для сбора набора признаков приложения, присутствующего на вычислительном устройстве, для последующей передачи серверу безопасности; а также для определения категории приложения с использованием собранных признаков приложения, а также полученных от сервера безопасности результатов классификации; сервиса классификации, функционирующего на сервере безопасности, и который предназначен для классификации приложения на основании собранного набора признаков; при этом результатом классификации является вероятность принадлежности приложения к категориям приложений.
В другом варианте реализации системы набор признаков включает в себя по меньшей мере: количество фалов в пакете приложения; количество исполняемых файлов в пакете приложения; количество и типы запрашиваемых разрешений; количество классов в исполняемых файлах; количество методов в исполняемых файлах.
В другом варианте реализации системы пакетом приложения является apk-архив приложения.
В другом варианте реализации системы исполняемым файлом является dex-файл.
В другом варианте реализации системы вычислительным устройством является мобильное вычислительное устройство.
В другом варианте реализации системы категориями приложений являются: категория доверенных приложений; категория вредоносных приложений; категория нежелательных приложений.
В другом варианте реализации системы категорию приложения определяют при помощи собранных признаков, которые не использовались для классификации сервисом безопасности.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
Фиг. 1 иллюстрирует примерный вариант компонентов системы, реализующей настоящее изобретение.
Фиг. 2 показывает вариант реализации способа настоящего изобретения.
Фиг. 3 показывает альтернативный вариант реализации способа настоящего изобретения.
Фиг. 4 показывает пример компьютерной системы общего назначения.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Сущность, приведенная в описании, является не чем иным, как конкретными деталями, необходимыми для помощи специалисту в области техники в исчерпывающем понимании изобретения, и настоящее изобретение определяется в объеме приложенной формулы.
Введем ряд определений и понятий, которые будут использоваться при описании вариантов осуществления изобретения.
Вредоносное приложение - приложение, способное нанести вред компьютеру или данным пользователя компьютера (иными словами, компьютерной системы), например: сетевой червь, клавиатурный шпион, компьютерный вирус. В качестве нанесенного вреда может выступать неправомерный доступ к ресурсам компьютера, в том числе к данным, хранящимся на компьютере, с целью хищения, а также неправомерное использование ресурсов, в том числе для хранения данных, проведения вычислений и т.п.
Доверенное приложение - приложение, которое не наносит вреда компьютеру или его пользователю. Доверенным приложением может считаться приложение, разработанное доверенным производителем ПО (программного обеспечения), загруженное из доверенного источника (например, сайт, занесенный в базу данных доверенных сайтов) или приложение, идентификатор (или другие данные, по которым можно однозначно определить приложение) которого (например, хеш-сумма файла приложения) хранится в базе данных доверенных приложений. Идентификатор производителя, например, цифровой сертификат, может также храниться в базе данных доверенных приложений.
Нежелательное приложение - приложение, которое не является ни вредоносным, ни доверенным. При этом такое приложение способно осуществлять неправомерный доступ к ресурсам компьютера, в том числе к данным, хранящимся на компьютере, однако компрометация таких данных не наносит непосредственного вреда ни компьютеру, ни пользователю компьютера. Примером нежелательного приложения может являться рекламное ПО, которое способно собирать данные с устройства пользователя и/или отображать рекламные материалы пользователю устройства.
Недоверенное приложение - приложение, которое не является ни доверенным, ни нежелательным, но также и не признано вредоносным, например, при помощи антивирусного приложения. При этом недоверенное приложение может впоследствии быть признано вредоносным, например, при помощи антивирусной проверки.
Вредоносный файл - файл, являющийся компонентом вредоносного приложения и содержащий программный код (исполняемый или интерпретируемый код).
Недоверенный файл - файл, являющийся компонентом недоверенного приложения и содержащий программный код (исполняемый или интерпретируемый код).
Доверенный файл - файл, являющийся компонентом доверенного приложения.
Нежелательный файл - файл, являющийся компонентов нежелательного приложения и содержащий программный код (исполняемый или интерпретируемый код).
Категория приложения - характеристика приложения, определяющая принадлежность приложения к категории доверенных приложений (приложение является доверенным), к категории вредоносных приложений (приложение является вредоносным) или к категории нежелательных приложений (приложение является нежелательным).
Правило актуальности - правило, которое содержит требования к результатам классификации, при этом удовлетворение этих требований снижает вероятность (а, следовательно, и количество) ошибок первого и второго рода упомянутых результатов классификации. При этом вероятность оценивается численным значением.
Результат классификации (приложения) - вероятность принадлежности приложения к категориям приложений.
Фиг. 1 отображает вариант системы, реализующей настоящее изобретение. Система содержит:
• средство защиты 120, которое расположено на вычислительном устройстве пользователя, частным примером которого является мобильное вычислительное устройство 110, далее, не нарушая общности признака «вычислительное устройство», вместо этого понятия будем использовать «мобильное вычислительное устройство»;
• сервис классификации 160, функционирующий на сервере безопасности 150.
В одном из вариантов реализации изобретения на сервере безопасности 150 также функционирует репутационный сервис 170, связанный с базой данных вердиктов 180. Стоит отметить, что сервер безопасности 150 может быть реализован как в виде одного вычислительного устройства, так и в виде нескольких, связанных между собой, например, посредством сети передачи данных вычислительных устройств, каждое из которых может быть как физическим, так и виртуальным вычислительным устройством.
В еще одном варианте реализации на мобильном вычислительном устройстве 110 также присутствует база данных антивирусных записей, связанная со средством защиты 120. Антивирусная запись - формализованный набор данных, используемый антивирусным программным обеспечением (или же аналогичными средствами, например средством защиты 120) для определения категории приложения, в частности для обнаружения вредоносного приложения.
На устройстве 110 присутствует приложение 130. В одном из вариантов реализации приложение 130 может быть загружено из сети Интернет при помощи сети передачи данных, например из магазина приложений (Арр Store, Google Play и т.п.). В другом варианте реализации приложение 130 может попасть на устройство 110 иными способами, например при помощи съемного носителя или Bluetooth соединения.
Для обеспечения безопасности устройства 110 на нем присутствует средство защиты 120, частными примером такого средства может являться антивирусное программное обеспечение (ПО).
Средство защиты 120 способно собирать признаки приложения 130, присутствующего на мобильном вычислительном устройстве 110. Набор признаков, которые средство защиты 120 может собирать для приложения 130, может включать в себя:
• количество фалов в пакете приложения;
• количество исполняемых файлов в пакете приложения;
• количество и типы запрашиваемых разрешений;
• количество классов в исполняемых файлах;
• количество методов в исполняемых файлах.
При этом пакетом приложения 130 может быть apk-архив (предназначенный для работы приложения на мобильном вычислительном устройстве под управлением операционной системы Android), zip-архив или любой другой контейнер для файлов приложения 130. В одном из вариантов реализации изобретения исполняемым файлом является dex-файл, предназначенный для исполнения на устройствах под управлением операционной системы Android. В другом варианте реализации исполняемым файлом является любой другой файл, содержащий инструкции для исполнения (в том числе и при помощи интерпретаторов) вычислительным устройством.
Запрашиваемое разрешение (англ. permission) - указание на возможность приложения 130 производить некоторые действия на устройстве 110, для использования которой необходимо явное согласие пользователя устройства 110. Примеры запрашиваемых разрешений могут быть разных типов: доступ к сети передачи данных, доступ к цифровой камере, доступ к микрофону и т.п. Запрашиваемые приложением 130 разрешения могут быть описаны в файле, входящем в состав пакета приложения 130.
Информация о классах и методах, используемых исполняемым кодом приложения 130, может быть формализована в виде признака приложения 130 любым из известных из уровня техники способом, например в виде древовидного списка:
• Класс 1
• Класс 2
Собранный набор признаков приложения 130 средство защиты 120 может передавать серверу безопасности 150, а именно сервису классификации 160, который расположен на сервере безопасности 150.
Сервис классификации 160 предназначен для классификации приложений, в частности приложения 130, на основании набора признаков приложений. Результатом классификации приложения 130 является вероятность принадлежности приложения 130 к категориям приложений. Пример результата классификации приложения 130 может выглядеть следующим образом: 80% - вредоносное приложение, 85% - нежелательное приложение, 60% - доверенное приложение.
Для получения вышеописанных результатов классификации сервис классификации 160 использует заранее обученные классифицирующие экспертные системы, которые могут быть построены на базе:
• нейронных сетей;
• решающих деревьев или лесов;
• байесовского классификатора;
• и/или любых других известных из уровня техники способов.
Для обучения сервиса классификации 160 может быть использован набор размеченных приложений (принадлежность которых к категориям приложений считается известной), а также средство защиты (дополнительное), функционирующее на сервере безопасности 150. Формирование набора размеченных приложений может быть осуществлено специалистом в области информационных технологий или любой известной из уровня техники экспертной системой и выходит за рамки настоящего изобретения.
Полученные сервисом классификации 160 результаты классификации приложения 130 передаются сервером безопасности 150 мобильному вычислительному устройству, а именно средству защиты 120.
Средство защиты 120 способно, используя результаты классификации приложения 130, получаемые от сервиса классификации 160, определять категорию приложения 130. Для этого в одном из вариантов реализации изобретения используются эвристические правила, которые хранятся в базе данных антивирусных записей 140. В одном из вариантов реализации изобретения эвристические правила предписывают определение категории приложения 130 на основании результатов классификации приложения 130. Пример эвристического правила может выглядеть следующим образом:
«Если для приложения вероятность принадлежности:
• к категории вредоносных приложений более 30%;
• к категории доверенных приложений менее 20%;
то приложение признается вредоносным».
В еще одном варианте реализации средство защиты 120 использует эвристические правила, хранящиеся в базе 140, которые применяются не только к результатам классификации приложения 130, но и к набору дополнительных признаков приложения 130, которые способно собирать средство защиты 120. В одном из вариантов реализации признаками из набора дополнительных признаков приложения 130 («дополнительные признаки») являются те же самые признаки, которые использовались для классификации приложения 130. В другом варианте реализации признаками из набора дополнительных признаков являются признаки, отличающиеся от тех, которые используются сервисом классификации 160.
Примером признаков из набора дополнительных признаков могут являться:
• размер исполняемого файла из пакета приложения;
• последовательности инструкций исполняемого файла из пакета приложения.
Используя эвристические правила из базы данных 140, результаты классификации и, в одном из вариантов реализации изобретения, набор дополнительных признаков средство защиты 120 осуществляет определение категории приложения 130. Примером такого эвристического правила может быть «если вероятность принадлежности приложения к категории вредоносных больше 30%, при этом в пакете приложения есть исполняемый файл размером 100 кБ, в коде которого есть последовательность из трех операций XOR, то приложение признается вредоносным».
В одном из вариантов реализации изобретения кроме вышеописанных возможностей средство защиты 120 также способно осуществлять запрос к серверу безопасности 150 с целью получения результатов классификации приложения 130 без отправки серверу 150 набора признаков приложения 130. В этом случае запрос адресуется серверу 150, а именно репутационному сервису 170, который функционирует в рамках сервера безопасности 150, при этом сам запрос может содержать идентификатор приложения 130, например его название, контрольную сумму пакета приложения или любой другой идентификатор, уникально характеризующий приложение 130.
Чтобы предоставить средству защиты 120 результаты классификации приложения 130 без набора признаков приложения 130, репутационный сервис 170 использует хранящиеся результаты классификации ранее классифицированных приложений, проведенной сервисом классификации 160 на основании собранных средством защиты 120 наборов признаков ранее классифицированных приложений. В одном из вариантов реализации для хранения этих данных сервис 170 использует базу данных вердиктов 180. При этом результаты классификации приложения могут также содержать и обстоятельства получения результатов классификации:
• временная метка классификации,
• идентификатор классифицируемого приложения,
• тип использованной классифицирующей экспертной системы,
• оценка погрешности использованной классифицирующей экспертной системы,
• версия механизма сбора признаков, используемого средством защиты (1.0, 1.1, 2.0, 3.0 и т.п.),
• версия механизма классифицирующей экспертной системы (1.0, 1.1,2.0, 3.0 и т.п.).
К ранее полученным результатам классификации приложений относятся результаты классификаций, проведенных сервисом классификации 160 по запросу от средства защиты 120, функционирующего на мобильном вычислительном устройстве 110, а также от аналогичных средств защиты, которые могут быть расположены как на вычислительных устройствах одного и более пользователей, так и на сервере безопасности 150. Такими ранее классифицированными приложениями могут являться приложения, относительно которых средства защиты (как расположенные на устройствах 110, так и на сервере 150) собирали наборы признаков и передавали сервису классификации 160 для получения результатов классификации. В одном из вариантов реализации изобретения такими приложениями являются приложения из вышеописанного набора размеченных приложений.
Каждый раз, когда сервис классификации 160 формирует результаты классификации некоторого приложения (в том числе и приложения 130), сервис 160 может передать эти результаты, в том числе и обстоятельства получения результатов классификации, репутационному сервису 170, который, в свою очередь может сохранить полученную информацию, в частности, в базу данных вердиктов 180.
Результаты классификации приложения 130, предоставленные репутационным сервисом 170, в том числе и обстоятельства получения результатов классификации, передаются средству защиты для определения актуальности результатов классификации (актуальность в качестве свойства информации). В одном из вариантов реализации изобретения таким средством защиты является средство защиты 120, расположенное на мобильном вычислительном устройстве 110. В другом варианте реализации этим средством защиты является средство защиты, расположенное на сервере безопасности 150. Таким образом, проверка актуальности результатов классификации приложения 130 может производиться как на устройстве 110, так и на сервере безопасности 150.
Для проверки актуальности средство защиты 120 (как и любое другое средства защиты) использует правила актуальности. Эти правила актуальности, которые могут храниться в базе данных антивирусных записей 140, содержат требования и применяются к результатам классификации приложения 130. Если результаты классификации приложения 130 удовлетворяют правилам актуальности, а именно требованиям правил актуальности, то результаты классификации признаются средством защиты 120 актуальными.
Пример требований правила актуальности может выглядеть следующим образом:
• разница между временной меткой классификации и текущей временной меткой находится в заданном диапазоне допустимых значений;
• оценка погрешности использованной классифицирующей экспертной системы не более 0.5%;
• версия механизма классифицирующей экспертной системы, использованной для получения результатов классификации, не ниже версии механизма классифицирующей экспертной системы, используемого в сервисе классификации;
• версия механизма сбора признаков, используемого средством защиты для получения результатов классификации, не ниже версии механизма сбора признаков, используемого в сервисе классификации.
В одном из вариантов реализации для признания результатов классификации приложения 130 актуальными необходимо, чтобы результаты классификации удовлетворяли хотя бы одному правилу актуальности. В еще одном варианте реализации изобретения для признания результатов классификации приложения 130 актуальными необходимо, чтобы результаты классификации удовлетворяли всем правилам актуальности, хранящимся в базе антивирусных записей 140.
В случае, если средство защиты 120 не признает результаты классификации приложения 130 актуальными, средство защиты 120 в соответствии с вышеописанными возможностями собирает набор признаков приложения 130 для отправки сервису классификации 160 и последующего получения результатов классификации приложения 130 (например, в синхронном режиме). Полученные таким образом результаты классификации средство защиты 120 считает актуальными (без проверки актуальности при помощи правил актуальности).
Актуальные результаты классификации приложения 130 могут быть использованы средством защиты 120 для определения категории приложения 130. В одном из вариантов реализации изобретения используется вышеописанная схема с эвристическими правилами из базы антивирусных записей 140. В еще одном варианте реализации может быть использован более простой подход: категорией приложения 130 определяется категория с наибольшей вероятностью принадлежности приложения 130 из результатов классификации.
Признанные средством защиты 120 вредоносными приложения могут быть удалены средством защиты 120 или помещены в карантин. Признанные нежелательными приложения также могут быть удалены средством защиты 120, или же средство защиты 120 может просто уведомить пользователя мобильного вычислительного устройства 110 о присутствии на устройстве 110 нежелательного приложения и предложить пользователю выбор - удалять или не удалять нежелательное приложение. В другом варианте реализации средство защиты может отозвать разрешения, предоставленные приложению 130, с целью защиты устройства 110 от действий приложения 130.
Стоит отметить, что содержимое базы антивирусных записей 140 и базы данных вердиктов 180 может быть изменено специалистом в области информационных технологий. При этом содержимое базы 140 может также быть изменено удаленно командой, полученной от сервера безопасности 150.
Фиг. 2 иллюстрирует вариант реализации способа настоящего изобретения.
На этапе 201 при помощи средства защиты 120, функционирующего на мобильном вычислительном устройстве 110 пользователя, собирают набор признаков приложения 130, присутствующего на устройстве 110. Полученный набор признаков средство защиты 120 передает на этапе 202 серверу безопасности 150, а более конкретно сервису классификации 160, расположенному на сервере 150. На этапе 203 сервис классификации осуществляет классификацию приложения 130 на основании собранного средством защиты 120 набора признаков. При этом результатом классификации является вероятность принадлежности приложения 130 к категориям приложений: доверенным, вредоносным и нежелательным. Полученные результаты классификации передаются сервисом классификации 160 средству защиты 120, расположенному на устройстве 110. Полученные результаты классификации приложения 130 используются средством защиты 120 на этапе 204 для определения категории приложения 130. При этом при определении категории приложения средством защиты 120 могут использоваться не только результаты классификации, но и признаки приложения 130, в частности входящие в собранный набор признаков или же в набор дополнительных признаков, то есть признаков, не использованных для классификации приложения 130, или признаки из обоих наборов признаков.
Вышеописанный способ определения категории приложения 130 обладает преимуществом по сравнению с традиционными системами классификации и категоризации приложений, так как результаты классификации приложения 130 уточняются на основании признаков приложения, в частности при помощи эвристических правил, расположенных локально на устройстве 110. Следовательно, достигается технический результат, заключающийся в снижении количества ошибок первого и второго рода (ложные срабатывания и пропуски) при определении категории приложения 130.
При этом возможность использования локальных эвристических правил, влияющих на определение категории приложения 130 также позволяет быстро исправлять ошибки первого и второго рода, так как для этого не требуется переобучение классифицирующей экспертной системы (длительное и сложное) сервиса классификации 160, а только лишь обновление локальных эвристических правил. Стоит отметить, что для достижения упомянутого технического результата средство защиты 120 может отправлять серверу безопасности 150 любую информацию относительно приложения 130 и категории, к которой приложение было отнесено средством 120, необходимую для обнаружения ошибки первого или второго рода любым из известных из уровня техники способов. После обнаружения ошибки первого или второго рода сервер безопасности 150 (например, при помощи средства защиты, функционирующего в рамках сервера 150) способен предоставить средству защит 120 изменения эвристических правил (изменение некоторого правила или указание на удаление этого правила), сконфигурированные таким образом, чтобы исключить ошибочное определение категории приложения 130 при использовании измененных локальных эвристических правил из базы 140. Таким образом и достигается увеличение скорости исправления ошибок первого и второго рода при использовании классифицирующей экспертной системы для определения категории приложения.
Фиг. 3 показывает альтернативный вариант реализации способа настоящего изобретения.
На этапе 300 средство защиты 120 осуществляет запрос к серверу безопасности 150, в частности репутационному сервису 170, для получения результатов классификации приложения 130. При этом репутационный сервис 170 хранит результаты классификации ранее классифицированных приложений, проведенной сервисом классификации 160 на основании собранных средством защиты наборов признаков ранее классифицированных приложений Полученные результаты классификации приложения 130 проверяются на предмет актуальности средством защиты 120 при помощи правил актуальности. Если средство защиты 120 не признает результаты классификации актуальными, то работа способа может завершиться. В еще одном варианте реализации, если средство защиты 120 не признает результаты классификации актуальными, средство 120 на этапе 301 выполняет этапы, описанные в отношении способа на Фиг. 2, в результате которых средство защиты 120 собирает и отправляет серверу безопасности 150 набор признаков приложения 130, после чего получает обновленные результаты классификации приложения 130. Которые на этапе 302 признаются актуальными.
Результаты классификации приложения 130, удовлетворяющие правилам актуальности, также признаются средством защиты 120 актуальными. После чего, на этапе 303, признанные актуальными результаты классификации используются средством защиты 120 для определения категории приложения 130.
Вышеописанный способ обладает преимуществом по сравнению с сервисами классификации, осуществляющими классификацию каждый раз, когда необходимо получить результаты классификации некоторого приложения, что позволяет снизить нагрузку на сервис классификации 160, а, следовательно, и на сервер безопасности 150, предоставляющий результаты классификации. При этом проверка актуальности результатов ранее проведенных классификаций, предоставляемых репутационным сервисом 170, позволяет достичь технического результата, заключающегося в снижении ошибок первого и второго рода при классификации приложения 130, а, следовательно, и при определении категории приложения 130, так как «устаревшие», ошибочные и неактуальные результаты классификации не будут использоваться для определения категории приложения 130.
Фиг. 4 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканнер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 4. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.
Claims (27)
1. Способ категоризации приложения на вычислительном устройстве, согласно которому:
a. собирают при помощи средства защиты, функционирующего на вычислительном устройстве, набор признаков приложения, присутствующего на вычислительном устройстве, для последующей передачи серверу безопасности;
b. классифицируют приложение при помощи сервиса классификации, функционирующего на сервере безопасности, на основании собранного набора признаков, где результат классификации получают с помощью заранее обученной классифицирующей экспертной системы в виде вероятности принадлежности приложения к категориям приложений;
c. определяют актуальность результатов классификации при помощи репутационного сервиса, предоставляющего результаты классификации ранее классифицированных приложений, и правил актуальности на основании результатов классификации;
d. определяют категорию приложения при помощи средства защиты с использованием эвристических правил для определения категории приложения на основании актуальных результатов классификации.
2. Способ по п. 1, в котором заранее обученная классифицирующая экспертная система построена на основании по крайней мере одного из:
- нейронных сетей;
- решающих деревьев или лесов;
- байесовского классификатора.
3. Способ по п. 1, в котором набор признаков включает в себя по меньшей мере одно из:
- количество фалов в пакете приложения;
- количество исполняемых файлов в пакете приложения;
- количество и типы запрашиваемых разрешений;
- количество классов в исполняемых файлах;
- количество методов в исполняемых файлах.
4. Способ по п. 1, в котором правило актуальности содержит требования к результатам классификации приложения, при этом удовлетворение этих требований снижает вероятность ошибок первого и второго рода упомянутых результатов классификации, при этом вероятность оценивается численным значением, где под требованиями понимают по меньшей мере одно из:
- разница между временной меткой классификации и текущей временной меткой находится в заданном диапазоне допустимых значений;
- оценка погрешности, использованной классифицирующей экспертной системы не более 0.5%;
- версия механизма классифицирующей экспертной системы, использованной для получения результатов классификации, не ниже версии механизма классифицирующей экспертной системы, используемого в сервисе классификации;
- версия механизма сбора признаков, используемого средством защиты для получения результатов классификации, не ниже версии механизма сбора признаков, используемого в сервисе классификации.
5. Способ по п. 1, в котором категориями приложений являются:
- категория доверенных приложений;
- категория вредоносных приложений;
- категория нежелательных приложений.
6. Способ по п. 1, в котором категорию приложения определяют при помощи собранных признаков, которые не использовались для классификации сервисом безопасности, где под упомянутым признаком понимают по меньшей мере одно из:
- размер исполняемого файла из пакета приложения;
- последовательности инструкций исполняемого файла из пакета приложения.
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019120230A RU2747514C2 (ru) | 2019-06-28 | 2019-06-28 | Система и способ категоризации приложения на вычислительном устройстве |
US16/654,434 US11295016B2 (en) | 2019-06-28 | 2019-10-16 | System and method of categorization of an application on a computing device |
CN202010222091.9A CN112149122A (zh) | 2019-06-28 | 2020-03-26 | 对计算设备上的应用进行分类的系统和方法 |
EP20176703.5A EP3757827A1 (en) | 2019-06-28 | 2020-05-27 | System and method of categorization of an application on a computing device |
US17/680,605 US11709938B2 (en) | 2019-06-28 | 2022-02-25 | System and method of categorization of an application on a computing device using a classifier |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019120230A RU2747514C2 (ru) | 2019-06-28 | 2019-06-28 | Система и способ категоризации приложения на вычислительном устройстве |
Publications (3)
Publication Number | Publication Date |
---|---|
RU2019120230A3 RU2019120230A3 (ru) | 2020-12-28 |
RU2019120230A RU2019120230A (ru) | 2020-12-28 |
RU2747514C2 true RU2747514C2 (ru) | 2021-05-06 |
Family
ID=74043271
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2019120230A RU2747514C2 (ru) | 2019-06-28 | 2019-06-28 | Система и способ категоризации приложения на вычислительном устройстве |
Country Status (2)
Country | Link |
---|---|
US (1) | US11295016B2 (ru) |
RU (1) | RU2747514C2 (ru) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112149122A (zh) * | 2019-06-28 | 2020-12-29 | 卡巴斯基实验室股份制公司 | 对计算设备上的应用进行分类的系统和方法 |
CN113076452A (zh) * | 2021-03-08 | 2021-07-06 | 北京梧桐车联科技有限责任公司 | 应用分类的方法、装置、设备及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070199050A1 (en) * | 2006-02-14 | 2007-08-23 | Microsoft Corporation | Web application security frame |
US20110145178A1 (en) * | 2006-07-12 | 2011-06-16 | Kofax, Inc. | Data classification using machine learning techniques |
US20130205366A1 (en) * | 2012-02-02 | 2013-08-08 | Seven Networks, Inc. | Dynamic categorization of applications for network access in a mobile network |
US20140259093A1 (en) * | 2013-03-06 | 2014-09-11 | Netskope, Inc. | Security for network delivered services |
RU2587424C1 (ru) * | 2015-02-20 | 2016-06-20 | Закрытое акционерное общество "Лаборатория Касперского" | Способ контроля приложений |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7831412B1 (en) * | 2008-03-31 | 2010-11-09 | Symantec Corporation | Systems and methods for providing guidance by category on the potential impact of an application on the health of a computing system |
US9043919B2 (en) * | 2008-10-21 | 2015-05-26 | Lookout, Inc. | Crawling multiple markets and correlating |
US8875286B2 (en) * | 2010-12-01 | 2014-10-28 | Cisco Technology, Inc. | Method and apparatus for detecting malicious software using machine learning techniques |
US9442881B1 (en) | 2011-08-31 | 2016-09-13 | Yahoo! Inc. | Anti-spam transient entity classification |
US8918881B2 (en) | 2012-02-24 | 2014-12-23 | Appthority, Inc. | Off-device anti-malware protection for mobile devices |
US9684787B2 (en) * | 2014-04-08 | 2017-06-20 | Qualcomm Incorporated | Method and system for inferring application states by performing behavioral analysis operations in a mobile device |
US9721212B2 (en) * | 2014-06-04 | 2017-08-01 | Qualcomm Incorporated | Efficient on-device binary analysis for auto-generated behavioral models |
US11119654B2 (en) * | 2018-07-10 | 2021-09-14 | International Business Machines Corporation | Determining an optimal storage environment for data sets and for migrating data sets |
US11138475B2 (en) * | 2019-03-01 | 2021-10-05 | Jpmorgan Chase Bank, N.A. | Systems and methods for data protection |
-
2019
- 2019-06-28 RU RU2019120230A patent/RU2747514C2/ru active
- 2019-10-16 US US16/654,434 patent/US11295016B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070199050A1 (en) * | 2006-02-14 | 2007-08-23 | Microsoft Corporation | Web application security frame |
US20110145178A1 (en) * | 2006-07-12 | 2011-06-16 | Kofax, Inc. | Data classification using machine learning techniques |
US20130205366A1 (en) * | 2012-02-02 | 2013-08-08 | Seven Networks, Inc. | Dynamic categorization of applications for network access in a mobile network |
US20140259093A1 (en) * | 2013-03-06 | 2014-09-11 | Netskope, Inc. | Security for network delivered services |
RU2587424C1 (ru) * | 2015-02-20 | 2016-06-20 | Закрытое акционерное общество "Лаборатория Касперского" | Способ контроля приложений |
Also Published As
Publication number | Publication date |
---|---|
RU2019120230A3 (ru) | 2020-12-28 |
US11295016B2 (en) | 2022-04-05 |
RU2019120230A (ru) | 2020-12-28 |
US20200410100A1 (en) | 2020-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11985170B2 (en) | Endpoint data loss prevention (DLP) | |
US9998484B1 (en) | Classifying potentially malicious and benign software modules through similarity analysis | |
JP7402183B2 (ja) | 小さいフットプリントのエンドポイント・データ損失防止(dlp) | |
JP7405596B2 (ja) | コンピュータシステムのオブジェクト分類のためのシステムおよび方法 | |
RU2614557C2 (ru) | Система и способ обнаружения вредоносных файлов на мобильных устройствах | |
RU2444056C1 (ru) | Система и способ ускорения решения проблем за счет накопления статистической информации | |
US7809670B2 (en) | Classification of malware using clustering that orders events in accordance with the time of occurance | |
CN101894225B (zh) | 聚集反病毒软件应用程序的知识库的系统和方法 | |
US20120317644A1 (en) | Applying Antimalware Logic without Revealing the Antimalware Logic to Adversaries | |
US10986117B1 (en) | Systems and methods for providing an integrated cyber threat defense exchange platform | |
JP2020115320A (ja) | 悪意あるファイルを検出するためのシステムおよび方法 | |
CN1773417A (zh) | 聚集反病毒软件应用程序的知识库的系统和方法 | |
Atzeni et al. | Countering android malware: A scalable semi-supervised approach for family-signature generation | |
RU2706883C1 (ru) | Система и способ снижения количества ложных срабатываний классифицирующих алгоритмов | |
Ali et al. | Trust in IoT: dynamic remote attestation through efficient behavior capture | |
CN105631336B (zh) | 检测移动装置上的恶意文件的系统及方法 | |
RU2747514C2 (ru) | Система и способ категоризации приложения на вычислительном устройстве | |
Salih et al. | Digital forensic tools: A literature review | |
US8364776B1 (en) | Method and system for employing user input for website classification | |
US20200410096A1 (en) | System and method of determining a trust level of a file | |
RU2587424C1 (ru) | Способ контроля приложений | |
RU2739833C1 (ru) | Система и способ снижения нагрузки на сервис обнаружения вредоносных приложений | |
EP3758330B1 (en) | System and method of determining a trust level of a file | |
US11709938B2 (en) | System and method of categorization of an application on a computing device using a classifier | |
RU2776926C1 (ru) | Способ изменения правила обнаружения вредоносного кода |