Способ обнаружения вредоносного приложения на устройстве пользователя

Иллюстрации

Показать все

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

Реферат

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

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

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

В настоящее время различные вычислительные устройства (компьютеры, планшеты, ноутбуки, смартфоны и пр.) все чаще и чаще используются людьми для упрощения выполнения повседневных задач: для чтения новостей, для общения через e-mail или другие сервисы мгновенного обмена сообщения, для осуществления покупок через Интернет и т.п. Одной из важных областей применения вычислительных устройств является удаленное управление финансовыми средствами, или онлайн-банкинг. Удаленное управление финансовыми средствами является очень удобным способом для перевода средств с одного банковского счета на другой, однако такой способ управления финансовыми средствами нельзя назвать самым безопасным - в мире, где каждое вычислительное устройство, имеющее доступ к сети Интернет, может быть атаковано злоумышленником, подвергаются опасности и финансовые средства человека, который для их управления пользуется упомянутым вычислительным устройством.

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

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

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

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

Раскрытие изобретения

Настоящее изобретение предназначено для обнаружения аномалий в поведении пользователя.

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

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

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

Краткое описание чертежей

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

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

Фиг. 2 иллюстрирует пример взаимодействия пользователя с элементами графического интерфейса приложения.

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

Фиг. 4 показывает пример компьютерной системы общего назначения.

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

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

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

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

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

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

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

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

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

Цель взаимодействия с удаленным банковским сервером - осуществление транзакции с участием удаленного сервера. В еще одном частном случае реализации изобретения целью взаимодействия с удаленным банковским сервером может быть любая другая операция в отношении финансовых средства (например, получение информации о наличии средств на некотором банковском счете). При этом взаимодействие может осуществляться как пользователем, так и третьим лицом от имени пользователя, например с использованием устройства пользователя или учетной записи для осуществления упомянутого взаимодействия, принадлежащей пользователю, и без ведома пользователя. Стоит понимать, что кто бы ни взаимодействовал с удаленным банковским сервером, это взаимодействие осуществляется с помощью некоторого вычислительного устройства. При этом человек (пользователь) взаимодействует с удаленным банковским сервером при помощи приложения (виды и особенности которого будут раскрыты дальше), которое установлено на вычислительном устройстве. Для удобства позволим в дальнейшем опускать тот факт, что взаимодействие пользователя с банком (удаленным банковским сервером) осуществляется при помощи именно некоторого приложения и вычислительного устройства, будем говорить о «взаимодействии пользователя с удаленным банковским сервером».

На Фиг. 1 изображена структурная схема системы обнаружения мошеннической активности на устройстве пользователя. Вычислительное устройство 100 используется пользователем для взаимодействия с удаленным банковским сервером 150. Вычислительное устройство 100 может представлять собой компьютер, ноутбук, смартфон, планшет или любое другое устройство с процессором и памятью произвольного доступа (например, наручные часы Smart Watch). Детальная схема одного из вариантов вычислительного устройства представлена на Фиг. 4. Удаленный банковский сервер представляет собой совокупность программно-аппаратных средств для реализации взаимодействия с устройством 100 пользователя с целью управления финансовыми средствами пользователя. В частном случае реализации банковский сервер 150 - такое же вычислительное устройство, как и вычислительное устройство 100 пользователя. В другом частном случае реализации сервер 150 является совокупностью вычислительных устройств, на которых располагаются средства, входящие в состав удаленного банковского сервера 150. В частном случае реализации удаленный банковский сервер 150 принадлежит банку (юридическому лицу, осуществляемому деятельность в сфере финансов). Пользователь посредством вычислительного устройства 100 осуществляет взаимодействие с удаленным банковским сервером 150. В частном случае реализации изобретения цель такого взаимодействия - управление финансовыми средствами пользователя. В частном случае реализации под таким управлением понимается осуществление транзакций в отношении банковского счета пользователя (например, для перечисления финансовых средств с одного банковского счета на другой). В еще одном частном случае реализации изобретения целью взаимодействия с удаленным банковским сервером может быть любая другая операция в отношении финансовых средства (например, получение информации о наличии средств на некотором банковском счете). Стоит понимать, что устройством 100 может воспользоваться и злоумышленник. В таком случае взаимодействие с сервером 150 будет производиться так же от лица пользователя устройства 100. Формально, в таком случае взаимодействие с удаленным банковским сервером осуществляет также пользователь, пока не будет доказано обратное (например, если будет обнаружена мошенническая активность).

Для взаимодействия с удаленным банковским сервером 150 пользователь вычислительного устройства 100 (для простоты будем называть его «пользователь») использует приложение 110. Приложение 110, посредством которого осуществляется взаимодействие пользователя и удаленного банковского сервера 150, может являться:

• интернет-браузером, посредством которого пользователь получает доступ к web-клиенту удаленного банковского сервера 150;

• приложением, которое разработано с учетом аппаратной платформы вычислительного устройства 100 (native application), например по заказу банка, в частном случае реализации таким приложением является приложение для различных семейств операционных систем (ОС): Android, iOS, Windows, Unix и т.п.

Приложение 110 предоставляет пользователю множество элементов графического интерфейса 115 приложения (в дальнейшем принадлежность элементов графического интерфейса приложению не будет указываться явно) для взаимодействия с удаленным банковским сервером 150. В частном случае реализации такими элементами графического интерфейса 115 приложения могут быть: кнопка, поле ввода, поле для отображения информации (в том числе текстовой и графической), элемент интерфейса «флажок» (checkbox), полоса прокрутки (scroll bar), а также любые другие элементы графического интерфейса, при помощи которых происходит взаимодействие пользователя (через устройство 100) и удаленного банковского сервера 150. В частном случае реализации для доступа к отображаемому в приложении 110 содержимому пользователь должен пройти аутентификацию, необходимую удаленному банковскому серверу 150, чтобы понять, кто пользуется устройством 100 и взаимодействует с удаленным банковским сервером 150. В частном случае реализации аутентификация пользователя устройства осуществляется при помощи ввода пароля учетной записи для взаимодействия, который затем проверяется удаленным банковским сервером 150. В еще одном частном случае реализации аутентификация пользователя происходит «по устройству» - предполагается, что устройством 100 может пользоваться только владелец устройства.

В состав приложения входит средство определения поведения 120, которое предназначено для сбора данных о поведении пользователя во время взаимодействия пользователя с элементами графического интерфейса 115. В частном случае реализации средство 120 группирует элементы графического интерфейса и собирает данные о взаимодействии пользователя с элементами графического интерфейса, входящими в упомянутую группу. При этом под взаимодействием с элементами графического интерфейса понимают по крайней мере: ввод данных с использованием элемента графического интерфейса (нажатие на кнопку или ввод данных в текстовое поле), перемещение курсора (движение пальца/стилуса) по области экрана, на которой отображен упомянутый элемент. Примером результата такой группировки может быть группа, состоящая только из поля ввода текста, группа, состоящая из поля ввода текста и кнопка, или группа, которая включает в себя весь набор графических элементов, отображенных пользователю посредством приложения 110 (в частном случае набор графических элементов интерфейса 115 окна приложения 110, в еще одном частном случае набор элементов графического интерфейса 115 web-страницы, отображенной пользователю, если приложение 110 - web-браузер, или). В частном случае реализации средство определения поведения 120 может быть реализовано как компонент web-страницы, отображаемой приложением 110 пользователю - например в качества скрипта на языке JavaScript (такая реализация характерна для ситуации, когда приложение 110 - web-браузер). В еще одном частном случае реализации изобретения средство определения поведения 120 может быть реализовано в качестве библиотеки приложения и поставляться банком вместе с приложением 110. При этом сбор данных о поведении пользователя осуществляется путем вызова соответствующих системных API-функций (например, для ОС Windows - «GetCursorPosition») или из обработчиков соответствующих событий (например, для ОС Android -«onTouch»).

Данные о поведении пользователя представляют собой информацию, которая предоставляется устройству 100 (а, соответственно, и приложению 110) при помощи устройств ввода. Объем такой информации может отличаться в зависимости от аппаратного и программного обеспечения устройства 100, например от вида устройства (например, смартфон или ноутбук), семейства ОС устройства 100, а также типа приложения 110 (является оно web-браузером или нет).

В частном случае реализации данные о поведении пользователя включают в себя информацию, предоставляемую манипулятором типа «мышь»:

• координаты курсора (например, относительно экрана устройства 100);

• координаты нажатия/отжатия (отпускания) клавиш.

В частном случае реализации данные о поведении пользователя включают в себя информацию, предоставляемую клавиатурой устройства 100 (в том числе и клавиатурой, отображаемой на сенсорном экране устройства 100 - touchscreen):

• символ клавиатуры, соответствующий нажатой клавише;

• последовательность из двух/трех нажатий клавиш.

В еще одном частном случае реализации данные о поведении пользователя включают в себя информацию, предоставляемую сенсорным экраном устройства 100:

• координаты точки нажатия/отжатия на экран;

• сила нажатия на экран.

В еще одном частном случае реализации данные о поведении пользователя включают в себя информацию, предоставляемую микрофоном устройства 100:

• запись звуков в цифровом формате.

В еще одном частном случае реализации данные о поведении пользователя включают в себя информацию, предоставляемую датчиком освещенности устройства 100:

• информация о наличии и силе источников света вблизи датчика.

В еще одном частном случае реализации данные о поведении пользователя включают в себя информацию, предоставляемую фото/видео камерой устройства 100:

• фотографии, снятые камерой;

• видеодорожка, снятая камерой.

В еще одном частном случае реализации данные о поведении пользователя включают в себя информацию, предоставляемую датчиком ускорения устройства 100:

• информация об изменении положения устройства в пространстве.

В частном случае реализации в дополнении к вышеописанной информации средством определения поведения 120 дополнительно собирается информация о времени каждого из вышеупомянутых событий (временная метка каждого из вышеописанных событий - перемещения курсора, нажатия на экран). В частном случае реализации, если приложение 110 является web-браузером, то возможности сбора данных о поведении средства определения поведения 120 ограничены возможностями, предоставляемыми JavaScript (в случае, если скрипт написан на языке JavaScript). В частном случае реализации ввиду таких ограничений средство 120 собирает данные о поведении, которые включают информацию, предоставляемую манипулятором типа «мышь», клавиатурой устройства 100, а также сенсорным экраном устройства 100. В другом частном случае реализации, если приложение 110 не является web-клиентом, средство определения поведения 120 собирает данные о поведении, доступ к которым предоставляют средства ОС вычислительного устройства 100.

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

В частном случае реализации на вычислительном устройстве 100 пользователя также присутствует средство обеспечения безопасности 130. Средство обеспечения безопасности 130 предназначено для сбора информации о том, какие приложения вычислительного устройства 100 осуществляют доступ к данным о поведении пользователя в то время, как пользователя осуществляет взаимодействие с группами элементов графического интерфейса 115 для взаимодействия с удаленным банковским сервером 150. Для этого средство обеспечения безопасности 130 журналирует (англ. logging) вызовы системных функций (сохраняет информацию о том, процесс какого приложения осуществляет вызов этих функций), которые отвечают за доступ к данным о поведении пользователя (например, функция «SetCursorPos»). В частном случае реализации средство обеспечения безопасности 130 включает в себя драйвер уровня ядра, с помощью которого средство 130 перехватывает вызовы функций доступа к данным о поведении пользователя.

В частном случае реализации при изменении положения курсора (для манипулятора типа «мышь») обработчик прерывания устройства «мышь» вызывает функции изменения координат курсора (например, «SetCursorPos»), который вследствие этого изменяет свое положение на экране вычислительного устройства; при этом средство обеспечения безопасности 130, включая в себя драйвер, внедренный в стек драйверов, которые обрабатывают запросы от обработчика прерывания, получает информацию, какой процесс изменяет координаты курсора (например, либо драйвер реального устройства «мышь», либо некоторое приложение, например вредоносное приложение).

В частном случае реализации средство обеспечения безопасности 130 является антивирусным программным обеспечением. В еще одном частном случае реализации собранная средством обеспечения безопасности 130 информация хранится в базе данных, входящей в состав средства 130.

После сбора данных о поведении пользователя средство определения поведения 120 пересылает эти данные вместе с информацией о том, во время взаимодействия с какими группами графических элементов интерфейса 115 пользователя устройства 110 были собраны упомянутые данные, средству классификации поведения 160. В еще одном частном случае реализации изобретения средство определения поведения 120 передает вышеописанную информацию средству 160 только после того, когда будет собраны данные о поведении пользователя при взаимодействии с заданным количеством групп элементов графического интерфейса (например, с по меньшей мере 5 группами).

Стоит отметить, что перед передачей собранных средством 120 данных о поведении пользователя, эти данные могут подвергаться обработке при помощи средства 120: например, совокупность координат курсора преобразуется в траекторию движения курсора, а совокупность координат точек нажатия на сенсорный экран и отжатая - в траекторию движения пальца по экрану (англ. swipe). В частном случае реализации данные о поведении пользователя собираются средством 120 в течение заданного промежутка времени (например, 5 минут или сутки), эти данные затем передаются средству классификации поведения 160. В еще одном частном случае реализации изобретения данные о поведения пользователя собираются в течение взаимодействия пользователя с отдельной группой элементов графического интерфейса 115: собранные данные о поведении будут переданы средством 120 средству 160, если, например, пользователь передвинет курсор с одной группы элементов графического интерфейса 115 на другую группу элементов, или если пользователь перейдет с одной web-страницы, которая целиком представляет собой группу элементов графического интерфейса, на другую.

В еще одном частном случае реализации изобретения средство 120 осуществляет обработку собранных данных следующим образом:

• для перемещений курсора мыши (которое определяется множеством точек, по которым движется курсор) вычисляется вектор перемещения (например, между конечной и начальной точкой положения курсора), скорость перемещения и ускорение в каждой точке курсора, а также угловая скорость и угловое ускорение (рассчитываются при перемещении курсора от одной точки движения к следующей относительно начальной точки движения).

В частном случае реализации средство определения поведения 120 осуществляет «обезличивание» собранных данных (например, в целях ненарушения прав пользователя устройства 100 на сбор личных данных, а также для исключения передачи большого объема данных) - собранные данные о поведении пользователя могут подвергаться обработке, например при помощи хеш-функции (например, MD5, SHA-0 или SHA-1 и т.п.). Таким образом, передаваться средству 160 будут не «сырые» данные (англ. raw data) о поведении пользователя, а хеш-суммы, которые будет с высокой вероятностью (ограниченной только вероятностью возникновения коллизии) однозначно идентифицировать данные о поведении пользователя устройства 100, при этом, используя упомянутые хеш-суммы, будет невозможно восстановить данные, от которых были вычислены соответствующие хеш-суммы. В частном случае реализации такой обработке подвергаются все собранные данные о поведении пользователя устройства 100. В еще одном частном случае реализации такой обработке подвергаются данные, включающие только: фотографии и видеодорожка, снятые камерой, запись звуков в цифровом формате.

Средство классификации поведения 160 предназначено для вычисления коэффициента аномальности поведения пользователя для каждой группы элементов графического интерфейса, данные о поведении пользователя во время взаимодействия с которой были собраны средством определения поведения 120. Коэффициент аномальности поведения пользователя - число, например от 0 до 100 (в еще одном частном случае реализации - любое другое действительное число), которое показывает насколько поведение пользователя (в соответствии с собранными данными о поведении) не характерно владельцу устройства (или учетной записи для взаимодействия с удаленным банковским сервером). Чем больше это число, тем менее характерно поведение, данные о котором были собраны в время взаимодействия пользователя и удаленного банковского сервера 150, этому пользователю. В частном случае реализации значение 0 коэффициента аномальности может означать, что поведение пользователя, данные о котором были собраны при взаимодействии пользователя с некоторой группой графических элементов, полностью соответствует пользователю устройства 100.

Для вычисления коэффициента аномальности поведения пользователя средство классификации 160 использует алгоритм классификации. В частном случае таким алгоритмом считают наивный байесовский классификатор. Входными данными для такого алгоритма являются данные о поведении пользователя во время взаимодействия пользователя с группой элементов графического интерфейса 115. Результат работы такого алгоритма - число, которое принимается за коэффициент аномальности поведения пользователя.

Для того, чтобы средство классификации поведения 160 могло вычислить коэффициент аномальности поведения пользователя, используемый алгоритм классификации предварительно проходит этап обучения. Во время обучения алгоритму предоставляются заведомо известные данные (ниже будут даны примеры таких данных) о поведении пользователя вычислительного устройства 100 во время взаимодействия пользователя с различными группами элементов графического интерфейса 115, а также заведомо известную информацию о том, является ли такое взаимодействие мошеннической активностью (на случай ситуации, когда кто-то другой использует устройство 100). Информация, используемая для обучения, в частном случае реализации изобретения хранится в базе данных 165. Кроме того, что использование такого алгоритма позволит отличить поведение одного пользователя от другого при использовании одного и того же устройства 100, данный алгоритм также поможет распознать ситуации, когда поведение пользователя имитируется программно: траектория перемещения курсора при такой имитации больше напоминает прямую линию, ввод данных с использованием элементов графического интерфейса для ввода текста, как правило, не будет сопровождаться нажатием клавиши удаления последнего введенного символа, при использовании устройства 100 пользователем датчик ускорения, как правило, показывает, что устройство не неподвижно, датчик освещенности также, как правило, показывает, что пользователь использует устройство 100 не в полной темноте, при использовании устройства 100 реальным пользователем микрофон может записывать определенные звуки (например, вызванные движением пользователя), что не характерно ситуации с программным имитированием поведением пользователя.

В частном случае реализации изобретения для обучения алгоритма классификации заведомо известные данные о поведении пользователя вычислительного устройства 100 во время взаимодействия с удаленным банковским сервером 150 (а именно с группами элементов графического интерфейса 115 для взаимодействия с удаленным банковским сервером 150) собираются непрерывно при помощи средства определения поведения 120, передаются средству классификации поведения 160, которое сохраняет эту информацию в базе данных 165. Собранные данные априори считаются соответствующими не мошеннической активности (взаимодействие с удаленным сервером 150, в течение которого были собраны данные о поведении пользователя, не считается мошеннической активностью), пока обратное не будет обнаружено (доказано) в рамках по крайней мере одного из способов реализации настоящего изобретения, или сотрудник банка сам не укажет периоды мошеннической активности с устройства пользователя 100, тем самым указывая факты мошеннических активностей, соответствующих собранным данным о поведении пользователя при взаимодействии с группами элементов графического интерфейса 115. В частном случае реализации для обучения алгоритма классификации используются данные о поведении пользователя, собранные в течение заданного промежутка времени (например, один месяц или один год). В частном случае реализации для обучения выбирается временной промежуток заданной длины (например, как указано выше, один месяц), который оканчивается не позднее, чем за определенное количество времени до момента обучения алгоритма классификации (например, за месяц) - такая «задержка» в обучении полезна в ситуациях, когда сотрудник банка может за указанный период времени (между окончание момента сбора данных о поведении пользователя и моментом начала обучения алгоритма) обнаружить мошенническую активность и внести соответствующие изменения в данные, которые хранятся в базе данных 165.

Приведем пример работы средства классификации поведения 160. Для наглядности обратимся к Фиг. 2. На Фиг. 2 изображено вычислительное устройство 100 (в данном случае смартфон), при этом данные о поведении пользователя включают по крайней мере координаты точки нажатия/отжатия на сенсорный экран устройства 100. При взаимодействии пользователя с группой элементов графического интерфейса 115 (в данном случае - все элементы графического интерфейса, отображенные пользователю) приложения 110 во время взаимодействия с удаленным банковским сервером 150 была собрана при помощи средства 120 следующая информация: о нажатии (координаты точек) на экран в точке 200 и во всех остальных точках, которые лежат на траектории движения пальца до точки отжатая 210. Эту информацию (вместе с указанием, какой группе отображенных графических элементов интерфейса 115 соответствует эта информация) средство 120 передает средству классификации поведения 160. Средство 160 на основании полученных данных определяет, насколько такое движение, охарактеризованное перемещением пальца по сенсорному экрану из точки 200 в точку 210, не характерно пользователю устройства 100 - пользователю, данные о поведении которого при взаимодействии с различными группами графического интерфейса 115 были собраны заранее для обучения алгоритма классификации средства 160. При этом, на этапе обучения алгоритма средство классификации поведения 160 использовало данные о поведении пользователя, которые включали информацию о движении пальца пользователя по сенсорному экрану вычислительного устройства 100 по траектории от точки 200 до точки 220. В данном случае средство классификации поведения 160 вычислит коэффициент аномальности поведения пользователя для упомянутой группы элементов графического интерфейса, при этом значение коэффициента будет большим, например 90 или в частном случае реализации - вообще 100 (сп