Способ и вычислительное устройство для выявления целевого вредоносного веб-ресурса
METHOD AND COMPUTING DEVICE FOR DETECTING TARGET MALICIOUS WEB RESOURCE

ОБЛАСТЬ ТЕХНИКИ
[1]  Настоящее техническое решение относится к области вычислительной техники, в частности к области информационной безопасности, а именно к компьютерно-реализуемому способу и системе выявления целевого вредоносного веб-ресурса.
УРОВЕНЬ ТЕХНИКИ
[2]  В настоящее время более половины вредоносных действий совершается в сети Интернет (например, распространение вредоносного ПО, фишинг и т.д). Как правило, злоумышленники при этом побуждают своих жертв переходить на вредоносные веб-ресурсы (веб-сайты, веб-страницы).
[4]  Подобный подход раскрывает технология, описанная в патентном документе US9,356,947B2 (Opsec Online LTD.). Так, для определения вредоносности веб-сайта используется набор данных, который разделен на несколько компонентов, в которые включают данные, собранные из множества источников данных: IP, домен, заголовки, текстовые поля, которым присваивают баллы на основе сравнения с известными шаблонами.
[5]  С другой стороны, подобный подход нашел свое отражение в документе RU2668710C1 (Group-IB TDS, LTD), где для обнаружения вредоносных доменных имен анализируют веб-ресурс на основе установленных признаков подозрительности.
[6]  Ко второй категории относятся динамические виды анализа, которые основаны на обходе подозрительных веб-ресурсов специальными инструментами (например, АСООС или client honeypot), служащими для отслеживания признаков активности веб-ресурсов.
[7]  Так, например, в документе KR101190261B1 (для изучения был использован машинный перевод) описан подход, в котором веб-искатели загружают веб-страницы с подозрительным содержанием и после анализирует отрицательное поведение веб-сайта и состояние загруженного вредоносного ПО в песочнице.
[8]  Все описанные выше подходы помогают обезопасить пользователей от вредоносных веб-ресурсов, однако имеют ряд ограничений, к которым можно отнести по меньшей мере следующее: злоумышленники обходят их путём маскировки своих целевых веб-сайтов, что выполняется при помощи создания цепочек веб-ресурсов, последовательно переадресующих пользователя, причём в некоторых из которых на целевой ресурс можно перейти, только пройдя всю цепочку.
[9]  С другой стороны, названные методы позволяют обнаруживать только вредоносные страницы, использующие шаблонные, хорошо известные технические уязвимости, но при этом не защищают пользователей от воздействия методами социальной инженерии.
[10] Кроме того, большинство динамических методов обнаружения вредоносных веб-ресурсов требуют больших ресурсных затрат.
[11] Настоящее техническое решение предлагает использование пересечения цепочек перенаправления для выявления в них шаблонов, часто встречающихся при взаимодействии со страницами злоумышленников.
[12] Стоит отметить, что использование перенаправлений на несколько ресурсов позволяет мошенникам разделять использование веб-страниц известных брендов и собственно мошенническую страницу. Это осложняет процессы блокировки, т.к. если конечный мошеннический ресурс содержит меньше нарушений, к нему может быть применено меньшее количество политик и правил, дающих право ответственной организации на блокировку ресурса. Кроме того, использование нескольких веб-ресурсов позволяет злоумышленникам ограничить возможность посещения конечного веб-ресурса со стороны организаций, занимающихся реагированием на подобные атаки, притом дает техническую возможность гибко изменять любое промежуточное звено в цепочке, не обновляя все точки входа.
[13] Из приведенного выше анализа уровня техники становится очевидна потребность в разработке способов для выявления именно целевых вредоносных веб-ресурсов. Ведь в описанном сценарии, с использованием цепочек перенаправлений, именно выявление и блокировка целевого вредоносного веб-ресурса лишает злоумышленников возможности осуществлять собственно мошенничество, притом нет необходимости тратить время и силы на блокировку всех (как правило, весьма многочисленных) промежуточных веб-ресурсов.
[14] Следовательно, настоящее техническое решение создано для преодоления по меньшей мере одного обозначенного выше недостатка известных способов для выявления целевых вредоносных веб-ресурсов.
РАСКРЫТИЕ
[15] Технической проблемой, на решение которой направлено заявленное решение, является создание способа и системы выявления целевых вредоносных веб-ресурсов.
[16] Технический результат заключается в повышении точности выявления целевого вредоносного веб-ресурса.
[17] Заявленный результат достигается за счет осуществления способа выявления целевого вредоносного веб-ресурса, который содержит:
подготовительный этап, на котором:
получают указание на по меньшей мере один известный вредоносный входной веб-ресурс;
строят по меньшей мере одну цепочку перенаправлений для каждого из полученных вредоносных входных веб-ресурсов, при этом
для построения по меньше мере одной цепочки перенаправлений используют заранее сформированные векторы поведения пользователя, имитирующие его поведение, и параметры пользователя, имитирующие окружение пользователя;
объединяют построенные цепочки перенаправлений в по меньшей мере один граф перенаправлений;
анализируют граф перенаправлений и выявляют правила перенаправления пользователей до вредоносных целевых веб-ресурсов.
рабочий этап, на котором:
получают от пользовательского устройства указание на по меньшей мере один подозрительный входной веб-ресурс, а также параметры пользовательского устройства;
строят по меньшей мере одну цепочку перенаправлений для каждого из полученных подозрительных входных веб-ресурсов;
проверяют построенную по меньшей мере одну цепочку перенаправлений на соответствие по меньшей мере одному правилу перенаправления пользователей до вредоносных целевых веб-ресурсов;
в ответ на соответствие по меньшей мере одной построенной цепочки перенаправлений по меньшей мере одному правилу перенаправления пользователей до вредоносных целевых веб-ресурсов, выявляют в по меньшей мере одной построенной цепочке целевой вредоносный веб-ресурс, блокируют его и отправляют уведомление на пользовательское устройство.
[18] В частном варианте реализации описываемого способа указание может представлять собой по меньшей мере: доменное имя, IP адрес, URL-адрес.
[19] В частном варианте реализации описываемого способа векторы поведения пользователей содержат указания для приложений, причем указания представляют собой набор и последовательность действий, включающих в себя по меньшей мере следующие действия: переход по ссылке, ввод данных, выбор из предложенных вариантов.
[20] В частном варианте реализации описываемого способа параметры пользователей включают в себя по меньшей мере: IP-адрес пользовательского устройства, геолокацию пользователя, время перехода, информация об устройстве пользователя, операционную систему, язык интерфейса операционной системы, используемого провайдера, браузер, версию браузера, язык интерфейса браузера, cookie-файлы, системное и фактическое время в системе пользовательского устройства, url-referrer.
[21] В частном варианте реализации описываемого способа дополнительно собирают информацию о каждом веб-ресурсе, входящем в выявленные цепочки перенаправлений, причем к такой информации относят по меньшей мере:
• URL-ссылку, указывающую на данный веб-ресурс,
• ID и другие параметры в теле URL-ссылки;
• Время и дата выявления;
• Данные о геолокации веб-ресурса;
• Информация о провайдере, связанном с веб-ресурсом;
• ID/имя компании/бренда, которые использует данный веб-ресурс.
[22] В частном варианте реализации описываемого способа для построения графа перенаправлений учитывают все цепочки перенаправления, причём каждая цепочка содержит информацию: о векторе поведения пользователя и параметрах пользователя, использованных при построении данной цепочки, о каждом веб-ресурсе, содержащемся в данной цепочке перенаправлений, а также о последовательности этих веб-ресурсов.
[23] В частном варианте реализации описываемого способа граф перенаправлений представляет собой совокупность узлов, каждый из которых соответствует выявленному веб-ресурсу, а также ребер, каждое из которых соответствует перенаправлению с одного веб-ресурса на другой веб-ресурс.
[24] В частном варианте реализации описываемого способа при объединении множества полученных цепочек перенаправлений в по меньшей мере один граф перенаправлений веб-ресурсы считают аффилированными, если выполняется по меньшей мере одно из условий:
• все составные части URL-адресов веб-ресурсов, то есть домен, имя страницы и имена параметров совпадают;
• если длина доменного имени, длина имени домена верхнего уровня, длина названия страниц и имена параметров совпадают;
• если совпадают IP-адреса веб-ресурсов.
[25] В частном варианте реализации описываемого способа при объединении множества полученных цепочек перенаправлений в по меньшей мере один граф аффилированные веб-ресурсы считают одной вершиной.
[26] В частном варианте реализации описываемого способа при объединении множества полученных цепочек перенаправлений в по меньшей мере один граф в многопоточном режиме сравнивают каждую вершину каждой выявленной цепочки перенаправлений с вершинами других выявленных цепочек перенаправлений, и
- если находят совпадающие вершины, которые присутствуют более чем в одной цепочке, то эти совпадающие вершины считают одной вершиной графа.
- если находят вершину, отличающуюся от всех других вершин, то её добавляют в граф в качестве новой вершины, причём если в графе пока не существует ребро, связывающее эту новую вершину с предыдущей, то такое ребро добавляют.
[27] В частном варианте реализации описываемого способа целевой веб-ресурс выявляют посредством дополнительных проверок веб-ресурса на наличие вредоносных действий.
[28] В частном варианте реализации описываемого способа целевой веб-ресурс выявляют посредством анализа кодов HTTP-ответов, получаемых браузером.
[29] В частном варианте реализации описываемого способа на рабочем этапе цепочку перенаправлений отбрасывают, если она содержит меньше заранее заданного количества перенаправлений.
[30] В частном варианте реализации описываемого способа на рабочем этапе для построения по меньше мере одной цепочки перенаправлений используют заранее сформированные параметры пользователя, соответствующие полученным от пользовательского устройства параметрам пользовательского устройства.
[31] В частном варианте реализации описываемого способа на рабочем этапе для построения по меньше мере одной цепочки перенаправлений используют заранее сформированные векторы поведения пользователя, посредством которых на предварительном этапе была построена по меньшей мере одна цепочка перенправлений.
[32] В частном варианте реализации описываемого способа на рабочем этапе используют такие векторы поведения пользователя, которые использовались на предварительном этапе для построения по меньшей мере одной цепочки перенаправлений совместно с параметрами пользователя, соответствующим полученным от пользовательского устройства параметрам пользовательского устройства.
[33] В частном варианте реализации описываемого способа на рабочем этапе для построения по меньше мере одной цепочки перенаправлений используют все заранее сформированные векторы поведения пользователя.
[34] В частном варианте реализации описываемого способа правила перенаправления пользователей до вредоносных целевых веб-ресурсов для каждого веб-ресурса, за исключением целевого веб-ресурса, включают в себя:
• условия перехода на очередной веб-ресурс, зависящие от параметров пользователя;
• условия перехода на очередной веб-ресурс, зависящие от вектора поведения пользователя;
• условия перехода на очередной веб-ресурс, зависящие как от параметров пользователя, так и от вектора поведения пользователя.
[35] Также возможно достижение заявленного результата за счёт осуществления способа выявления целевого вредоносного веб-ресурса, содержащего шаги, на которых:
получают от пользовательского устройства указание на по меньшей мере один подозрительный входной веб-ресурс, а также параметры пользовательского устройства;
строят по меньшей мере одну цепочку перенаправлений для каждого из полученных подозрительных входных веб-ресурсов;
проверяют построенную по меньшей мере одну цепочку перенаправлений на соответствие по меньшей мере одному правилу перенаправления пользователей до вредоносных целевых веб-ресурсов;
в ответ на соответствие по меньшей мере одной построенной цепочки перенаправлений по меньшей мере одному правилу перенаправления пользователей до вредоносных целевых веб-ресурсов, выявляют в по меньшей мере одной построенной цепочке целевой вредоносный веб-ресурс, блокируют его и отправляют уведомление на пользовательское устройство.
[1] Заявленный результат также достигается за счет реализации вычислительного устройства для выявления целевого вредоносного ресурса, выполненного с возможностью реализации способа выявления целевого вредоносного ресурса по любому из вышеперечисленных вариантов.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[36] Реализация изобретения будет описана в дальнейшем в соответствии с прилагаемыми чертежами, которые представлены для пояснения сути изобретения и никоим образом не ограничивают область изобретения. К заявке прилагаются следующие чертежи:
[37] Фиг.1 иллюстрирует упрощенный вариант совокупности вредоносных веб-ресурсов, на выявление в которой целевых вредоносных веб-ресурсов направлено описываемое решение.
[38] Фиг.2 иллюстрирует упрощенный реализации системы выявления целевого вредоносного веб-ресурса.
[39] Фиг.3А, 3Б иллюстрируют блок-схему рабочего и подготовительных этапов выполнения способа выявления целевого веб-ресурса.
[40] Фиг. 4А иллюстрирует упрощённый пример трёх цепочек перенаправлений в составе совокупности вредоносных веб-ресурсов.
[41] Фиг. 4Б иллюстрирует упрощённый пример цепочки перенаправлений, содержащей схожие веб-ресурсы.
[42] Фиг. 4В иллюстрирует упрощенный пример объединения нескольких цепочек перенаправлений в граф перенаправлений.
[43] Фиг. 5 иллюстрирует вычислительное устройство для реализации описанного способа.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[44] В приведенном ниже подробном описании реализации изобретения приведены многочисленные детали реализации, призванные обеспечить отчетливое понимание настоящего изобретения. Однако, квалифицированному в предметной области специалисту, будет очевидно каким образом можно использовать настоящее изобретение, как с данными деталями реализации, так и без них. В других случаях хорошо известные методы, процедуры и компоненты не были описаны подробно, чтобы не затруднять излишне понимание особенностей настоящего изобретения.
[45] Кроме того, из приведенного изложения будет ясно, что изобретение не ограничивается приведенной реализацией. Многочисленные возможные модификации, изменения, вариации и замены, сохраняющие суть и форму настоящего изобретения, будут очевидными для квалифицированных в предметной области специалистов.
[48] На Фиг.1 упрощенно показана совокупность 100 вредоносных веб-ресурсов 101…-198, на выявление в которой целевых вредоносных веб-ресурсов, таких как целевой вредоносный веб-ресурс 194, направлено описываемое решение.
[49] В рамках настоящего описания входным веб-ресурсом или первой веб-страницей будет называться веб-страница, на которую происходит первое перенаправление пользователя, которого злоумышленники побудили воспользоваться данной совокупностью 100 вредоносных веб-ресурсов. Например, на Фиг.1 входными веб-ресурсами (первыми веб-страницами) являются веб-страницы 101, 102, 103, 104, 105, 106, 107 и 108, расположенные на сервере 110. Следует заметить, что для простоты восприятия веб-ресурсы на чертеже сгруппированы всего на трёх серверах, 110, 120 и 190. В реальной инфраструктуре злоумышленников веб-ресурсы могут располагаться на сотнях различных серверов, притом расположенных в разных странах.
[50] Первое перенаправление пользователя, показанное штриховой линией, в данном примере происходит на входной веб-ресурс 105.
[51] Первое перенаправление пользователя, как правило, реализуют с помощью рекламы, фишинговых e-mail, рассылок в мессенджерах, а также методов социальной инженерии. Дальнейшими перенаправлениями пользователя, такими, как перенаправление со входного веб-ресурса 105 на промежуточный веб-ресурс 122, управляют входящие в состав используемой злоумышленниками инфраструктуры системы распределения трафика или TDS (от англ. traffic distribution system), такие как система распределения трафика 109 или система распределения трафика 129. Такие системы автоматически определяют, на какой следующий веб-ресурс направить пользователя, в зависимости от различных параметров используемого пользователем браузера, настроек его операционной системы, введённых пользователем данных, например ответов на вопросы и множества других критериев.
[52] Целевым веб-ресурсом в рамках данного описания называется последняя веб-страница в цепочке перенаправлений; такими на Фиг.1 являются веб-страницы 191, 192, 193, 194, 194, 196, 197, 198, расположенные на сервере 190. Именно на такой веб-странице, на целевом ресурсе, и происходят вредоносные действия, например, введённому в заблуждение пользователю предоставляется возможность якобы оплатить совершённую покупку банковской картой. Именно целевые веб-ресурсы являются прямым источником дохода злоумышленников, и именно блокирование целевых веб-ресурсов в наибольшей степени эффективно разрушает используемую злоумышленниками структуру.
[53] Также настоящее описание раскрывает термин «цепочка перенаправлений»; так называется вся последовательность веб-ресурсов, на которые был перенаправлен пользователь от входного веб-ресурса до целевого веб-ресурса. Иными словами, это весь набор веб-страниц, которые пользователь посетил, пройдя от входного до целевого веб-ресурса. На упрощённом примере, приведённом на Фиг.1, цепочка перенаправлений состоит из веб-страниц 105, 122, 194. В реальных структурах, подобных показанной на Фиг.1, перенаправлений (посещённых пользователем веб-страниц) может быть значительно больше, соответственно, заметно больше и длина цепочки перенаправлений.
[54] Дополнительные и/или альтернативные характеристики, аспекты и преимущества вариантов осуществления настоящего технического решения станут очевидными из последующего описания, прилагаемых чертежей и прилагаемой формулы изобретения.
[55] Настоящая технология направлена на обеспечение компьютерно-реализуемого способа и системы выявления целевого вредоносного веб-ресурса.
[56] Заявленный компьютерно-реализуемый способ выявления целевого вредоносного веб-ресурса, осуществляется посредством системы 200 выявления целевого вредоносного веб-ресурса, представленной на Фиг.2, которая содержит по меньшей мере: сеть передачи данных 210, вычислительное устройство, выполненное с возможностью выполнения способа выявления целевого вредоносного веб-ресурса 220; по меньшей мере одно внешнее хранилище данных 230; по меньшей мере одно пользовательское устройство 240, 241, 242.
[57] В качестве сети передачи данных 210 может выступать, например, сеть Интернет или любая другая вычислительная сеть.
[58] В еще одном неограничивающем варианте осуществления настоящего изобретения вычислительное устройство 220 выполнено с возможностью получения информации о входных веб-ресурсах. В качестве неограничивающего примера, к такой информации может относиться указание на по меньшей мере один входной сетевой ресурс (первую веб-страницу). Кроме того, в качестве указания может приниматься URL адрес веб-ресурса, ссылки типа Bitly (сокращенные URL), доменное имя, IP-адрес.
[59] В еще одном неограничивающем варианте осуществления настоящего изобретения вычислительное устройство 220 может включать в себя сканирующая систему (сканер) 221 (не показан на Фиг.2) для поиска и получения указаний на входной веб-ресурс. Сканер может быть оснащён активным сетевым оборудованием (не показано на Фиг.2) и посредством его связываться по сети передачи данных 210 с по меньшей мере одним пользовательским устройство (240-242). В качестве активного сетевого оборудования могут быть использованы, например, маршрутизаторы, коммутаторы, шлюзы (на Фиг.2 не показаны).
[60] В еще одном неограничивающем варианте осуществления настоящего изобретения вычислительное устройство 220 может включать специальный фреймворк (программную платформу), позволяющий, например, оператору или пользователю вычислительного устройства посредством заполнения специальной формы предоставлять системе, реализующей способ, указания на входной веб-ресурс.
[61] В неограничивающем варианте осуществления настоящей технологии вычислительное устройство 220 выполнено с возможностью подключаться к внешним системам, например к внешнему хранилищу данных 230 и базам данных через сеть передачи данных 210, то есть через прямые каналы и / или одну или несколько сетей, или других общих каналов, которые могут включать в себя Интернет, интрасети и / или другие сети, и могут включать в себя проводные и / или беспроводные линии связи.
[62] В качестве примера вычислительное устройство 220 может быть выполнено с возможностью получения данных как из внешних хранилищ данных, таких как хранилище 230 (содержащих, например, упорядоченные в базе данных сведения об известных мошеннических веб-ресурсах), так и из внутреннего хранилища данных 225. Причем внутренняя база данных, содержащаяся во внутреннем хранилище 225 может периодически пополняться вычислительным устройством 220, например, с помощью сканирования сети, или посредством получения информации через специальные формы на веб-ресурсах.
[63] Кроме того, в одном из неограничивающих вариантов осуществления настоящей технологии набор указаний для анализа, сохраненный во внутреннем 225 или внешнем хранилище данных 230 может быть получен от находящихся в различных точках земного шара пользователей сети Интернет, задействованных в сборе информации о вредоносных веб-ресурсах.
[64] В качестве примера, но не ограничиваясь им, вычислительное устройство 220 выполнено с дополнительной возможностью зеркалирования трафика со всех подключенных к нему пользовательских устройств 240-242. При этом вычислительное устройство 220 может быть дополнительно выполнено с возможностью анализа полученного от пользовательского устройства трафика с целью выявлений в полученном трафике указаний на входной веб-ресурс.
[65] В одном неограничивающем варианте осуществления внутреннее хранилище данных 225 хранит информацию, связанную со множеством сетевых ресурсов. Дополнительно или опционально, как известно специалистам в данной области техники, внутреннее хранилище данных 225 может включать в себя одну или несколько баз данных (на Фиг.2 не изображены). Указанные отдельные базы данных могут являться частями одной и той же физической базы данных или могут быть реализованы как самостоятельные физические единицы.
[66] Вычислительное устройство 220, не ограничиваясь перечисленным, может включать в себя один или несколько процессоров, память и интерфейс связи, которые соединены вместе шиной или другим каналом связи, хотя могут быть использованы другие типы сетевых устройств. Вычислительное устройство 220 обрабатывает (анализирует) информацию, принятую от других устройств через сеть связи, например, в соответствии с протоколом RFC приложения на основе HTTP. Различные приложения могут работать на устройстве 220 и передавать данные (например, файлы или веб-страницы) в ответ на запросы от пользовательских устройств (240-242).
[67] Стоит также отметить, что вычислительное устройство может быть также соединено и с любыми другими устройствами, например, такими как активное сетевое оборудование (маршрутизаторы, коммутаторы, шлюзы) и клиентские устройства (мобильные устройства, смартфоны, ПК, МФУ), или базами данных по сети передачи данных, в качестве которой может выступать, например, сеть Интернет или любая другая вычислительная сеть.
[68] В одном неограничивающем варианте осуществления вычислительное устройство 220 выполнено с возможность получения указаний на входной веб-ресурс структуры злоумышленников по сети передачи данных 210; с возможностью моделирования цепочки перенаправлений посредством имитации поведения пользователя на основе данных векторов и образов пользователей, полученных из внутреннего 225 или внешнего 230 хранилища данных; выстраивания графа перенаправлений на основе накопленных данных о цепочках перенаправлений; а также анализа с целью выявления особенностей выявленных цепочек перенаправлений с целью создания правил для идентификации целевого мошеннического ресурса. Дополнительно вычислительное устройство 220 выполнено с возможностью визуализации созданного единого графа перенаправлений с целью предоставления операторам или пользователям возможности визуального анализа цепочки перенаправлений.
[69] В одном возможном варианте реализации настоящей технологии вычислительной устройство 220 выполнено с возможностью получения указания от по меньшей мере одного пользовательского устройства (например, 240) с целью предварительного анализа цепочки перенаправлений и блокировки целевого мошеннического веб-ресурса для пользователя.
[70] Кроме того система 200 может включать в себя различных пользователей веб-сайтов и/или приложений/служб, подключающихся к системе через пользовательские устройства (такие, как устройства 240-242), которые могут представлять собой стационарные устройства (например, настольный компьютер, рабочая станция, или устройство IoT) или мобильные устройства (например, смартфон, планшетный компьютер, ноутбук), для взаимодействия с клиентскими веб-приложениями, такими как браузер или приложение, разработанное для доступа к какой-нибудь системе/услуге.
[71] Пользовательские устройства 240-242 выполнены с возможность связи по сети передачи данных 210 с вычислительным устройством 220 с целью предоставления ему данных для анализа вычислительным устройством 220 указаний на входной веб-ресурс.
[72] Вычислительное устройство 220 выполнено с возможностью установления соединения с пользовательскими устройствами 240-242 посредством сети передачи данных 210, при этом вычислительное устройство 220 может пересылать на пользовательские устройства 240-242 специально сконфигурированный модуль, который может быть реализован на любом известном языке программирования, который служит для установления защищенного канала в сети передачи данных 210 и побуждает пользовательское устройство ретранслировать (зеркалировать) на вычислительное устройство 220 указания на все веб-ресурсы, с которыми взаимодействует пользователь посредством пользовательского устройства 240-242. Стоит отметить, что частоту получения данных от пользовательских устройств 240-242, категорию этих данных, исключения и т.д. устанавливает непосредственно пользователь. Кроме того, вычислительное устройство 220 выполнено с возможностью получения данных о системном окружении пользователя для выполнения моделирования цепочки перенаправлений, при этом данные, входящие в системное окружение пользователей, не содержат персональных данных. В качестве примера, к таким данным могут относиться регион, в котором находится пользователь, версия используемого браузера, тип и версия устройства пользователя, используемая ОС и т.д.
[73] Пользовательские устройства 240-242 выполнены с возможностью подключения по сети передачи данных 210 к вычислительному устройству 220 с целью предоставления ему данных для анализа.
[74] Пользовательские устройства 240-242 выполнены с дополнительной возможностью установки соединения по сети передачи данных 210 с вычислительным устройством 220 с целью предоставления ему возможности получать выстроенные цепочки перенаправлений.
[75] Функциональные возможности, приписываемые в данном документе системе 200, могут распределяться между ее компонентами альтернативным способом, например, путем слияния или дальнейшего разделения функций одного или нескольких компонентов, или могут распределяться среди другой совокупности компонентов. Таким образом, хотя только один вариант конкретного компонента системы может быть проиллюстрирован на Фиг. 2, следует понимать, что могут быть использованы другие комбинации компонентов, входящих в систему.
[76] Со ссылкой на Фиг. 3A далее будет описан компьютерно-реализуемый способ выявления целевого вредоносного веб-ресурса 300, выполняемый вычислительным устройством 220.
[77] Способ 300 начинается с подготовительного этапа, включающего шаги, которые будут подробнее описаны ниже.
ШАГ 310 ПОЛУЧАЮТ УКАЗАНИЕ НА ПО МЕНЬШЕЙ МЕРЕ ОДИН ИЗВЕСТНЫЙ ВРЕДОНОСНЫЙ ВХОДНОЙ ВЕБ-РЕСУРС
[78] Первый шаг подготовительного этапа способа 300 заключается в получении указания на по меньшей мере один известный вредоносный входной веб-ресурс.
[79] Указания на множество веб-ресурсов могут представлять собой как сами веб-ресурсы, их доменные имена и/или IP адреса, а также, например, и ссылки на веб-ресурсы, в частности URL, доступные по сети передачи данных 210 или иной сети (не показана), вычислительному устройству 220.
[80] Указания на по меньшей мере один известный входной вредоносный сетевой ресурс может быть получено как из внешнего 230, так и из внутреннего хранилища данных 225. К последним в качестве примера, могут относиться базы данных веб-сайтов, связанных со злоумышленниками; также может использоваться любое другое внешнее хранилище данных, которое выполнено с возможностью хранения по меньшей мере одного указания на входной веб-ресурс.
[81] Как было указано ранее, указание на входной веб-ресурс также может быть получено вычислительным устройством 220 из внутреннего хранилища данных 225. В неограничивающих вариантах осуществления внутреннее хранилище данных 225 может пополняться указаниями на веб-ресурсы либо с помощью получения информации от пользователей, либо с помощью процедуры сканирования.
[82] В других вариантах осуществления получение по меньшей мере одного указания непосредственно от пользователя может осуществляться, например, при помощи специальной формы, созданной в пользовательском фреймворке, описанном ранее, либо может быть занесено во внутреннее хранилище данных 225 ручным способом.
[83]  В других вариантах реализации настоящей технологии получение по меньшей мере одного указания может осуществляться путем сбора гиперссылок на заведомо вредоносные веб-ресурсы из сообщений в мессенджерах, социальных сетях, а также почтовых ящиках пользовательских устройств, а также в процессе выполнения зеркалирования трафика. В этом случае вычислительное устройство 220 может быть выполнено с возможностью извлечения гиперссылок или иных указаний из полученных сообщений.
[84] Кроме того, в других вариантах реализации настоящей технологии, указание на по мере один известный вредоносный входной веб-ресурс может быть получено посредством выполнения вычислительным устройством 220 сканирования сетевых ресурсов.
[85] Для этого некоторых неограничивающих вариантах осуществления на вычислительном устройстве 220 может быть реализован веб-робот или краулер, выполняющий функцию сканирования сетевых веб ресурсов. Вычислительное устройство 220 может дополнительно содержать планировщик задач, в котором хранится расписание запуска краулера, а также список иных условий для выполнения сканирования сети.
[86] В других неограничивающих вариантах осуществления в качестве сканера для поиска сетевых ресурсов может использоваться любое легальное ПО, способное проводить исследование сети и вычислять веб-ресурсы, соответствующие заданным параметрам.
[87] После того, как вычислительное устройство 220 получило указание на известный входной вредоносный веб-ресурс способ 300 переходит к выполнению шага 320.
ШАГ 320 СТРОЯТ ПО МЕНЬШЕЙ МЕРЕ ОДНУ ЦЕПОЧКУ ПЕРЕНАПРАВЛЕНИЙ ДЛЯ КАЖДОГО ИЗ ПОЛУЧЕННЫХ ВРЕДОНОСНЫХ ВХОДНЫХ ВЕБ-РЕСУРСОВ, ПРИ ЭТОМ ДЛЯ ПОСТРОЕНИЯ ПО МЕНЬШЕЙ МЕРЕ ОДНОЙ ЦЕПОЧКИ ПЕРЕНАПРАВЛЕНИЙ ИСПОЛЬЗУЮТ ЗАРАНЕЕ СФОРМИРОВАННЫЕ ВЕКТОРЫ ПОВЕДЕНИЯ ПОЛЬЗОВАТЕЛЯ, ИМИТИРУЮЩИЕ ЕГО ПОВЕДЕНИЕ, И ПАРАМЕТРЫ ПОЛЬЗОВАТЕЛЯ, ИМИТИРУЮЩИЕ ЕГО ОКРУЖЕНИЕ.
[88] На данном шаге выстраивают по меньшей мере одну цепочку перенаправлений для каждого из полученных входных веб-ресурсов, при этом для выстраивания по меньше мере одной цепочки перенаправлений используют заранее сформированные векторы поведения пользователя, имитирующие его поведение и параметры пользователя, имитирующие его окружение.
[89] Следует заметить, что под окружением пользователя в рамках данного описания подразумевается так называемое системное окружение, то есть набор параметров, характеризующих настройки самого пользовательского устройства, установленной на нём операционной системы, используемого браузера и т.д. К подобным настройкам относится, например, IP-адрес, язык интерфейса операционной системы и т.д.
[90] Выполнение данного шага начинается с того, что в ответ на полученное указание выполняется переход на первый сетевой веб-ресурс, о котором известно, что он относится к вредоносным веб-ресурсам, а именно ко входному этапу многоэтапного интернет-мошенничества.
[91] Стоит отметить, что входной вредоносный веб-ресурс, как правило, создан злоумышленниками специально для сбора различной информации об окружении пользователя, и как правило, он выполняет именно такую функцию. К собираемой информации может относиться по меньшей мере следующая: IP-адрес, тип устройства пользователя, версии установленных на устройстве программ, регион, язык интерфейса устройства, язык операционной системы, язык интерфейса используемого для посещения веб-ресурса приложения, названия провайдера, хранящиеся на устройстве куки (cookie). Эти данные в системе злоумышленников используются для составления портрета пользователя и его окружения. Выявленная информация поступает в систему распределения трафика (TDS) мошенников для выбора следующего этапа перенаправления.
[92] Какой-либо контент на входном веб-ресурсе может отсутствовать, либо он может представлять собой ссылку для перехода на следующую веб-страницу. В то же время контент на входном веб-ресурсе может и присутствовать, и содержать, например, красочный рекламный баннер, пригласительный текст или форму анкетирования пользователя.
[93] Каждый из промежуточных веб-ресурсов сетевой инфраструктуры злоумышленников также может собирать какие-либо сведения о пользователе (как «вручную», например, путем побуждения пользователя к заполнению опросов, анкет, так и автоматически, на основании анализа устройства пользователя, его геолокации, времени посещения и пр.). На основании полученной информации система распределения трафика обычно на следующем этапе перенаправляет пользователя на ресурс, содержащий текст на знакомом ему языке, со знакомым брендом и иными особенностями, обеспечивающими более высокую конверсию (то есть в данном случае – решение пользователя «участвовать в акции», «получить приз за опрос» и т.д). Таким образом злоумышленники стараются избежать блокировки промежуточных сетевых ресурсов (в самом деле, формально такие промежуточные ресурсы сами по себе ничего не нарушают), но в то же время перенаправить пользователя на действующий активный целевой ресурс, который позволит так или иначе выманить деньги. При этом целевой веб-ресурс конфигурируют таким образом, что перейти на него напрямую, не проходя всю цепочку перенаправлений, невозможно.
[94] Настоящая технология предполагает, что для построения цепочки перенаправления необходимо сымитировать поведение реального пользователя. Чтобы используемая злоумышленниками система распределения трафика «была уверена», что перенаправляет реального пользователя, те данные, которые она собирает на каждом шаге перенаправления, должны быть идентичны данным, которые поступали бы при визите на входной ресурс живого пользователя сети Интернет.
[95] В соответствии с этим, на каждом этапе мошенничества способ 300 предполагает использование множества векторов поведения пользователя и параметров пользователя для того, чтобы система распределения трафика злоумышленников оказывалась в состоянии предоставить имитируемому пользователю целевой контент. Это позволит выстроить по меньшей мере одну цепочку перенаправления от обнаруженных входных веб-ресурсов, выявить закономерности, на основании которых происходит перенаправление, и впоследствии использовать эти закономерности, чтобы выявлять аналогичные целевые мошеннические веб-ресурсы и блокировать их.
[96] В соответствии с описанным, для выполнения способа 300 используют контролируемую среду выполнения, например, виртуальные машины со специально установленной ОС, песочницу, эмулятор или любые другие приложения, способные зарегистрировать последовательность произведенных пользователем действий и изменений, произошедших в операционной системе в связи с их выполнением. В частности, для иллюстративного примера, возможно использование виртуальных браузеров в контролируемой среде, снабжённых средствами автоматизации (таких браузеров, например, как Селениум). При его использовании в настройках виртуального браузера устанавливается соответствующее расширение, выполняется очистка кэша браузера, затем переход на веб-ресурс. При этом средствами браузера также выполняется логирование, то есть браузер автоматически сохраняет на жёстком диске все сведения о выполненных переходах с ресурса на ресурс, соответствующих этим переходам подставленных в URL-адрес дополнительных параметрах, об используемых в ходе этого векторах поведения пользователей и профилях пользователя, а также делает скриншоты каждого посещённого веб-ресурса. Кроме браузера, для целей логирования также может использоваться любое другое доступное ПО, например скрипт, написанный на любом языке программирования и способный интерпретироваться в контролируемой среде для получения последовательности переходов с одного веб-ресурса на другой.
[97] Стоит отметить, что имитация поведения пользователя на мошенническом веб-ресурсе происходит с помощью заранее сформированных векторов поведения и параметров (профилей) пользователя, которые могут храниться как во внутреннем хранилище данных 225 системы 200, так и во внешнем доверенном хранилище 230, доступном по сети передачи данных 210.
[98] В неограничивающих вариантах осуществления настоящей технологии векторы поведения пользователя представляют собой заблаговременно написанные скрипты. Они могут быть выполнены на любом языке программирования, позволяющем записывать в виде скрипта указания для приложений, в том числе для браузера (например, для браузера Google Chrome). Такие указания обычно представляют собой набор команд на выполнение последовательности действий, таких как переход по ссылке, ввод данных, выбор одного из предложенных вариантов в списке вариантов и т.п. Векторы поведения пользователей могут храниться как в общей базе данных 225 устройства 220, так и в специализированной базе данных векторов поведения пользователей, организованной любым общеизвестным образом. Каждый файл, в котором записан один конкретный скрипт, или каждая запись базы данных, содержащая определённый скрипт (вектор поведения пользователя), могут быть снабжены уникальным идентификатором, позволяющим, во-первых, отличать данный скрипт от остальных, во-вторых, быстро находить его в любых базах данных, где он упоминается. Собственно идентификатор может представлять собой, например, десятиричное число или результат взятия хеш-функции от текста данного скрипта.
[99] Параметры пользователя могут храниться, например, в формате текстового файла, либо в формате записи базы данных, как в общей базе данных 225 устройства 220, так и в специализированной базе параметров (профилей) пользователей, организованной любым общеизвестным образом. Каждый такой файл или запись базы данных, содержащий определённый профиль (параметры) пользователя, могут быть снабжены уникальным идентификатором, позволяющим, во-первых, отличать данный профиль от остальных, во-вторых, быстро находить его в любых базах данных, где он упоминается. Собственно идентификатор может представлять собой, например, десятиричное число или результат взятия хеш-функции от содержимого данного файла или записи.
[100] Каждый такой файл или запись параметров пользователя содержит набор типовых параметров, используемых современными интернет-приложениями, и доступных для считывания любым веб-ресурсам. Пользуясь теми же самыми параметрами, получают информацию о пользователе и его окружении любые легитимные веб-сайты: поисковые системы, интернет-магазины и т.д. Эти параметры хорошо известны специалистам в предметной области. Например, в число этих параметров могут входить по меньшей мере: IP-адрес пользователя, геолокация устройства пользователя, время перехода, информация об устройстве пользователя, об операционной системе, название используемого провайдера, версия используемого браузера, cookie-файлы, время (системное и фактическое), url-referrer и др.
[101] Перед переходом на входной ресурс вычислительное устройство 220 считывает из файла заранее сохранённые параметры пользователя и помещает их в контролируемую среду выполнения в качестве значений переменных для данной среды. С «точки зрения» любой системы управления трафиком, эти параметры будут идентичны настройкам окружения некоего определённого пользователя, который зашёл на данный веб-ресурс при помощи какого-то определённого устройства. После чего вычислительное устройство 220, в соответствии с используемым скриптом, описывающим заданный вектор поведения пользователя, выполняет переход на входной веб-ресурс по указанию, полученному на этапе 310. Таким образом, система распределения трафика злоумышленников получает возможность считать заданные параметры пользователя, причём они ничем принципиально не отличаются от аналогичных параметров посетителей, посещающих тот же веб-сайт.
[102] Стоит отметить, что как правило мошенники нацелены не на всё население планеты разом, а на вполне определенную категорию пользователей. Например, на людей, проживающих в одном регионе, или на пользователей, у которых установлена некая известная версия браузера, имеющая уязвимость, и так далее. Поэтому некоторые переходы на входной веб-ресурс (те, где система, реализующая описываемый способ имитировала параметры или действия «не подходящего» злоумышленникам пользователя) не приведут к построению цепочки перенаправлений.
[103] Во внутреннем хранилище 225 системы 200, либо во внешнем хранилища данных 230, может храниться широкий спектр заранее подготовленных различных векторов поведения пользователя и различных параметров пользователя. Технически хранение таких наборов данных может быть реализовано, например, в виде таблицы, в каждой строке которой (например, в строке «страна пользователя») хранится набор различных значений, которые могут быть выбраны для имитации очередного посетителя (например, «Испания, Франция, Россия»), либо в базе данных, организованных любым общеизвестным образом.
[104] Для каждого входного веб-ресурса используют по меньшей мере два различных вектора поведения пользователя и по меньшей мере два различных файла, содержащих параметры пользователя.  Иными словами, на каждый входной веб-ресурс система, реализующая описываемый способ, переходит по меньшей мере дважды, при этом имитируются и параметры, и стиль поведения двух различных пользователей. Это позволяет в дальнейшем выявлять закономерности цепочек перенаправлений.
[105] Все успешные, то есть позволившие построить цепочку перенаправлений, вектора и параметры пользователя дополнительно сохраняют в системе 200 вместе со ссылками, скриншотами и копиями содержимого веб-страниц, которые были доступны в процессе продвижения по цепочке перенаправлений, в хранилище данных 230 или 225.
[106] Перебор различных векторов поведения пользователя и параметров пользователя ведут до тех пор, пока не будет выявлен целевой веб-ресурс.
[107] Для определения того, что некий выявленный ресурс является целевым или промежуточным, осуществляют дополнительные проверки каждого веб-ресурса на наличие вредоносных действий любым известным в уровне техники методом, например, любыми методами, описанными ниже применительно к шагу 380. В одном неограничивающем примере проверка может заключаться в установлении того факта, что на данном веб-ресурсе содержится предложение ввести данные банковской карты. В другом неограничивающем примере критерием принадлежности веб-ресурса к целевым веб-ресурсам может считаться предложение приложить скан паспорта или водительского удостоверения.
[108] Возможен также вариант реализации описываемого метода, в котором определение конца цепочки перенаправлений, то есть обнаружение целевого веб-ресурса может быть реализовано на основе анализа кодов HTTP-ответов, получаемых браузером. Например, когда после по меньшей мере трех перенаправлений система 200 перестает получать HTTP-ответы, содержащие коды вида 301, 302, 303, 304 или 307, фиксируют, что с текущей веб-страницы перенаправления не выполняются, и на этом основании считают, что текущая веб-страница является целевым веб-ресурсом.
[109] На промежуточных веб-ресурсах производят проверку HTML-кода страницы веб-ресурса для выявления форм анкетирования, которые злоумышленники предлагают посетителям заполнить для перехода на следующий узел. Если такие формы обнаружены, они могут быть заполнены данными, выбираемыми в зависимости от формата каждого поля (например, поле «Телефон» заполняется семизначным цифровым набором, поле «Адрес» - некоторым взятым из базы данных адресом, относящимся к той же стране, что и используемый профиль пользователя, и т.д.). Данные для заполнения полей могут как генерироваться по заранее определённым шаблонам, так и извлекаться из заранее подготовленной базы данных, которая может быть расположена как во внутреннем 225, так и во внешнем 230 хранилище данных. Тип полей определяется на основании ключевых слов (заголовков полей) или, если это невозможно, перебором различных форматов. Основными типами форматов могут являться по меньшей мере: адрес, телефон, адрес электронной почты, ФИО, поле для произвольного текста. Стоит отметить, что для каждого формата, как при заполнении, так и при генерации по шаблону, могут быть предусмотрены разновидности, учитывающие региональную специфику; например, поле «Индекс» для РФ может заполняться шестизначной цифрой, а поле «ZIP» (почтовый индекс США) -- пятизначной.
[110] В случае, если для ранее неизвестного заголовка поля подобран нужный формат значения, данные могут использоваться для дальнейшего использования системой 200 путем сохранения подошедшего значения в базе данных, которая может быть расположена как во внутреннем 225, так и во внешнем 230 хранилище данных. При этом система 200 сохраняет для дальнейшего использования и признаки поля, и его значение или его тип, если поле возможно отнести к какому-либо типу. Среди признаков поля могут быть: длина поля, видимое на странице название поля, id поля в HTML-коде страницы, класс поля в HTML-коде страницы и прочее. В случае, если в будущем система 200 встретит неизвестное поле с одним из ранее встретившихся признаков, будет проведён поиск признака в базе данных, и, если поиск окажется успешным, будет использован формат значения или само значение, которое ранее привело к успешному подбору.
[111] Таким образом для подбора нужного формата в существующие поля вычислительное устройство 220 подставляет значения основных типов, а также их комбинаций посредством перебора до удовлетворения заранее заданного условия. При этом в соответствии с данным условием успешным подбором считается такой, который позволяет избежать появления ошибок и покинуть веб-страницу с анкетой или формой, продвинувшись дальше по цепочке перенаправлений.
[112] Использованные данные для заполнения дополнительно могут сохраняться вместе с информацией о веб-странице, на которой они были использованы, для дальнейшего анализа.
[113] Далее со ссылкой на Фиг. 4А будет описан пример построения цепочек перенаправления 400. Важно, что все данные, в том числе количество цепочек, узлов, и ребер, приведены исключительно с целью иллюстрации, вместо этих данных могут быть любые другие, полученные при выполнении способа 300, в том числе цепочки перенаправления могут содержать другие количества веб-ресурсов и переходов между ними. Для простоты восприятия нумерация веб-ресурсов, составляющих цепочки перенаправления 400, взята с Фиг. 1.
[114] В иллюстративном примере сформировано три цепочки перенаправления 410, 420, 430. Все они построены на основе полученного на шаге 310 указания на входной веб-ресурс 105. Цепочки перенаправлений 410, 420, 430 состоят из различных веб-ресурсов; это обусловлено тем, что система, как было описано применительно к шагу 320, использовала при переходе на входной веб-ресурс 105 три различных, сформированных заранее вектора поведения пользователя и три различных, сформированных заранее профиля пользователя (далее, для простоты изложения, в этом и следующем абзацах эти данные обобщённо называются «вектора»). Как можно видеть на Фиг. 4А, при переходе на входной веб-ресурс 105 с вектором пользователя 411 произошло перенаправление на веб-ресурс 121, при переходе на входной веб-ресурс 105 с другим вектором пользователя 421 произошло перенаправление на веб-ресурс 127, а при переходе на входной веб-ресурс 105 с третьим вектором пользователя 431 произошло перенаправление на веб-ресурс 122.
[115] Таким образом, за счёт успешной имитации пользователя вектором 411 была получена цепочка перенаправлений 410, состоящая из веб-ресурсов 105, 121, 135, 193. Аналогично, использование вектора 421 позволило получить цепочку перенаправлений 420, состоящую из веб-ресурсов 105, 127, 138, 194, а использование вектора 431 – цепочку перенаправлений 430, состоящую из веб-ресурсов 105, 122, 131, 194.
[116] Понятно, что веб-ресурсы 193 и 194 в данном примере являются целевыми веб-ресурсами.
[117] Следует заметить, что в процессе продвижения по цепочке перенаправлений дополнительно собирают информацию о каждом веб-ресурсе, входящем в цепочку. При этом фиксируют по меньшей мере следующую информацию:
• URL-ссылку на выявленный сетевой ресурс,
• ID и другие параметры в теле URL (ссылки), указывающей на веб-ресурс;
• Время и дата выявления;
• Данные о геолокации веб-ресурса;
• Информация о провайдере, связанном с веб-ресурсом;
• ID или имя компании или бренда, которые используются на данном веб-ресурсе.
[118] Часть названных данных может быть получена, например, путем использования открытых веб-сервисов, таких как сервис WHOIS, позволяющий получить имя регистратора, локализацию, язык, дату регистрации, контакт администратора сайта, способы связи с администратором, DNS-серверы.
[119] Сведения о компаниях или брендах, используемых на данном веб-ресурсе, могут быть получены любым общеизвестным способом, например, парсингом текста, доступного на данной странице и проверкой каждого найденного на странице слова по заблаговременно подготовленным спискам брендов и компаний, хранящимся в хранилище данных 225.
[120] После построения цепочки перенаправлений саму эту цепочку и всю перечисленную информацию о каждом из веб-ресурсов, составляющих ее, а также данные о последовательности переходов между веб-ресурсами, сохраняют во внутреннем хранилище данных 225.
[121] Далее способ 300 (возвращаясь к Фиг. 3А) переходит к выполнению шага 330.
ШАГ 330 ОБЪЕДИНЯЮТ ПОСТРОЕННЫЕ ЦЕПОЧКИ ПЕРЕНАПРАВЛЕНИЙ В ПО МЕНЬШЕЙ МЕРЕ ОДИН ГРАФ ПЕРЕНАПРАВЛЕНИЙ
[122] На следующем этапе происходит объединение выстроенных цепочек перенаправлений по меньшей мере один граф перенаправлений.
[123] Графом перенаправлений в рамках данного описания называется граф, который содержит в себе все выявленные цепочки перенаправлений, начинающиеся с по меньшей мере одного входного веб-ресурса, на который на этапе 310 было получено указание. Граф перенаправлений представляет собой совокупность вершин, каждая из которых представляет собой выявленный веб-ресурс, а также ребер, которые отражают последовательность перенаправления с одного веб-ресурса на другой между входным веб-ресурсом и целевым веб-ресурсом.
[124] Однако, стоит отметить, что хотя в простейшем случае каждая из вершин графа будет представлять собой один веб-ресурс с одним URL-адресом, в некоторых вариантах реализации описываемого способа каждая из вершин графа может представлять собой множество сгруппированных (аффилированных) веб-страниц, имеющих разные URL-адреса. Сгруппировать эти страницы и представить их в виде одной вершины позволяет то, что все они имеют общие характеристики (например, на всех этих страницах используется один и тот же бренд, либо на всех этих страницах используется один и тот же макет вёрстки, и т.д).
[125] В различных вариантах осуществления настоящей технологии для определения веб-ресурсов, которые имеют общие признаки и связаны между собой может использоваться любой известный в уровне техники метод. Например, метод, использующий сохраненные в базе данных 225 скриншоты веб-ресурсов, для выявления аффилированности их шаблонов, или методы компьютерного зрения для выявления групп визуально похожих ресурсов. Кроме того, могут использоваться методы, основанные на анализе HTML-кода веб-ресурса.
[126] При этом стоит отметить, что перед построением графа устанавливают связь каждого из выявленных аффилированных веб-ресурсов с основным. Например, это может быть сделано так, как показано на Фиг. 4Б, для веб-ресурсов, составляющих цепочку перенаправлений 420, описанную выше применительно к Фиг. 4А.
[127] Например, в ходе поиска по базе данных 225, было выявлено, что содержащиеся в базе данных 225 ресурсы 114 и 117 являются визуально похожими на входной веб-ресурс 105, но различаются использованными при оформлении страницы логотипами известных брендов; веб-ресурс 144 содержит текст, полностью аналогичный тексту на веб-ресурсе 127, а веб-ресурсы 134 и 139 расположены на том же IP-адресе, что и веб-ресурс 138.
[128] В качестве примера, но не ограничиваясь им, заметим, что в случае мошеннических страниц может быть использовано всегда одно и то же имя бренда, но при этом доменные имена вредоносных страниц будут отличаться для разных URL-адресов, однако другие части этих URL-адресов будут такими же.
[129] Например, в URL-адресе
http://www.[some.domain]/adidas/great-sale-90-discount/register.html?parameter1¶meter2
вместо [some.domain] могут быть различные доменные имена, такие как freeserver.com,
HyperHost.ua, Ucoz.ru и т.д. Притом остальная часть ссылки у всех использованных злоумышленниками страниц выглядит идентично.
[130] В неограниченных вариантах осуществления настоящей технологии, веб-ресурсы, входящие в цепочку перенаправлений, могут быть представлены множеством похожих сгруппированных веб-ресурсов. Притом веб-ресурсы могут считаться похожими, если совпадают:
• все части URL-адреса, то есть домен, имя страницы и имена параметров,
• все части адреса, кроме домена верхнего уровня,
• доменные имена верхнего уровня;
• длины доменного имени, доменного имени верхнего уровня, названия страницы и имен параметров;
• IP-адреса.
[131] Таким образом, применительно к Фиг. 4Б, в одну вершину графа перенаправлений 450 могут быть сгруппированы веб-ресурсы 114, 105, 117, в другую вершину 460 – веб-ресурсы 127 и 144, ещё в одну вершину 470 – веб-ресурсы 134, 138 и 139.
[132] Далее будет подробно описан процесс построения графа перенаправлений из множества цепочек перенаправлений. Для построения графа перенаправлений учитывают все цепочки перенаправления, сохраненные во внутреннем хранилище данных 225, причём для каждой цепочки перенаправлений хранятся по меньшей мере следующие данные: о входном веб-ресурсе, о целевом веб-ресурсе; о группах выявленных аффилированных веб-ресурсов; указания (например, гиперссылки) на каждый веб-ресурс; сведения о векторах поведения пользователей и параметрах пользователей, использованных для выявления каждой цепочки перенаправления.
[133] На начальном этапе все данные, на основе которых строится граф перенаправлений, сброшены. Как показано на Фиг. 4В, производят собственно объединение цепочек перенаправлений (в данном примере – цепочек 410, 420 и 430) в граф перенаправлений 440.  Для этого в многопоточном режиме сравнивают каждую вершину (веб-ресурс) каждой выявленной цепочки перенаправлений с вершинами (веб-ресурсами) других выявленных цепочек перенаправлений. Если находятся полностью совпадающие вершины, как, например, вершина 450, которая присутствует во всех трёх цепочках 410, 420 и 430, то эти совпадающие вершины считают одной вершиной графа. Таким образом, вершина 450 становится входной вершиной графа, общей для всех трёх цепочек 410, 420 и 430.
[134] Если находят новую вершину, значение которой (веб-ресурс, ассоциированный с данной вершиной) отлично от всех других вершин, то она добавляется в граф в качестве новой вершины, причём если в графе пока не существует ребро, связывающее эту новую вершину с предыдущей, то такое ребро добавляют. Так, поскольку вершина 450 в цепочке 410 связана с вершиной 121, в цепочке 420 вершина 450 связана с вершиной 460 (не совпадающей с вершиной 121), а в цепочке 430 вершина 450 связана с вершиной 122 (не совпадающей с вершинами 121 и 460), то в граф будут добавлены три новые вершины, 121, 460 и 122, каждая из которых связана с вершиной 450.
[135] В ходе дальнейшего объединения цепочек 410, 420 и 430 по вышеописанным правилам, будет получен показанный на Фиг. 4В единый граф перенаправлений 440. Несложно видеть, что вершина 194, соответствующая целевому веб-ресурсу и присутствующая как в цепочке 420, так и в цепочке 430, в графе одна; притом в графе возможно существование и других вершин, соответствующих целевому веб-ресурсу, таких как вершина 193.
[136] Такой объединенный граф перенаправлений, по существу, означает, что пользователь, посетив веб-ресурс 105 или похожие на него ресурсы 114, 117, может быть перенаправлен один из веб-ресурсов 121, 122, 127, 144, с которых он будет перенаправлен на один из веб-ресурсов 135, 134, 139, 139, 131, с которых, в свою очередь, пользователь попадет на один из двух целевых веб-ресурсов 193 или 194. Стоит отметить, что на Фиг. 4В представлен упрощенный иллюстративный пример графа перенаправлений 440. В реальном графе, построенным системой 200 при автоматизированном изучении структуры веб-ресурсов злоумышленников количество вершин и ребер может быть практически любым, в том числе, значительно больше, чем показано на Фиг. 4В.
[137] Все полученные на этом шаге данные, в том числе вектора поведения пользователей и параметры пользователей 411, 421, 431, использованные для выявления каждой из цепочек перенаправления (на Фиг. 4В не показаны), сохраняют в базе данных 225 и способ переходит к выполнению шага 340, описанный далее со ссылкой на Фиг. 3А.
ШАГ 340 АНАЛИЗИРУЮТ ГРАФ ПЕРЕНАПРАВЛЕНИЙ И ВЫЯВЛЯЮТ ПРАВИЛА ПЕРЕНАПРАВЛЕНИЯ ПОЛЬЗОВАТЕЛЕЙ ДО ВРЕДОНОСНЫХ ЦЕЛЕВЫХ ВЕБ-РЕСУРСОВ.
[138] На последнем шаге подготовительного этапа анализируют построенный граф перенаправлений и выявляют правила, по которым принадлежащие злоумышленникам системы управления трафиком перенаправляют пользователей от входного веб-ресурса до вредоносных целевых веб-ресурсов.
[139] При анализе векторов поведения пользователей и параметров пользователей выявляют те величины, параметры или действия, которые обусловили перенаправление разных пользователей на какой-то определённый веб-ресурс. Правила перенаправления, выявляемые на данном шаге, по существу, представляют собой восстановленные аналитическим путём настройки систем управления трафиком, используемых злоумышленниками в исследуемой инфраструктуре. Как упоминалось ранее, целью злоумышленников обычно является конкретная группа пользователей, и обнаруженные закономерности будут фактически описывать ту группу пользователей, на которую нацелена изучаемая инфраструктура злоумышленников.
[140] Данными для анализа являются совпадения и различия в векторах поведения пользователей и параметрах пользователей, которые были использованы при выявлении каждой цепочки перенаправления на этапе 320. Анализируя параметры пользователей, то есть их географическое местоположение, версии устройств, операционных систем и браузеров, языковые настройки ОС и приложений, выявляют закономерности между фактом перенаправления разных пользователей на данный веб-ресурс и присутствием (либо, наоборот, отсутствием) одного и того же значения какого-то параметра у всех этих пользователей.
[141] Выявляемая закономерность может иметь вид, например, «на данный веб-ресурс перенаправлять только пользователей, находящихся в США» или наоборот, «на данный веб-ресурс перенаправлять только пользователей, находящихся НЕ в США».
[142] В другом примере, поясняемом со ссылкой на Фиг. 4А может быть выявлено, что пользователи, перешедшие на входной веб-ресурс 105 с устройства, на котором был установлен французский язык интерфейса операционной системы, были перенаправлены на веб-ресурс 121; тех, у кого язык интерфейса ОС был испанским, перенаправляли на веб-ресурс 122, а пользователей, язык интерфейса ОС у которых был русским, перенаправляли на веб-ресурс 127. Все остальные пользователи не перенаправлялись, т.е. для них цепочки перенаправлений построить не удалось.
[143] Ещё в одном примере может быть установлено, что пользователи, заходившие на веб-ресурс 105 при помощи браузера А версии 1.0.1, перенаправлялись на веб-ресурс 121, тогда как пользователи, заходившие на веб-ресурс 105 при помощи браузера А версии 1.0.2 и старше, перенаправлялись на веб-ресурс 122, а те, кто перешёл на веб-ресурс 105 при помощи любого другого браузера, был перенаправлен на веб-ресурс 127.
[144] Собственно выявление совпадений или несовпадений не имеет особенностей и может производиться любым общеизвестным образом, например методами статистического анализа.
[145] Анализируя вектора поведения пользователей, аналогично наборам параметров пользователей, выявляют закономерности между фактом перенаправления разных пользователей на данный веб-ресурс, и действиями, которые были совершены на веб-странице предыдущего веб-ресурса, либо вариантами сделанного выбора (пол: «М» или «Ж»), введёнными численными значениями (возраст, индекс и т.д), указанными при заполнении анкет.
[146] В примере, поясняемом со ссылкой на Фиг. 4 В, в результате анализа, например, может быть установлено, что пользователи, которые при заполнении анкеты на веб-ресурсе 127 указали в поле «Телефон» номер, принадлежащий оператору мобильной связи Б, были перенаправлены на веб-ресурс 138, а те, кто указал номер, принадлежащий оператору мобильной связи М, были перенаправлены на веб-ресурс 139.
[147] В другом примере может быть выявлено, что пользователи, которые при заполнении анкеты на веб-ресурсе 127 указали мужской пол, были перенаправлены на веб-ресурс 138, а те, кто указал женский пол, были перенаправлены на веб-ресурс 139.
[148] В каждом подобном случае выявленная закономерность может быть описана в терминах формальной лексики, «ЕСЛИ – ТО», и сохранена в базе данных для данного веб-ресурса, например, для веб-ресурса 105. Собственно форма записи может быть любой известной, например, могут использоваться регулярные выражения.
[149] Стоит отметить, что для дальнейшего выявления вредоносного целевого веб-ресурса могут использовать не все выявленные закономерности, а лишь их часть. Те закономерности, которые будут использованы, могут отбирать по условию превышения заранее заданного порога частотности. Например, закономерность используют для формирования итогового правила перенаправлений только в том случае, если эта закономерность найдена не менее чем в 85% цепочек перенаправлений, присутствующих в данном графе. Способ вычисления частотности может быть и любым другим, без ограничений.
[150] По окончании анализа всех веб-ресурсов, входящих в исследуемый граф перенаправлений, выявленные закономерности, все или наиболее частотные, объединяют, получая таким образом правило перенаправлений для данного графа. Это правило тоже может быть описано в терминах формальной лексики, например:
(ЕСЛИ язык ОС русский, ТО перенаправить на веб-ресурс 127) И (ЕСЛИ «Код региона \ TEF-код» РАВЕН _903_ ТО перенаправить на веб-ресурс 138)… и т.д.
[151] Полученное правило перенаправлений сохраняют в базе данных 225. Собственно форма записи может быть любой известной, например, могут использоваться регулярные выражения.
[152] В одной из возможных альтернативных реализаций описываемого способа закономерности перенаправлений могут сохранять не в виде объединённого правила перенаправлений, а по отдельности, каждая закономерность в своём специфическом поле базы данных. Например, в поле «Язык ОС» будет сохранено значение «русский» или RU, в поле «Код региона \ TEF-код» будет сохранено значение 903, и т.д.
[153] Результаты анализа сохраняют в базе данных 225.
[154] Следует заметить, что выявленные правила перенаправления могут содержать три типа условий, при выполнении которых с некоторого веб-ресурса система управления трафиком производит перенаправление на следующий в цепочке веб-ресурс:
• условия, зависящие от параметров пользователя (например, как было показано выше, английский язык интерфейса операционной системы);
• условия, зависящие от вектора поведения пользователя (например, как было показано выше, выбор определённого пола в опросе);
• условия, зависящие как от параметров пользователя, так и от вектора поведения пользователя – например, как было показано выше, если перенаправление на определённый веб-ресурс производится выполнении условий обоих этих видов.
[155]  Также следует заметить, что шаги 310-340 описаны в виде линейной последовательности действий ради простоты изложения. Система, реализующая описываемый способ, может повторять эти шаги циклически, в том числе в многопоточном режиме, получая в каждом цикле новое указание на по меньшей мере один новый входной веб-ресурс. Таким образом может быть сформирована база данных графов перенаправлений и правил перенаправлений, содержащая сведения и результаты анализа множества исследованных описанным образом вредоносных веб-ресурсов и хранящаяся, например, в базе данных 225. Также система, реализующая описываемый способ, может с заданной периодичностью выполнять сканирование сети Интернет, в том числе открытых веб-сайтов, содержащих сведения о заведомо вредоносных веб-ресурсах, находить новые указания на известные вредоносные веб-ресурсы и обрабатывать их вышеописанным образом, пополняя названные базу данных.
[156] На этом шаг 340 и предварительный этап завершаются.
[157] Рабочий этап 350, подробно описанный ниже со ссылкой на Фиг. 3Б, начинается с шага 360.
ШАГ 360 ПОЛУЧАЮТ ОТ ПОЛЬЗОВАТЕЛЬСКОГО УСТРОЙСТВА УКАЗАНИЕ НА ПО МЕНЬШЕЙ МЕРЕ ОДИН ПОДОЗРИТЕЛЬНЫЙ ВХОДНОЙ ВЕБ-РЕСУРС
[158] На данном шаге по сети связи 210 вычислительное устройство 220 получает от одного из от устройств пользователя 240-242 указание на по меньшей мере подозрительный веб-ресурс.
[159] В одном из возможных вариантов осуществления настоящей технологии вычислительное устройство 220 выполнено с возможностью получения от устройства пользователя, такого как устройство 240, 241, 242, информации об окружении пользователя. Под информацией об окружении пользователя в данном случае подразумеваются по меньшей мере такие данные, как IP-адрес пользовательского устройства, геолокация устройства пользователя, производитель, тип, модель и версия устройства пользователя, операционная система, используемый провайдер, версия браузера, язык интерфейса операционной системы и браузера, системное время, cookie-файлы, URL referrer (один из заголовков запроса клиента в протоколе HTTP, содержащий URL источника запроса). Все эти сведения могут быть получены любым общеизвестным образом, хорошо известным специалисту в предметной области.
[160] Например, вычислительное устройство 220 может получать эту информацию из юзер агента (User-Agent), который служит для определения версии браузера, версии ОС и некоторых из установленных аддонов, причем в случаях, когда юзер агент отсутствует, версия браузера может быть определена проверкой на наличие определенных функций или фич браузера, реализованных или измененных между релизами. При этом устройство 220 также может получить список всех установленных в системе пользовательского устройства 240-242 плагинов, ActiveX-контролов, Browser Helper Object’ов, включая их версии. Стоит отметить, что некоторые плагины выдают свое присутствие в HTTP-заголовках.
[161] Также вычислительным устройством может быть получена от пользовательского устройства информации об установленных расширениях и другом ПО, ассоциированном с браузером. Например, таким ПО могут быть блокировщики рекламы, которые вносят определенные изменения в просматриваемые страницы, по которым можно определить, что это за расширение, и его настройки. Подобные особенности характерны для всех веб-приложений, в частности браузеров, установленных на устройстве, и их нельзя скрыть с помощью настроек приватности или каких-то утилит.
[162] Кроме того, вычислительным устройством 220 любым общеизвестным образом могут также быть получены настройки сетевых протоколов клиентского устройства, например, такие как внешний IP-адрес, номера портов для исходящих TCP/IP-соединений, локальный IP-адрес для пользователей, находящихся за NAT’ом или HTTP-прокси, информация об используемых клиентом прокси-серверах, полученная из HTTP-заголовка.
[163] После получения по меньшей мере одного указания, а также перечисленной информации, шаг 360 завершается и способ переходит к шагу 370.
ШАГ 370 СТРОЯТ ПО МЕНЬШЕЙ МЕРЕ ОДНУ ЦЕПОЧКУ ПЕРЕНАПРАВЛЕНИЙ ДЛЯ КАЖДОГО ИЗ ПОЛУЧЕННЫХ ПОДОЗРИТЕЛЬНЫХ ВХОДНЫХ ВЕБ-РЕСУРСОВ
[164] После получения от пользовательского устройства указания на подозрительный входной веб-ресурс, вычислительное устройство 220 выстраивает цепочку перенаправлений.
[165] Как упоминалось ранее, вычислительное устройство 220 выполнено с возможностью получения от устройства пользователя, информации об окружении пользователя, то есть таких данные, как IP-адрес пользовательского устройства, геолокация устройства пользователя, производитель, тип, модель и версия устройства пользователя, операционная система, используемый провайдер, версия браузера, язык интерфейса операционной системы и браузера, системное время, cookie-файлы, URL referrer и т.д.
[166] На шаге 370 вычислительное устройство 220 получает от устройства пользователя, помимо указания на подозрительный веб-ресурс, указанные данные об окружении пользователя. На основании полученных данных строят запрос или запросы к базе данных параметров (профилей) пользователей и находят такие профили пользователей, которые в наибольшей степени напоминают полученные от реального устройства пользователя параметры окружения.
[167] Например, если от устройства пользователя получены, в частности, сведения о том, что его геолокация соответствует США, установлен английский язык интерфейса операционной системы и браузера, а версия браузера А v.1.0.1, запрос к базе данных профилей пользователей будет содержать все эти сведения.
[168] В одном варианте реализации описываемого способа для дальнейшей обработки вычислительное устройство 220 использует все найденные профили (наборы параметров) пользователей, в которых совпадает хотя бы один заданный параметр. В другом возможном варианте реализации используют только те найденные профили пользователей, в которых совпадают все заданные параметры, то есть, в соответствии с приведенным примером, и язык интерфейса, и геолокация, и версия браузера. Возможны, без ограничений, также любые другие принципы отбора профилей пользователей, напоминающих полученные от реального устройства пользователя параметры окружения. Например, обязательными считаются совпадения языка интерфейса и геолокации, а из всех остальных параметров достаточно совпадения по меньшей мере одного.
[169] Используя идентификатор каждого из полученных профилей пользователей в качестве поискового запроса, строят запрос или запросы к базе данных, содержащей сведения о различных ранее построенных графах перенаправлений и находят вектора поведения пользователей, каждый из которых по меньшей мере один раз был ранее успешно применен совместно с данным профилем пользователя для построения по меньшей мере одной цепочки перенаправлений.
[170] После этого, используя идентификаторы найденных векторов поведения пользователей, извлекают эти вектора из базы данных. Из полученных в результате пар профиль пользователя – вектор поведения пользователя формируют, как было описано ранее применительно к этапу 320, параметры окружения контролируемой среды исполнения, например, виртуальной машины, имитирующей устройство пользователя.
[171] Посредством настроенной таким образом контролируемой среды исполнения, используя найденные вектора описания пользователей, успешно использовавшиеся ранее совместно с данным профилем пользователя, выполняют, посредством вычислительного устройства 220, переход по полученному указанию на подозрительный входной веб-ресурс.
[172] Возможна также альтернативная реализация описываемого способа, в которой ранее успешно примененные вектора поведения пользователей не ищут, а используют с подходящими профилями (параметрами) пользователей все имеющиеся в системе вектора поведения пользователей.
[173] Следует заметить, что вычислительное устройство 220 выполнено с возможностью запускать одновременно несколько настроенных контролируемых сред исполнения, каждая из которых может быть настроена с использованием параметров найденных профилей пользователя. Таким образом, переходы по полученному указанию на подозрительный входной веб-ресурс могут выполняться одновременно для различных пар профиль пользователя – вектор поведения пользователя.
[174] Таким образом получают, аналогично тому, как было описано выше применительно к этапу 320, по меньшей мере одну цепочку перенаправлений.
[175] В другой возможной реализации описываемого способа ищут полученное от пользовательского устройства указание (например, URL) на подозрительный входной веб-ресурс в базе данных графов перенаправлений.
[176] Такой поиск может быть как чётким, когда ищут точное соответствие полученному URL, так и нечётким. Во втором случае ищут совпадения:
• всех частей URL-адреса, кроме домена верхнего уровня,
• доменных имен верхнего уровня;
• длин доменного имени, доменного имени верхнего уровня, названия страницы и имен параметров;
• IP-адреса.
[177] Если соответствующий заданному поисковому запросу входной веб-ресурс присутствует в базе данных, то извлекают из базы данных ассоциированное с данным входным веб-ресурсом по меньшей мере одно правило перенаправления пользователей.
[178] Выявленные ранее и сохраненные в базе данных закономерности перенаправлений, образующие извлечённое правило перенаправлений, используют для конфигурации соответствующим образом параметров окружения контролируемой среды исполнения, например, виртуальной машины, имитирующей устройство пользователя. Посредством настроенной таким образом виртуальной машины выполняют, посредством вычислительного устройства 220, переход по полученному указанию на подозрительный входной веб-ресурс и строят, аналогично описанному выше применительно к шагу 320, цепочку перенаправлений.
[179] Полученную по меньшей мере одну цепочку перенаправлений сохраняют в базе данных. Понятно также, что при использовании на данном шаге нескольких различных профилей пользователя и\или векторов поведения пользователя полученных цепочек перенаправлений может быть значительно больше одной.
[180] На этом шаг 370 завершается и способ переходит к шагу 380.
ШАГ 380 ПРОВЕРЯЮТ ПОСТРОЕННУЮ ПО МЕНЬШЕЙ МЕРЕ ОДНУ ЦЕПОЧКУ ПЕРЕНАПРАВЛЕНИЙ НА СООТВЕТСТВИЕ ПО МЕНЬШЕЙ МЕРЕ ОДНОМУ ПРАВИЛУ ПЕРЕНАПРАВЛЕНИЙ ПОЛЬЗОВАТЕЛЕЙ ДО ВРЕДОНОСНЫХ ЦЕЛЕВЫХ ВЕБ-РЕСУРСОВ
[181] На шаге 380 анализируют построенную на предыдущем шаге по меньшей мере одну цепочку перенаправлений, проверяя, соответствуют ли перенаправления, выявленные в данной цепочке, по меньшей мере одному правилу перенаправления пользователей до вредоносных целевых ресурсов, выявленному на предварительном этапе.
[182] Перед этим дополнительно проверяют ряд условий, выполнение которых позволяет с достаточной уверенностью убедиться в том, что данная цепочка не относится к вредоносным.
[183] Так, в том случае, если ни одной цепочки перенаправлений ни для одного из найденных вариантов параметров пользователя построить не удалось, то есть входной веб-ресурс, на который было получено указание на этапе 360, не реализует схему многоэтапного мошенничества при заданных параметрах пользователя, то считают данный входной ресурс безопасным для данного пользователя, о чём отправляют, посредством вычислительного устройства 220, сообщение на устройство пользователя, от которого было получено указание. На этом способ завершается.
[184] Возможен также вариант реализации данного способа, в которых при невозможности построить по меньшей мере одну цепочку перенаправлений, дополнительно проверяют любыми общеизвестными способами, как это описано ниже, входной веб-ресурс на принадлежность к вредоносным веб-ресурсам, и направляют сообщение на устройство пользователя только в том случае, если веб-ресурс не принадлежит к вредоносным. На этом способ завершается.
[185] Для каждой выявленной и сохраненной в хранилище данных 225 цепочки перенаправлений определяют и сравнивают с заранее заданным пороговым значением количество перенаправлений, то есть ребер в данной цепочке. В примере, приведённом на Фиг. 4А-В эта величина будет весьма мала, и равна трём, поскольку пример реальной мошеннической инфраструктуры, обычно содержащей много больше веб-ресурсов, был бы сложен для восприятия. При этом считают, что если средняя длина цепочки превышает заранее заданный порог (например, равный 6 перенаправлениям), то это является признаком вредоносности исследуемых цепочек перенаправлений. Информацию об этом сохраняют во внутреннем хранилище 225.
[186] Если количество перенаправлений в данной цепочке перенаправлений не превышает заранее заданное пороговое значение (например, равное 2 или равное 4), то такую цепочку отбрасывают, исключают из дальнейшего рассмотрения. Так делают, поскольку небольшое количество перенаправлений нетипично для злоумышленников; скорее оно может соответствовать легитимным действиям с веб-ресурсами, например, рекламным кампаниям.
[187] Если по окончании подсчёта количества перенаправлений для всех цепочек, которые удалось построить в ходе этапа 370, не остаётся ни одной цепочки, количество перенаправлений в которой превышает заданный порог, то считают данный входной ресурс безопасным для данного пользователя, о чём отправляют, посредством вычислительного устройства 220, сообщение на устройство пользователя, от которого было получено указание. На этом способ завершается.
[188] В противном случае, если по меньшей мере у одной цепочки количество перенаправлений превышает заданный порог, то определяют для каждой цепочки перенаправлений, для которой это условие выполнено, правило перенаправления пользователей, или, что то же самое, набор условий перенаправления с одного веб-ресурса на другой.
[189] Делают это полностью аналогично тому, как было описано выше для шага 340.
[190] Возможен также вариант реализации описываемого способа, при котором предварительно объединяют построенные цепочки перенаправлений, длина которых больше предварительно заданного порога, в граф перенаправлений, как это было описано для шага 330.
[191] Выявленное правила перенаправления пользователей проверяют на совпадение со всеми известными правилами перенаправления, выявленными на предварительном этапе. Для этого любым общеизвестным образом выполняют запрос к базе данных, содержащих выявленные графы перенаправлений и правила перенаправлений, и извлекают из неё все известные правила перенаправлений. После этого сравнивают, поочерёдно или в многопоточном режиме, каждое из определённых на данном этапе правил перенаправлений со всеми выявленными на предварительном этапе правилами перенаправлений. Сравнение также может выполняться любым известным из уровня техники способом, например способом, позволяющим выявлять точное или частичное совпадение регулярных выражений.
[192] Если будет выявлено по меньшей мере одно совпадение по меньшей мере одного определённого на данном этапе правила перенаправлений с любым из выявленных на предварительном этапе правил перенаправлений, то считают, что подозрительный веб-ресурс, полученный на шаге 360, относится к схеме многоэтапного интернет-мошенничества. На этом шаг 380 завершается и способ переходит к шагу 390.
[193] Если ни одного совпадения не выявлено, то на данном шаге могут дополнительно проверять, не является ли один из веб-ресурсов, входящий в состав данной по меньшей мере одной цепочки перенаправлений, известным вредоносным ресурсом.
[194] Это выполняют посредством поиска по базе данных, содержащей перечень известных вредоносных веб-ресурсов, а также по базе данных графов перенаправлений и правил перенаправлений, построенной на предварительном этапе, как было описано выше применительно к Фиг.3А. В случае, если какая-либо цепочка перенаправлений содержит вредоносный веб-ресурс, такая цепочка помечается как вредоносная; эта информация также сохраняется во внутреннем хранилище 225.
[195] Специалистам в предметной области хорошо известны и другие технологии и методы для выявления вредоносного характера веб-ресурсов, например путем анализа URL-адресов по маскам URL, доменных имен - по ключевым словам. Также возможны проверки путём установления факта загрузки проверяемыми страницами содержимого с оригинальных веб-сайтов, проверка наличия изображений, связанных с определенным брендом (например, названия и логотипы банков, платежных систем, ресурсов, веб-сайтов, услуг и т. д.), проверка репутации веб-ресурса. Такие методы и технологии противодействия фишингу, интернет-мошенничеству и незаконному доступу к конфиденциальной информации пользователей (посетителей веб-страниц или пользователей приложений, включая мобильные приложения), и, в частности, методы и технологии для обнаружения фишинговых веб-страниц могут дополнительно включать определение даты регистрации доменного имени (а также даты истечения срока его действия). Известны также проверки, построенные на вычислении значений хеш-функции от веб-страниц и их сравнение со значениями, которые были вычислены ранее.
[196] Кроме того, на данном этапе могут дополнительно выявлять и другие признаки, указывающие на то, что исследуемая цепочка перенаправлений является вредоносной.
[197] К таким признакам относят по меньшей мере:
• полное или почти полное совпадение текста веб-страницы исследуемого веб-ресурса с известными текстами заведомо вредоносных веб-страниц; такие признаки выявляют путём поиска, выполняемого любым общеизвестным образом, текста исследуемой веб-страницы в заблаговременно подготовленных базах данных текстов вредоносных веб-страниц.
• характерные для вредоносных веб-ресурсов свойства промежуточных веб-ресурсов;
• длина и структура URL, используемых в каждой цепочке перенаправлений, в том числе длина и структура доменных имён, входящих в URL.
[198] Так, анализируя свойства промежуточных веб-страниц (таких, как веб-страницы 121, 122, 127, 135, 138 и т.д), например, географическое расположение серверов, на которых эти страницы расположены, определяют, совпадают ли они для разных ресурсов. При этом, если будет выявлено, например, что все веб-ресурсы имеют существенно разное географическое расположение, например, все находятся в разных странах, а не в пределах одной страны, то считают, что это может являться признаком вредоносности исследуемой цепочки перенаправлений. Выявление географического положения конкретного сервера производят любым общеизвестным образом.
[199] Анализируя длины ссылок, ведущих с одного веб-ресурса на другой и находящихся в одной вершине, а также длины доменных имён, входящих в состав таких ссылок, выявляют случаи, когда большинстве ссылок имеет одинаковую или близкую длину. Такую цепочку перенаправлений также считают потенциально вредоносной.
[200] На этом шаг 380 завершается и способ переходит к шагу 390.
ШАГ 390 В ОТВЕТ НА СООТВЕТСТВИЕ ПО МЕНЬШЕЙ МЕРЕ ОДНОМУ ИЗВЕСТНОМУ ПРАВИЛУ ПЕРЕНАПРАВЛЕНИЙ ВЫЯВЛЯЮТ В ПО МЕНЬШЕЙ МЕРЕ ОДНОЙ ЦЕПОЧКЕ ПЕРЕНАПРАВЛЕНИЙ ПО МЕНЬШЕЙ МЕРЕ ОДИН ВРЕДОНОСНЫЙ ЦЕЛЕВОЙ ВЕБ-РЕСУРС, БЛОКИРУЮТ ЕГО И ОТПРАВЛЯЮТ УВЕДОМЛЕНИЕ НА ПОЛЬЗОВАТЕЛЬСКОЕ УСТРОЙСТВО
[201] В том случае, если для по меньшей мере одной цепочки перенаправлений установлено, что реализуемые ею правила перенаправления соответствуют по меньшей мере одному известному правилу перенаправлений, то в её составе выявляют по меньшей мере один целевой веб-ресурс.
[202] Те же действия выполняют, если соответствия известным правилам перенаправлений обнаружено не было, однако, длина цепочки перенаправлений превышает заранее заданный порог и по результатам совокупности различных проверок, описанных выше применительно к шагу 380, выявлено, что по меньшей мере один веб-ресурс в данной цепочке относится к вредоносным веб-ресурсам. Это условие соответствует случаю, когда обнаружена новая, не известная ранее схема многоступенчатого интернет-мошенничества.
[203] В одном неограничивающем примере проверка веб-ресурса на принадлежность его к целевым веб-ресурсам может заключаться в установлении того факта, что на данном веб-ресурсе содержится предложение ввести данные банковской карты. В другом неограничивающем примере критерием принадлежности веб-ресурса к целевым веб-ресурсам может считаться предложение приложить скан паспорта или водительского удостоверения. Такие проверки осуществляют любым известным из уровня техники способом, например, путём анализа HTML-кода веб-ресурса и выявления в этом коде хорошо известных специалистам ключевых слов и полей для ввода данных.
[204] Возможен также вариант реализации описываемого метода, в котором определение конца цепочки перенаправлений, то есть обнаружение целевого веб-ресурса может быть реализовано на основе анализа кодов HTTP-ответов, полученных браузером в ходе построения цепочки перенаправлений. Например, когда после по меньшей мере трех перенаправлений система 200 перестает получать HTTP-ответы, содержащие коды вида 301, 302, 303, 304 или 307, фиксируют, что с текущей веб-страницы перенаправления не выполняются, и на этом основании считают, что текущая веб-страница является целевым веб-ресурсом.
[205] Если в ходе выполнения шага 390 был выявлен по меньшей мере один целевой вредоносный веб-ресурс, то его блокируют и отправляют уведомление на пользовательское устройство. Эти действия хорошо известны специалистам в предметной области и могут выполняться любым общеизвестным способом.
[206] Возможны варианты реализации настоящей технологии, в которых к мерам по блокировке целевого вредоносного веб-ресурса могут быть добавлены по меньшей мере следующие:
• блокировка всех выявленных промежуточных веб-ресурсов;
• добавление целевого веб-ресурса в базы данных вредоносных ресурсов;
• осуществление сбора доказательственной базы мошеннических действий веб-ресурса;
• автоматизированное расследование принадлежности вредоносного веб-ресурса;
• юридическое воздействие на мошеннического веб-ресурс, в том числе на его владельца, посредством использования автоматически генерируемых шаблонов претензий для отправки в уполномоченные инстанции;
• уведомление пользователей о вредоносности веб-ресурса выводимыми предупреждениями и отчетами с разъяснениями.
[207] Меры по реагированию могут различаться в зависимости от принадлежности целевого сетевого ресурса, страны его локализации, использованного им бренда, лиц, чьи права нарушает мошеннический ресурс, его тематики и т.д.
[208] Все перечисленные меры не имеют особенностей, хорошо известны специалистам в предметной области и могут быть реализованы любым общеизвестным образом.
[209] Дополнительно стоит отметить, что при выявлении целевого вредоносного веб ресурса на пользовательское устройство отправляется уведомление или предупреждение. Это сообщение, которое также может включать в себя отчет о проведённом анализе и его результаты.
[210] На этом способ завершается.
[211] На Фиг. 5 представлена общая схема вычислительного устройства 500, обеспечивающего обработку данных, необходимую для реализации заявленного решения.
[212] В общем случае устройство 500 содержит такие компоненты как один или более процессоров 501, по меньшей мере одну память 502, средство хранения данных 503, интерфейсы ввода/вывода 504, средство В/В 505, средства сетевого взаимодействия 506.
[213] Процессор 501 устройства выполняет основные вычислительные операции, необходимые для функционирования устройства 500 или обеспечения функциональности одного или более его компонентов. Процессор 501 исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти 502.
[214] Память 502, как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемую функциональность.
[215] Средство хранения данных 503 может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п. Средство 503 позволяет выполнять долгосрочное хранение различного вида информации, например, вышеупомянутых файлов с наборами данных пользователей, базы данных, содержащих записи измеренных для каждого пользователя временных интервалов, идентификаторов пользователей и т.п.
[216] Интерфейсы 504 представляют собой стандартные средства для подключения и работы с серверной частью, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, FireWire и т.п. Выбор интерфейсов 504 зависит от конкретного исполнения устройства 600, которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п.
[217] В качестве средств В/В данных 505 может использоваться клавиатура. Помимо клавиатуры, в составе средств В/В данных также может использоваться: джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.
[218] Средства сетевого взаимодействия 506 выбираются из устройств, обеспечивающих сетевой прием и передачу данных, например, Ethernet-карт, WLAN/Wi-Fi-модулей, Bluetooth-модулей, BLE-модулей, NFC-модулей, IrDa, GSM-модемов и т.п. С помощью средств 506 обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.
[219] Компоненты устройства 500 сопряжены посредством общей шины передачи данных 510.
[220] В настоящих материалах заявки было представлено предпочтительное раскрытие осуществление заявленного технического решения, которое не должно использоваться как ограничивающее иные, частные воплощения его реализации, которые не выходят за рамки испрашиваемого объема правовой охраны и являются очевидными для специалистов в соответствующей области техники.