Система и способ выявления скрытого поведения расширения браузера
SYSTEM AND METHOD OF DETECTING LATENT BEHAVIOUR OF BROWSER EXTENSION

Область техники
Изобретение относится к средствам компьютерной техники, предназначенным для защиты от компьютерных угроз, а именно к средствам анализа расширений браузера для выявления у них скрытого поведения.
Уровень техники
В настоящее время количество всевозможных приложений (программного обеспечения), используемых на вычислительных устройствах, в том числе и персональных электронных вычислительных машинах (компьютерах), постоянно увеличивается. Одним из таких приложений является браузер (от англ. web browser), позволяющий пользователям взаимодействовать в различных сетях связи, таких как сеть Интернет, для просмотра веб-сайтов, доступа к компьютерным файлам различных форматов, управления веб-приложениями и так далее.
Для расширения функциональности (функциональных возможностей) браузера используется подход, в котором функциональность браузера расширяется путем создания так называемых расширений - программного обеспечения (ПО), которое выполняет дополнительный функции. В зависимости от браузера в качестве термина «расширение браузера» понимаются такие термины как плагин (англ. plug-in), дополнение (англ. addon) или расширение (англ. extension). В качестве примера расширений браузера можно привести такие расширения как показаны на Фиг. 1а, а также расширение «Ears Bass Boost», которое является эквалайзером для каждой вкладки в браузерах «Google Chrome» и «Яндекс Браузер», расширение «Facebook AdBlocker», которое позволяет блокировать контентную рекламу, расширение «VK Audio Player», которое является проигрывателем музыки, расширение «Мегсшу Reader», предназначенное для приведения страниц в удобный вид, и многие другие. Как правило, каждое расширение браузера имеет иконку на панели управления браузера для быстрого запуска расширения. Пример проиллюстрирован на Фиг. 16.
Расширения браузеров создаются и модифицируются как организациями, так и частными лицами. Расширения для того или иного браузера доступны для скачивания и установки как правило из официальных интернет-магазинов, например, для браузера «Google Chrome» интернет-магазин находится по ссылке https://www.google.ru/chrome/webstore/extensions.html. В то же время скачать для установки расширение браузера возможно и из других информационных источников, размещенных в глобальной сети Интернет.
Широкое развитие расширений браузеров также дало толчок и использованию расширений для распространения нежелательного контента или использования злоумышленниками в своих целях. Такие расширения обладают нежелательным или вредоносным поведением, например, производят подмену контента в виде вставки рекламы, сбор данных о поисковых запросах и пользователе, кражу паролей и учетных записей пользователей, формирование бот-сети.
В настоящее время возникают ситуации, когда расширение, содержащее вредоносное поведение, может быть скачано из официального интернет-магазина. Таким, например, расширением являлось расширение «Browse-Secure» из интернет-магазина «Chrome Web Store», в описании назначения которого гарантировался безопасный, зашифрованный и анонимный поиск. После установки данного расширения, оно запускало поисковый робот (англ. crawler) и получало личные данные пользователя: ФИО, дату рождения, пол, адрес, телефон и электронную почту. Кроме того, расширение присваивало пользователю конкретный идентификатор, который помогал отслеживать действия и извлекать информацию о конкретном пользователе, и все запросы пользователя через поисковые веб- ресурсы переадресовывал на сторонний специально созданный веб-сайт. Соответственно, украденные данные могут быть использованы в дальнейшем мошенниками по своему усмотрению. Конечно же такое поведение не было заявлено создателем указанного расширения, а было скрыто. Скрытым поведением расширения по крайней мере являются активности, в частности, действия, расширения, которые не заявлены производителем расширения.
Сложность выявления скрытого поведения у расширений браузера заключается в том, что расширения браузера представляют собой набор различных файлов, и для определения совокупного функционала расширения браузера требуется анализ всего набора файлов, содержащих исполняемый код. Кроме того, для анализа и выявления полного функционала расширения браузера требуется различный функционал (такой как функции, интерфейсы и переменное окружения), предоставляемый браузером, а в некоторых случаях и определенная активность пользователя. Так как скрытое поведение расширения как правило проявится только в определенных случаях или при определенных условиях.
Таким образом, антивирусные технологии такие как эмуляция, статический и динамический анализ отдельных компонентов расширения во многих случаях не позволяют определить весь функционал расширения и, соответственно, не выявят скрытое поведение расширения браузера. Кроме того, программный код некоторых исполняемых файлов расширения браузера может быть обфусцирован (англ. obfuscate), что также значительно усложняет анализ по частям. Поэтому требуется анализ всего набора файлов расширения браузера за раз с целью определения его работы.
Для решения задачи защиты вычислительного устройства или данных пользователей от различных мошеннических действий и вредоносных программ, использующих расширения браузера, требуется новый подход по анализу расширений браузера и выявлению их скрытого поведения. Настоящее изобретение позволяет эффективно решить задачу по обнаружению скрытого поведения расширений браузеров. А также задачу по определению скрытого поведения как вредоносного поведения расширения браузера.
Раскрытие изобретения
Настоящее изобретение позволяет исследовать функциональные возможности расширения браузера целиком, как единый объект. В процессе исследования расширения браузера выявляется скрытое поведения или скрытый функционал, имеющийся у исследуемого расширения браузера. В случае выявления скрытого поведения, настоящее изобретение имеет возможность проанализировать его и определить, как вредоносное поведение.
Технический результат настоящего изобретения заключается в обеспечении реализации назначения, а именно, в выявлении скрытого поведения у расширения браузера. Указанный технический результат достигается путем выявления и анализа функциональных возможностей расширения как единого объекта, при этом выявляя только те активности, которые происходят именно из-за работы анализируемого расширения.
Другой технический результат настоящего изобретения заключается в обеспечение возможности исследования функциональных возможностей расширение браузера как единого объекта.
Еще один технический результат настоящего изобретения заключается в повышении вероятности выявления вредоносного поведения у расширения браузера за счет выявления скрытого поведения у расширения браузера.
В качестве одного из вариантов исполнения предлагается способ анализа расширения браузера, реализуемый компьютером, для выявления скрытого поведения у расширения браузера, при этом способ содержит этапы, на которых: устанавливают расширение браузера в браузер, запущенный в защищенной среде, которая содержит, по крайней мере, операционную систему и указанный браузер, содержащий средство регистрации событий в виде другого расширения; выполняют по крайней мере одно предопределенное действие, имитирующие работу пользователя, из хранилища данных; отслеживают с помощью средство регистрации событий активности, происходящие во время выполнения по крайней мере одного предопределенного действия, при этом каждому виду активности соответствуют определенные изменения в защищенной среде; регистрируют в список событий произошедшие события, которые связаны с изменениями в защищенной среде, которые инициированы только указанным расширением браузера; анализируют события из перечня событий на наличие событий, указывающих на изменения, характерные для скрытого поведения, где изменения, характерные для скрытого поведения, указывают на действия расширения браузера, которые ранее не были заявлены в работе анализируемого расширения браузера; сохраняют полученные результаты при выявлении по крайней мере одно зарегистрированного событие, указывающего на наличие скрытого поведения у анализируемого расширения браузера.
В другом варианте исполнения способа способ дополнительно включает выявление вредоносного поведения в расширении браузера на основании сохраненных результатов анализа.
В еще одном варианте исполнения способа во время выявления вредоносного поведения определяют события, происходящие в результате вредоносных действий, среди событий, указывающих на действия, выполняемые в результате скрытого поведения.
В другом варианте исполнения способа под защищенной средой понимается по меньшей мере «песочница», эмулятор и любая другая среда, позволяющая контролировать набор ресурсов операционной системы для исполнения.
В еще одном варианте исполнения способа инициаторами являются по крайней мере следующие: виртуальная память, файлы, значения реестра, сетевые соединения, браузер и расширения.
В другом варианте исполнения способа под стандартными действиями понимается по крайней мере открытие одного сайта, совершение нескольких действий на каждом открытом сайте, открытие страницы настроек браузера и выполнение поисковых запросов в браузере.
В качестве другого варианта исполнения предлагается система анализа расширения браузера для выявления скрытого поведения у расширения браузера, включающая следующие средства, реализуемые компьютером: хранилище данных, связанное с указанными ниже средствами и выполненное с возможностью хранения по крайней мере перечня стандартных действий и списка событий; средство для формирования защищенной среды, предназначенное для запуска защищенной среды, содержащей операционную систему с браузером, при этом браузер содержит средство регистрации событий в виде расширения, установки расширения браузера в указанный браузер, выполнения по крайней мере одного действия из перечня стандартных действий, имитирующих работу пользователя, из хранилища данных; упомянутое средство регистрации событий, предназначенное для отслеживания происходящих активностей в защищенной среде во время выполнения по крайней мере одного указанного действия, при этом каждому вида активности соответствуют определенные изменения в защищенной среде, регистрации в список событий только произошедшие события, которые связаны с изменениями в защищенной среде, которые инициированы только установленным расширением браузера, передачи списка событий средству обнаружения скрытого поведения; упомянутое средство обнаружения скрытого поведения, предназначенное для анализа события из списка событий на наличие событий, указывающие на изменения, характерные для скрытого поведения, где изменения, характерные для скрытого поведения, указывают на действия расширения браузера, которые ранее не были заявлены в работе анализируемого расширения браузера, сохранения полученного результата при выявлении по крайней мере одно зарегистрированного событие, указывающего на наличие скрытого поведения у анализируемого расширения браузера.
В еще одном варианте исполнения системы система дополнительно содержит средство выявления вредоносного поведения, связанное со средством обнаружения скрытого поведения, предназначенное для выявления вредоносного поведения в расширении браузера с использованием сохраненных результатов анализа и определения события, указывающего на скрытое поведение, как событие, происходящее в результате вредоносного действия.
В другом варианте исполнения системы под защищенной средой понимается по меньшей мере «песочница», эмулятор и любая другая среда, позволяющая контролировать набор ресурсов операционной системы для исполнения.
В еще одном варианте исполнения системы инициаторами изменений являются по крайней мере следующие: виртуальная память, файлы, ветки реестра, сетевые соединения, браузер и расширения.
В другом варианте исполнения системы под стандартными действиями понимается по крайней мере открытие нескольких сайтов, совершение нескольких действий на открытых сайтах, открытие страниц настроек браузера и выполнение поисковых запросов в браузере.
Краткое описание чертежей
Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:
Фиг. 1a демонстрирует пример раздела браузера, содержащего установленные расширения.
Фиг. 1б демонстрирует пример управляющей панели браузера, содержащий ярлыки для доступа/запуска к установленным расширениям.
Фиг. 2 иллюстрирует пример реализации системы анализа расширения браузера для выявления скрытого поведения с возможность определения вредоносного поведения.
Фиг. 3 демонстрирует пример выявленных файлов сценариев (скриптов), которые были скрыты в исходном расширении.
Фиг. 4 представляет способ анализа расширения браузера для выявления скрытого поведения у расширения браузера.
Фиг. 5 представляет частный случай реализации способ выявления скрытого поведения расширения браузера с последующим определением вредоносного поведения.
Фиг. 6 иллюстрирует пример компьютерной системы общего назначения, на которой может быть реализовано заявленное изобретение.
Хотя изобретение может иметь различные модификации и альтернативные формы, характерные признаки, показанные в качестве примера на чертежах, будут описаны подробно. Следует понимать, однако, что цель описания заключается не в ограничении изобретения конкретным его воплощением. Наоборот, целью описания является охват всех изменений, модификаций, входящих в рамки данного изобретения, как это определено приложенной формуле.
Описание вариантов осуществления изобретения
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Приведенное описание предназначено для помощи специалисту в области техники для исчерпывающего понимания изобретения, которое определяется только в объеме приложенной формулы.
Настоящее изобретение позволяет исследовать функциональные возможности расширения браузера целиком, т.е. функционал расширения исследуется совместно. Таким образом, в процессе исследования совместный анализ позволит выявить скрытое поведения или скрытый функционал, имеющийся у исследуемого расширения браузера. В зависимости от браузера в качестве термина «расширение браузера» понимаются такие термины как плагин (англ. plug-in), дополнение (англ. add-on) или расширение (англ. extension). Скрытым поведением являются активности/действия расширения браузера или его части, которые являются тайными, сокрытыми от пользователей и по возможности от антивирусов, не декларируемыми, но активно исполняемыми при работе расширения браузера. Под активностями понимаются также действия, совершающиеся в окружающей среде. Примером скрытого поведение является загрузка исполняемого файла с неизвестного веб-ресурса без ведома пользователя. Так как в качестве скрытого поведения может быть выявлено вредоносное поведение и/или, соответствующий поведению вредоносный файл, то впоследствии настоящее изобретение может являться частью системы по выявлению вредоносного поведения или вредоносных файлов. Для этого потребуется средство по анализу выявленного скрытого поведения на наличие вредоносного поведения с последующим вынесением решения о наличии вредоносного поведения. В одном из вариантов реализации средство по анализу выявленного скрытого поведения производит анализ на основании правил, которые содержат по крайней мере одну активность, на основании которой можно вынести решение о вредоносном расширении. Например, правило может содержать следующий ряд активностей: открытие вкладки браузера с настройками, загрузка стороннего скрипта (англ. script) по конкретному типу URL и использование функции eval.
Примерами скрытого поведения, и в тоже время нежелательного, являются, но не ограничиваются, такие активности/действия, как:
подмена содержимого контента, например, подмена части веб-страницы;
кража паролей и учетных записей пользователей;
рекламные действия от имени пользователя;
скрытый оборот, в том числе и создание, электронных денег (генерация (от англ. mining) денег в криптовалюте);
сбор информации о пользователе устройства;
сбор информации о поисковых запросах;
сокрытие указанных выше активностей или программного кода для указанных активностей от пользователей;
доступ к реестру операционной системы.
Подмена контента может быть реализована путем включения в расширение браузера программного кода, содержащего рекламное сообщение или механизм фильтрации (проксирования) поисковых запросов.
Кража паролей и учетных записей пользователей может быть реализована через внедрения в расширение браузера вредоносного программного обеспечения (ПО) типа «Trojan-PSW», который перехватывает соответствующие пакеты данных, или через выполнение расширением функций кейлогера (англ. keylogger).
Рекламные действия от имени пользователя подразумевают, например, отправление рекламных сообщений от имени пользователя друзьям в социальных сетях или вредоносное ПО типа «Click-Fraud» (вид мошенничества, имитирующий щелчки мышью по рекламному объявлению).
Одним из примеров сокрытия указанных активностей реализуется через механизмы подмены данных.
Настоящее изобретение для выполнения своего предназначения реализуется с помощью компьютерной системы, представленной на Фиг. 6, и осуществляется в рамках защищенной среды, при этом защищенная среда содержит по меньшей мере операционную систему с веб-браузером. Защищенная среда позволяет ограничить работу расширения браузера и/или защитить внешнюю среду от проверяемого расширения браузера. Внешней средой в рамках изобретения называется среда, которая находится за границами защищенной среды, например, среда системы, в которой установлена и работает защищенная среда. В одном из вариантов реализации защищенной средой является технология «песочница» (от англ. sandbox). Под технологией «песочница» понимается механизм защиты, включенный в состав виртуальной машины, т.е. специально выделенная изолированная среда, в которой производится безопасная проверка различного программного обеспечения, в частности, расширения браузера. Еще одним примером реализации может являться упрощенная версия браузера, которая реализует минимальный набор функционала для проведения проверки расширения (отправка и прием веб-запросов, отображение веб-страниц, авторизация и работа с SSL-протоколом и т.д.).
На Фиг. 2 показана блок-схема системы анализа расширения браузера для выявления скрытого поведения с возможностью определения вредоносного поведения (далее - система анализа расширения 100).
Система анализа расширения 100 включает набор средств 120, состоящий по крайней мере из средства 210 для формирования защищенной среды, средства 220 для регистрации событий и средства 230 для обнаружения скрытого поведения, и базу данных 140, содержащей по крайней мере перечень действий 260 и список событий 270. В частном случае реализации комплекс средств 120 также включает средство 240 для выявления вредоносного поведения. Средства из комплекса средств 120 имеют возможность производить взаимодействия (обмен данными) между собой и с базой данных 140 с целью выполнения предназначения системы анализа расширения 100.
Средство 210 выполнено с возможностью формирования защищенной среды для того, чтобы при анализе расширения браузера исключить возможную компрометацию основной операционной системы (внешней системы) или утечки персональных данных пользователей. Защищенная среда может быть реализована в виде ряда технологий, которые были указаны ранее или с помощью других существующих в настоящее время технологий для безопасного анализа приложений, в частности браузеров. Кроме того, средство 210 устанавливает расширение, предназначенное для анализа, в браузер защищенной среды. Для этого средство 210 может произвести как загрузку расширения из интернет-магазина, содержащего необходимое расширение, так и установку расширения из определенного локального места хранения. После установки средство 210 подбирает необходимый набор стандартных действий пользователя для анализа расширения браузера на скрытое поведение, при этом набор содержит действия, с помощью которых воспроизводятся (симулируются) действия пользователя в браузере. Указанные действия хранятся в перечне действий 260. Примерами стандартных действий пользователя в перечне действий 260 являются такие действия как:
действия, связанные с открытием веб-сайта, в частности, веб-сайта определенной категории;
действия, связанные с настройкой браузера;
действия, связанные с интернет-серфингом ("путешествие" по сайтам);
и другие.
В одном из вариантов реализации принцип подбора необходимых действий пользователя основан на анализе метаданных о расширении браузера, например, на основании анализа заявленных функциональных возможностей разработчиками анализируемого расширения согласно соответствующему руководству использования.
В еще одном частном случае реализации набор стандартных действий может не выбираться, а иметь заранее предопределенное количество действий, которые средство 210 будет выполнять после установки расширения в браузер. В этом случае указанным набором может являться весь перечень действий 260 из базы данных 140. При этом набор имеет возможность периодически обновляться с целью актуализации действий пользователя для проверки.
Примером перечня действий является набор, содержащий следующие действия: открыть браузер; выбрать почтовый сервис; проверить почту; открыть дополнительные вкладки (например, настройки, список расширений, главную страницу браузера); зайти на N сайтов, где N - случайное число, но не больше 100; зайти на сайте банка на страницу онлайн банкинг; закрыть браузер; открыть сайт из списка, где список содержит по крайней мере сайт социальной сети, сайт почтового сервиса и сайт поискового сервиса; произвести ввод данных (например, логин и пароль) для авторизации на сайте, открыть поисковый сервис и произвести поиск по случайным поисковым запросам.
Когда набор стандартных действий (набор действий) выбран, средство 210 производит выполнения каждого действия из набора действий во всей защищенной среде, в частности в браузере. Выполнение действий может производиться как последовательно друг за другом, так и на основании событий, происходящих в защищенной среде при выполнении действия из указанного набора (или при выполнении последовательности действий). Если действия подбираются исходя из произошедших событий, то в этом случае реализации системы 100 средство 210 содержит правила, хранящиеся в базе данных 140, для подбора действия пользователя для исполнения в защищенной среде. Например, правило может содержать следующее условие: при обнаружении ссылке на переход на сайт банка, произвести данный переход. В другом примере правило содержит условия: открываем сайт социальной сети и производим вход или регистрацию учетной записи. Стоит отметить, что в зависимости от реализации действия пользователя из набора действий исполняются либо в обязательном порядке все, либо до завершения исполнения анализируемого расширения браузера, либо до выявления скрытого поведения у анализируемого расширения браузера.
переходами по различным URL-адресам,
скачивание файла со веб-сайта,
созданием обратных вызовов (англ. callback) на различные события submit, которые возникают при отправке формы на сервер,
После формирования списка событий средство 220 передает его средству 230 для дальнейшего анализа, при этом список событий 270 сохраняется в хранилище данных 140.
Средство 230 выполнено с возможностью обнаружения скрытого поведения у расширения браузера. В одном из вариантов реализации средство 230 анализирует список событий 270 на наличие изменений, характерных для скрытого поведения. Под изменениями, характерными для скрытого поведения, понимаются действия расширения браузера, которые ранее не были, по крайней мере, заявлены в работе анализируемого расширения браузера. При выявлении по крайне мере одного такого действия у анализируемого расширения браузера средство 230 определяет наличие скрытого поведения и сохраняет полученный результат в хранилище данных 140. После чего сохраненный результат может быть предоставлен всем заинтересованных системам или лицам, например, средству 240 для выявления вредоносного поведения. Механизм оповещения и предоставления, кроме как средству 240, информации о скрытом поведении расширения и созданного списка событий не раскрывается в данном описании, но при этом стоит понимать, что может быть использовал любой из известных механизмов. Заинтересованными источниками могут являться различные базы данных антивирусных систем для выявления такого поведения, базы Интернет-ресурсов и систем автообнаружения (детектирования).
Примером расширения, у которого выявлено скрытое поведение является, представленное выше, расширение с идентификатором (id): bmdldbpdnijehkgkiblamnihfjhdhlod, и хэш-функцией (md5) архива: 0x58632f0cecd9508a22c26783b878cd02. На Фиг. 3 представлен фрагмент списка событий, произошедших из-за активности указанного расширения в процессе его работы в браузере защищенной среды. Активность представляет собой включения в страницы легальных сайтов рекламные скрипты, а также наличие скрытого поведения, на которое указывает md5 исполненного скрипта: 0xlD75A9EAD86E2F4F99B00975090ClB0D.
Другим примером является следующий: во время анализа расширения выполняется действие, связанное с открытием страницы mail.ru. После чего расширение добавляет на страницу mail.ru скрипт. Далее скрипт от имени страницы mail.ru обращается к ресурсу, который заданному URL (Uniform Resource Locator). Категорией, под которую подпадал указанный URL на момент анализа, является рекламная ссылка. Что в дальнейшем указывало на присутствие скрытого поведения на основании md5 скрипта.
Средство 240 выполнено с возможностью выявления вредоносного поведения. Средство 240 анализирует список событий 270 совместно с выявленным скрытом поведением на наличие совершенных вредоносных действий. Вредоносными действиями являются действия, указывающие на причинение ущерба компьютерной системе или личным данным пользователя, например, такие как переход на внешний ресурс и загрузка вредоносного файла (троянской программы), добавление в операционную систему файла для удаленного управления операционной системой или для сбора информации о действиях пользователя, кража личных данных пользователя, шифрование данных, в частности, личных данных пользователя, с целью вымогательства и так далее. В случае выявления таких действий средство 240 выносит решение о наличии вредоносного поведения в расширении и добавляет сведения о выявленном вредоносном поведении в соответствующие базы данных, в частности, в хранилище данных 140, для последующего выявления и лечения или удаления.
Хранилище данных 140, взаимодействует со всеми средствами системы анализа расширения 100 и хранит на постоянной основе требуемую им информацию, в частности перечень действий 260 и список событий 270.
Стоит отметить, что особенность системы анализа расширения 100 заключается в возможности отличить активности, связанные с проверяемым расширением браузера, от активностей, совершающихся вследствие работы самого браузера, в котором установлено расширение, и окружающей/защищенной среды. Совершившиеся активности анализируются на основании перехвата событий, произошедших в следствии той или иной активности. Под активностями понимаются действия, совершающиеся в окружающей среде. Стоит отметить, что для каждого вида активности предварительно может формироваться свой набор действий, содержащий ряд операций, выполняемых программно или аппаратно, по выявлению определенных действий и сбора событий в процессе анализа расширения.
На Фиг. 4 представлен способ анализа расширения браузера для выявления скрытого поведения у расширения браузера.
Способ анализа расширения браузера реализуется с помощью компьютерной системы и осуществляется в рамках защищенной среды, при этом защищенная среда содержит по меньшей мере операционную систему с веб-браузер. В частности, указанный способ реализуется с помощью средств системы анализа расширения 100, описанные на Фиг. 2. В одном варианте реализации под защищенной средой понимается технология типа «песочница». Под технологией «песочница» понимается анализ объекта (в частности, расширения браузера), который основан на анализе исполнения объекта в ограниченной среде.
В частном случае реализации анализ расширения браузера может быть произведен без защищенной среды, т.е. на компьютере с установленной операционная системой и браузером. В этом случае этап 310 является не нужным и пропускается, при этом браузер, в котором производится анализ расширения должен содержать, по крайней мере, средство 220 для регистрации событий системы анализа расширения 100.
В еще одном частном случаев, когда для проверки расширения браузера требуются особенные условия работы, отличающиеся от общепринятых, то этап 310 выполняется. На этапе 310 с помощью средства формирование защищенной среды 210 формируется защищенная среда, содержащая операционную систему и веб-браузер, при этом учитываются особые условия для проверки расширения. По сути все условия направлены на выполнение одной задачи, а именно, на создание максимально реалистичной защищенной среды. Примерами особых условий могут являться определенный перечень легальных расширений и программного обеспечения (ПО), формирование информации о времени установки ПО (т.е. не дата создания защищенной среды) и задание определенного место расположение ПК, например, в России. Примером необходимости такой реализации является следующий случай. Производится проверка расширения браузера и предполагается, что расширение имеет вредоносный функционал, которые имеет возможность выявить защищенную среду (т.е. присутствует анти-сендбоксинг механизм). Например, выявление производится путем проверки редко используемых файлов, с точки зрения работы операционной системы. Поэтому такие файлы могут отсутствовать в операционной системе защищенной среды. В случае определения, что такого файла нет в операционной системе вредоносный функционал может не проявить себя. Тогда требуются особенные условия формирования защищенной среды с целью создания наибольшей схожести с реальной системой и дальнейшей проверки расширения.
В других случаях реализации защищенная среда уже изначально установлена в компьютерной системе и способ начинается с этапа 320.
На этапе 320 с помощью средства 210 производят установку расширения браузера, которое необходимо проверить, в браузер. Установка расширения в браузер может быть произведена одним из следующих способов: расширение браузера скачивается средством 210 из интернет-магазина, например, такого как Chrome store, или же другого веб-ресурса, который содержит расширение для скачивания, на основании полученного задания, которое содержит идентификатор расширения, и устанавливается в браузер; устанавливается по требованию пользователя на основании полученного задания, которое содержит путь к установочному файлу расширения браузера. Кроме того, установка расширения браузера в браузер также может быть с имитирована в защищенной среде 210 и браузер «максимально доверяет» указанному интернет-магазину (т.е. не производится никакой проверки со стороны браузера по функционалу интернет-магазина). Такая необходимость может потребоваться, когда, например, проверяемое расширение отсутствует в интернет-магазине или защищенная среда не имеет реального доступа в информационно-коммуникационную сеть «Интернет». А также при имитации установки расширения браузера присутствует возможность контролировать различные параметры - время установки, источник установки и т.д.
На этапе 330 определяют по крайней мере одно действие, имитирующее работу пользователя в веб-браузере, из хранилища данных 140. Примерами таких действий являются открытие веб-сайта, открытие страницы настроек веб-браузера, формирование поискового запроса на поисковом сайте и т.д. Подбор указанных действий основан, по крайней мере, на анализе метаданных расширения, которые описывают назначение расширения. Кроме того, механизм подбора может быть опциональным, и в случае его не реализации используется все указанных действия из хранилища данных 140.
На этапе 340 производят выполнение определенных действий с помощью средства 210. В частном случае реализации порядок выполнения действий может быть либо заранее определен (первый случай), либо производится в зависимости от происходящего события на предыдущее действие (второй случай). Во втором случае, перечень действий имеет древовидный вид с вариантами решений для продолжения выполнения действий и исполнения расширения браузера.
На этапе 350 во время выполнения преопределенных действий для запущенного расширения с помощью средства 220 отслеживают все происходящие активности и изменения в защищенной среде.
Далее на этапе 360 с помощью средства 220 производят регистрацию в перечень событий только тех событий, которые инициированы анализируемым расширением браузера. Средство 220 анализирует перехватываемую активность и происходящие изменения в защищенной среде, а именно, действия и события, которые, произошли в следствии указанных активностей и изменений, с целью выявления только тех событий, которые инициированы анализируемым расширением браузера.
На этапе 370 анализируют события из перечня событий на наличие изменений, характерных для скрытого поведения. Под изменениями, характерными для скрытого поведения, понимаются действия расширения браузера, которые ранее не были заявлены в работе анализируемого расширения браузера. В случае выявления скрытого поведения переходят к этапу 390. В противном случае, если скрытое поведение не выявлено, то на этапе 380 выносят вердикт об отсутствии скрытого поведения у анализируемого расширения и завершают работу.
На этапе 390 сохраняют полученные результаты, если по крайней мере одно зарегистрированное событие указывают на наличие скрытого поведения у анализируемого расширения браузера. После чего сохраненный результат может быть предоставлен всем заинтересованных системам или лицам, например, средству 240 для выявления вредоносного поведения.
На Фиг. 5 представлен частный случай реализации способ выявления скрытого поведения расширения браузера с последующим определением вредоносного поведения.
На этапе 410 устанавливают расширение браузера в браузер, расположенный в операционной системе защищенной среды. В качестве защищенной среды используется указанная ранее технология «песочница». Установка расширения производится аналогично вариантам, представленным при описании Фиг. 2. На этапе 420 производят выполнение предопределенных действий, имитирующих работу пользователя в браузере. Определение необходимых для выполнения действий пользователя определяется аналогично этапу 330 при описании Фиг. 4. В частности, получают из хранилища данных 140 перечень действий, который актуален для проверяемого расширения браузера. На этапе 430 отслеживают все происходящие события, связанные с совершающимися активностями в защищенной среде в следствии исполнения указанных выше действий. Среди всех произошедших событий регистрируют на этапе 440 в списке событий только те события, которые произошли в следствии активности анализируемого расширения браузера. Далее на этапе 450 производят анализ списка событий с целью выявления скрытого поведения у расширения браузера. В случае выявления по крайней мере одного скрытого поведения у расширения браузера переходят к этапу 465. В противном случае, если не одного скрытого поведения не выявлено, завершают проверку расширения браузера. На этапе 465 анализируют список событий совместно с выявленным скрытом поведением на наличия совершенных вредоносных действий. Вредоносными действиями являются действия, указывающие на причинение ущерба компьютерной системе или личным данным пользователя, например, такие как переход на внешний ресурс и загрузка вредоносного файла (троянской программы), добавление в операционную систему файла для удаленного управления операционной системой или для сбора информации о действиях пользователя, кража личных данных пользователя, шифрование личных данных пользователя с целью вымогательства и так далее. В случае выявления таких действий переходят к этапу 470. В противном случае, если вредоносные действия не выявлены, переходят к этапу 490, на котором завершается проверка. На этапе 470 выносится решение о наличии вредоносного поведения в расширении. На этапе 480 добавляют сведения о выявленном вредоносном поведении в соответствующие базы данных для последующего выявления и лечения или удаления либо вредоносного файла, либо всего расширения.
В частном случае реализации на этапе 470 производится проверка наличия сведений или методов лечения выявленного вредоносного поведения и в случае наличия таких сведений также добавляют их в соответствующие базы данных.
На Фиг. 6 показана компьютерная система, на которой может быть реализовано описанное изобретение.
Фиг. 6 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 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, представленного на Фиг. 6. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет.В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой.