Система и способ внешнего контроля поверхности кибератаки Российский патент 2022 года по МПК G06F21/57 

Описание патента на изобретение RU2778635C1

ОБЛАСТЬ ТЕХНИКИ

[0001] Изобретение относится к области вычислительной техники, а именно к системам и способам внешнего контроля поверхности кибератаки.

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

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

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

УРОВЕНЬ ТЕХНИКИ

[0005] Задача мониторинга состояния сетевой инфраструктуры и предупреждения о возможной ее компрометации известна достаточно давно.

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

[0007] Существуют и исключения; так, например, известен сканер уязвимостей SAINT (https://en.wikipedia.org/wiki/SAINT (software)), позволяющий контролировать заданную сетевую инфраструктуру и обнаруживать возможные уязвимости. Однако, данное решение, в отличие от решения, которое будет описано ниже, рассчитано на сканирование предварительно заданных контрольных точек инфраструктуры. Кроме того, функционирование SAINT основано на анализе служб TCP и UDP, а такие виды уязвимостей, как например, утечка учетных данных корпоративной электронной почты, находятся за пределами его возможностей, что также отличает его от решения, описываемого ниже.

[0008] Известны и другие решения, предназначенные для контроля состояния заранее заданной сетевой инфраструктуры.

[0009] Так, из уровня техники известно решение US 10,721,262 В2 «RESOUR.CE -CENTRIC NETWORK CYBER ATTACK WARNING SYSTEM» от 13.10.2017. Решение может генерировать предупреждения, связанные с потенциальной кибератакой на ресурс организации. Для этого оно может получать информацию об активности в компьютерной сети организации, получать доступ к контекстной информации, определять на основе контекстной информации один или несколько индикаторов компрометации и вычислять оценку риска, где оценка риска указывает вероятность того, что ресурс находится под угрозой кибератаки. В ответ на то, что оценка риска соответствует пороговому значению, генерируют соответствующее предупреждение.

[0010] Отличие данного известного решения от решения, описанного ниже, заключается в том, что:

a. Известное решение не нацелено на защиту всей сетевой инфраструктуры в целом; объектом защиты выступает некоторый заранее заданный ресурс, например, база данных или платежная система.

b. Архитектура известного решения внутренняя; оно находится внутри защищаемой сетевой инфраструктуры, и следовательно, требует работ по интеграции в защищаемую инфраструктуру.

c. Алгоритм вычисления оценки риска в известном решении основан на использовании т.н. «контекстной информации», к которой относятся такие данные, как списки пользователей, допущенных к работе с ресурсом, типовые пользовательские сценарии, местонахождение ресурса в топологии защищаемой сетевой инфраструктуры, физическое местонахождение и т.д. В то же время, предлагаемое решение не требует для работы подобных данных.

[0011] Из уровня техники также известен патент US 10,778,701 В2 «Mitigating cyber-attacks by automatically coordinating responses from cyber-security tools», в котором описан способ автоматической координации ответов инструментов кибербезопасности. Механизм кибербезопасности может включать в себя программные модули, созданные из нескольких источников, причем каждый из программных модулей предназначен для интеграции соответствующего инструмента кибербезопасности с механизмом кибербезопасности. Механизм кибербезопасности может использовать программные модули для связи с инструментами кибербезопасности, чтобы обнаруживать одно или несколько событий, указывающих на кибератаку на вычислительную среду. Затем механизм кибербезопасности может определить стратегию скоординированного реагирования, предполагающую сотрудничество между инструментами кибербезопасности для снижения эффективности кибератаки.

[0012] Отличие известного решения, представленного в US 10,778,701 В2, от решения, которое будет раскрыто ниже, заключается в том, что:

a. Известное решение решает задачу координации действий множества независимых и разнородных программных модулей, таких как антивирус, файрволл и т.д, что требует интеграции таких модулей в данное решение.

b. Упомянутые программные модули находятся внутри защищаемой сетевой инфраструктуры.

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

[0013] Также из уровня техники известно решение, описанное в публикации US 2016/0308898 A1 «Systems and methods for tracking, analyzing and mitigating security threats in networks via a network traffic analysis platform». Публикация раскрывает способ анализа сетевого трафика, который включает в себя прием информации на основе мониторинга трафика на множестве уровней на одном или нескольких мониторах, развернутых в сети, с использованием глубокой проверки пакетов; получение информации на основе мониторинга трафика в конечной точке сети; анализ отслеживаемого трафика от конечной точки и одного или нескольких мониторов для определения сетевой инфраструктуры и состояния кибербезопасности сетевой инфраструктуры; и предоставление визуализаций, основанных на сетевой инфраструктуре и состоянии кибербезопасности, для непрерывного отслеживания угроз.

[0014] Отличие данного известного решения от решения, которое будет раскрыто ниже, заключается в том, что:

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

b. Упомянутые мониторы должны находиться внутри защищаемой сетевой инфраструктуры.

[0015] Кроме того, из уровня техники известно решение US 10873597 В1, «Cyber attack early warning system». Данное решение раскрывает метод, который включает получение данных, связанных с ранее проанализированными или известными вредоносными атаками с первого сетевого устройства. Кроме того, первое сетевое устройство получает предупреждение об атаке, связанное с объектом, проанализированным и идентифицированным как подозрительный вторым сетевым устройством. Оповещение об атаке включает информацию, связанную с подозрительным объектом. При этом для генерации предупреждений по крайней мере часть информации предупреждения об атаке предоставляется системе, сконфигурированной, по крайней мере, для (i) извлечения функции из предупреждения об атаке, (ii) определения сходства между извлеченными функциями и функциями, связанными с ранее проанализированные или известные вредоносные атаки для определения результата.

[0016] Отличие данного известного решения от решения, которое будет раскрыто ниже, заключается в том, что:

a. Известное решение подразумевает наличие специализированного центра обнаружения угроз (MCD), причем функционирование данного центра основано на использовании по меньшей мере одной виртуальной среды, где проверяются подозрительные файлы.

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

[0017] Кроме того, из уровня техники известно решение US 7,930,256 В2, «SECURITY SYSTEM FOR AND METHOD OF DETECTING AND RESPONDING TO CYBER ATTACKS ON LARGE NETWORK SYSTEMS». Данное решение включает в себя: (а) основанную на совокупности так называемых интеллектуальных агентов подсистему поиска информации, сконфигурированную так, чтобы автоматически искать и извлекать соответствующие данные из распределенных источников; (b) основанный на правилах механизм логического вывода, сконфигурированный так, чтобы интерпретировать извлеченные данные в ситуационном контексте для поддержки генерации событий и предупреждений для оценки и прогнозирования киберугроз; и (с) механизм оценки и прогнозирования угроз, сконфигурированный так, чтобы фиксировать взаимосвязь между выходными сигналами киберсенсоров и кибератаками.

[0018] Отличие данного известного решения от решения, которое будет раскрыто ниже, заключается в том, что:

a. Известное решение основано на данных, получаемых от так называемых интеллектуальных агентов; эти агенты находятся внутри защищаемых сетевых инфраструктур.

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

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

[0020] В таких условиях использование каких-либо решений наподобие перечисленных выше применительно к уровню техники, оказывается крайне затруднительным.

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

РАСКРЫТИЕ (СУЩНОСТЬ) ИЗОБРЕТЕНИЯ

[0022] Задача предполагаемого изобретения заключается в разработке способа и системы внешнего контроля поверхности кибератаки.

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

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

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

[0026] В частном варианте реализации способ отличается тем, что к основным сведениям об элементах защищаемой инфраструктуры относится по меньшей мере одно из перечисленного:

• домен,

• IP-адрес,

• SSL-сертификат,

• адрес электронной почты,

• адрес FTP-сервера,

• адрес системы управления базами данных,

• адрес веб-службы хостинга файлов,

• название веб-сервиса и порт, на котором он запущен

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

• домены,

• IP-адреса,

• SSL-сертификаты

• TLS-сертификаты.

• названия и номера версий веб-сервисов,

• ссылка на по меньшей мере одну веб-страницу, подлежащую проверке на наличие вредоносного кода,

• список ссылок на веб-страницы, содержащие высокорискованный контент.

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

[0029] Еще в одном возможном варианте реализации способ отличается тем, что при обнаружении контрольных точек защищаемой инфраструктуры дополнительно выполняют сканирование защищаемой инфраструктуры.

[0030] Еще в одном возможном варианте реализации способ отличается тем, что к статусам контрольных точек защищаемой инфраструктуры относится по меньшей мере одно из перечисленного:

• Значения ресурсных записей системы доменных имен (DNS),

• Значение записи системы доменных имен, содержащей параметры настройки протокола DMARC,

• Название компании-владельца IP-адреса,

• Хостинг-провайдер IP-адреса,

• Срок действия IP-адреса,

• Список портов, открытых на данном IP-адресе,

• Список сетевых сервисов, запущенных на данном IP-адресе,

• Название компании-владельца (org) домена,

• Регистратор (registrar) домена,

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

• Статус SSL- или TLS-сертификата,

• Параметры SSL- или TLS-сертификата, а именно алгоритмы шифрования, который могут быть использованы сервером, на котором установлен данный сертификат.

• Срок действия SSL- или TLS-сертификата,

• Статус безопасности веб-страницы, подлежащей проверке на наличие вредоносного кода,

• Длина списка ссылок на веб-страницы, содержащие высокорискованный контент.

[0031] Еще в одном возможном варианте реализации способ отличается тем, что в состав индикаторов компрометации также входит по меньшей мере одно из нижеперечисленного:

• изменение данных DNS,

• неверное функционирование DNS,

• изменение владельца IP-адреса,

• изменение владельца доменного имени,

• изменение статуса SSL-сертификата,

• изменение статуса TLS-сертификата,

• принадлежность используемых алгоритмов шифрования SSL к числу слабых алгоритмов шифрования SSL.

• принадлежность используемых алгоритмов шифрования TLS к числу слабых алгоритмов шифрования TLS.

• отсутствие или неверная настройка протокола DMARC

• открытие нового порта,

• запуск нового сервиса,

• отсутствие запущенного сервиса в списке известных легитимных сервисов,

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

• получение, в ответ на тестовый запрос, от легитимного веб-сервиса, представляющего собой СУБД или облачное хранилище, любого другого ответа, кроме ответа "Ошибка авторизации",

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

• истечение срока действия SSL-сертификата.

• истечение срока действия TLS-сертификата

• выявление в составе защищаемой инфраструктуры по меньшей мере одной веб-страницы с нелегальным контентом,

• выявление на по меньшей мере одной веб-странице защищаемой инфраструктуры вредоносного кода (такого как эксплойт, веб-шелл, JS-сниффер),

• выявление по меньшей мере одного обращения по меньшей мере одного из устройств, принадлежащего к защищаемой инфраструктур, к по меньшей мере одному командному серверу злоумышленников,

• выявление в составе защищаемой инфраструктуры по меньшей мере одного командного сервера злоумышленников.

[0032] Еще в одном возможном варианте реализации способ отличается тем, что неверное функционирование DNS означает по меньшей мере одно из перечисленного:

• Ни один из DNS не отвечает на запросы.

• По меньшей мере один из DNS не ответил вовремя.

• По меньшей мере один из DNS не объявил себя авторитетным (authoritative).

• DNS SEC не поддерживается для данного домена.

• Список DNS, предоставленный корневым сервером (8.8.8.8), не соответствует списку, опубликованному DNS.

• Для данного домена есть только один DNS.

• Найден по меньшей мере один DNS, который способен отвечать на любой поиск DNS с любого IP (Open Recursive Name Server).

• По меньшей мере один DNS является Open Zone Transfer Server и предоставил информацию во всей DNS-зоне.

• По меньшей мере один DNS-сервер имеет частный IP-адрес

• Не найдена опубликованная запись DNS для данного домена или имени хоста.

• Более одного DNS находятся в одной подсети класса С,

• Срок действия DNS SOA не соответствует рекомендуемому RFC.

• Значение кэша DNS SOA не соответствует рекомендуемому RFC.

• Значение обновления DNS SOA не соответствует рекомендуемому RFC.

• Значение повторной попытки DNS SOA не соответствует рекомендуемому RFC.

• Серийные номера SOA не совпадают.

• Неверный формат серийного номера DNS SOA.

[0033] Еще в одном возможном варианте реализации способ отличается тем, что дополнительно получают информацию об утечках конфиденциальных данных и сохраняют ее.

[0034] Еще в одном возможном варианте реализации способ отличается тем, что дополнительно проверяют наличие конфиденциальных данных защищаемой инфраструктуры в информации об утечках конфиденциальных данных, и в ответ на обнаружение по меньшей мере одного случая утечки конфиденциальных данных защищаемой инфраструктуры формируют и передают по меньшей мере одно предупреждение о возможной кибератаке,

[0035] Еще в одном возможном варианте реализации способ отличается тем, что в состав конфиденциальных данных защищаемой инфраструктуры входит по меньшей мере одно из нижеперечисленного:

• учетные данные пользователей защищаемой инфраструктуры,

• персональные данные пользователей защищаемой инфраструктуры,

• контактные данные пользователей защищаемой инфраструктуры,

• платежные данные пользователей защищаемой инфраструктуры,

• конфиденциальная информация, хранящаяся на устройствах защищаемой инфраструктуры

[0036] Еще в одном возможном варианте реализации способ отличается тем, что по меньшей мере одно сформированное предупреждение о кибератаке передают посредством по меньшей мере одного из следующих способов коммуникации:

• электронной почты (e-mail),

• SMS,

• MMS,

• push-уведомления,

• сообщения в программе обмена мгновенными сообщениями,

• события API

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

[0038] Заявленное изобретение поясняется следующими чертежами, на которых:

[0039] Фиг. 1 показывает пример функциональной схемы вычислительного устройства, реализующего описанный способ.

[0040] Фиг. 2А иллюстрирует блок-схему алгоритма способа внешнего контроля поверхности кибератаки.

[0041] Фиг. 2Б иллюстрирует блок-схему алгоритма одного из этапов способа внешнего контроля поверхности кибератаки.

[0042] Фиг. 3А иллюстрирует пример фрагмента графовой модели сети Интернет, используемой на одном из этапов способа внешнего контроля поверхности кибератаки.

[0043] Фиг. 3Б иллюстрирует пример отфильтрованного фрагмента графовой модели сети Интернет, полученного на одном из этапов способа внешнего контроля поверхности кибератаки.

[0044] Фиг. 3В иллюстрирует пример отфильтрованного фрагмента графовой модели сети Интернет, дополнительно обогащенного на одном из этапов способа внешнего контроля поверхности кибератаки.

[0045] Фиг. 4А иллюстрирует блок-схему алгоритма проверки наличия индикаторов компрометации.

[0046] Фиг. 4Б иллюстрирует блок-схему еще одного возможного алгоритма проверки наличия индикаторов компрометации.

[0047] Фиг. 5 иллюстрирует упрощенное схематическое представление одной из неограничивающих реализаций вычислительного устройства для осуществления настоящего технического решения.

ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ

[0048] Ниже будет приведено описание примерных вариантов осуществления заявленного изобретения.

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

[0050] Для реализации описываемого способ внешнего контроля поверхности кибератаки предварительно устанавливают вычислительное устройство (100), как это показано на Фиг. 1, вне подлежащей защите сетевой инфраструктуры (180). Конструктивное исполнение и аппаратная конфигурация данного вычислительного устройства могут быть любыми общеизвестными, позволяющими обеспечить исполнение описанных ниже функций. Это может быть, в качестве примера, но не ограничиваясь им, сервер. В качестве примера варианта осуществления может быть назван, например, сервер Dell™ PowerEdge™. В альтернативном варианте реализации вычислительное устройство (100) может представлять собой облачное решение, то есть совокупность серверов. Еще в одном альтернативном варианте реализации это может быть мобильное устройство, например, смартфон или планшет. Но в любом случае данное устройство должно быть выполнено с возможностью обмена трафиком с устройствами защищаемой инфраструктуры через вычислительную сеть, например, через сеть Интернет (170).

[0051] В составе функциональной схемы указанного вычислительного устройства должны быть предусмотрены следующие функциональные модули: модуль связи (110), модуль обнаружения инфраструктуры (120), модуль сканирования (130), модуль анализа (140), модуль оповещения (150), а также модуль хранения информации (160).

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

[0053] При этом основная функция каждого из модулей следующая:

[0054] Модуль связи (110) выполнен с возможностью обмена данными с модулем обнаружения инфраструктуры (120), модулем сканирования (130), модулем оповещения (150), а также модулем хранения информации (160). Модуль связи (110) обеспечивает возможность связи вычислительного устройства, реализующего данный способ, с вычислительной сетью, например, с сетью Интернет (170). В свою очередь, посредством вычислительной сети модуль связи обеспечивает связь вычислительного устройства (100), реализующего данный способ, с устройствами защищаемой инфраструктуры (180). Кроме того, посредством вычислительной сети модуль связи (110) обеспечивает вычислительному устройству (100) возможность получения дополнительной информации, в частности, индикаторов компрометации. Реализация этих функций модулем связи (110) не имеет особенностей и может быть выполнена любым общеизвестным образом.

[0055] Модуль обнаружения инфраструктуры (120) выполнен с возможностью обмена данными с модулем связи (110) и модулем хранения информации (160). Модуль обнаружения инфраструктуры (120) обеспечивает поиск и идентификацию тех контрольных точек, из которых состоит поверхность кибератаки защищаемой сетевой инфраструктуры (180). К таким контрольным точкам в рамках настоящего описания относятся по меньшей мере доменные имена, IP-адреса, SSL-сертификаты и TLS-сертификаты, номера открытых портов, а также названия и номера версий запущенных на этих портах веб-сервисов. Один из примеров возможной реализации этих функций модулем обнаружения инфраструктуры (120) будет описан ниже со ссылкой на чертежи Фиг. 2А-Б. и Фиг. 3А-Б.

[0056] Модуль сканирования (130) выполнен с возможностью обмена данными с модулем связи (110) и с модулем хранения данных (160). Модуль сканирования (130) также выполнен с возможностью выполнять сканирование устройств защищаемой сетевой инфраструктуры (180) и получать информацию о веб-сервисах, запущенных на портах этих устройств. Модуль сканирования (130) обеспечивает сканирование контрольных точек защищаемой сетевой инфраструктуры и получение информацию об их статусах, то есть параметрах, характеризующих текущее состояние контрольных точек. Если контрольной точкой является доменное имя, скажем, company.com, то информация о статусах такой контрольной точки может включать в себя, в качестве неограничивающего примера, по меньшей мере: IP-адрес, на который отображается (resolve) данное доменное имя, настройки по меньшей мере одного DNS, соответствующего данному доменному имени, названия и номера версий программного обеспечения (веб-сервисов), функционирующих на сервере, имеющем данное доменное имя, название владельца доменного имени (registrar), его адрес, контактный телефон, адрес его электронной почты, дату регистрации доменного имени, дату окончания регистрации доменного имени, текущий статус доменного имени (например, «активно»), а также даты последнего изменения всех перечисленных параметров. Реализация этих функций модулем сканирования (130) не имеет особенностей и может быть выполнена любым общеизвестным образом.

[0057] Модуль анализа (140) выполнен с возможностью обмена данными с модулем сканирования (130), модулем хранения информации (160) и с модулем оповещения (150). Модуль анализа (140) обеспечивает проверку полученной от модуля сканирования (130) информации о статусах контрольных точек защищаемой сетевой инфраструктуры (180) на наличие в ней уязвимостей, небезопасных настроек и других индикаторов компрометации. Реализация этих функций модулем анализа (140) не имеет особенностей и может быть выполнена любым общеизвестным образом.

[0058] Модуль оповещения (150) выполнен с возможностью обмена данными с модулем анализа (140) и с модулем связи (110). Модуль оповещения (150) обеспечивает формирование и передачу, посредством модуля связи (110), оповещения о возможной компрометации защищаемой сетевой инфраструктуры по меньшей мере одним из перечисленных способов: по электронной почте, посредством отправки SMS, посредством отправки MMS, посредством отправки push-уведомления, сообщением в программе обмена мгновенными сообщениями, посредством создания события API. Реализация этих функций модулем оповещения (150) не имеет особенностей и может быть выполнена любым общеизвестным образом.

[0059] Модуль хранения информации (160) выполнен с возможностью обмена данными с модулем связи (110), модулем обнаружения инфраструктуры (120), модулем сканирования (130) и модулем анализа (150). Модуль хранения информации (160) обеспечивает хранение информации, как постоянное, так и временное. Для этого модуль хранения информации (160) содержит по меньшей мере одну базу данных (на Фиг. 1 условно не показана), что позволяет хранить информацию упорядоченно и эффективно осуществлять поиск. Также модуль хранения информации (160) может хранить программные инструкции, исполнение которых обеспечивает реализацию устройством (100) описанного способа. Реализация этих функций модулем хранения информации (160) не имеет особенностей и может быть выполнена любым общеизвестным образом.

[0060] Далее со ссылкой на Фиг. 2А будут описаны основные этапы способа (200) внешнего контроля поверхности кибератаки.

[0061] Способ (200) начинается на этапе (210), когда получают, посредством модуля связи (110), основные сведения об элементах защищаемой инфраструктуры и сохраняют их в базе данных модуля хранения информации (160).

[0062] Основные сведения об элементах защищаемой инфраструктуры в данном случае могут представлять собой по меньшей мере одно из перечисленного: домен или IP-адрес, относящийся по меньшей мере к одному веб-сайту, входящему в состав защищаемой инфраструктуры, по меньшей мере один SSL-сертификат, установленный на таком по меньшей мере одном сайте или на по меньшей мере одном IP-адресе, адрес электронной почты, относящийся к почтовому сервису, функционирующему в защищаемой инфраструктуре, например, адрес корпоративной электронной почты. Кроме того, в состав основных сведений могут входить указатели, например, ссылки, на хранилища данных, присутствующие в защищаемой инфраструктуре, в одном неограничивающем примере это могут быть: FTP-серверы, системы управления базами данных, такие как MongoDB, веб-службы хостинга файлов, такие как AWS bucket storages, и так далее. Дополнительно в состав сведений о защищаемой инфраструктуре могут входить адреса, идентификаторы и номера версий веб-сервисов, функционирующих в защищаемой инфраструктуре.

[0063] Адресом веб-сервиса в данном случае считается IP-адрес сервера и номер порта, на котором данный веб-сервис запущен. Идентификатором сервиса может, без ограничений, служить как наименование веб-сервиса, такое, например, как Apache Tomcat, так и условное обозначение, такое, например, как заранее присвоенный порядковый номер веб-сервиса, или число, являющееся результатом взятия хэш-функции, например, от символьной строки наименования веб-сервиса. Номер версии веб-сервиса представляет собой традиционно используемый в IT-индустрии номер версии программного обеспечения.

[0064] Так, в качестве примера, на этапе (210) в качестве основных сведений об элементах защищаемой инфраструктуры мог быть получен домен company.com.

[0065] Кроме того, на этапе (210) получают, посредством модуля связи (110), сведения об индикаторах компрометации и сохраняют их в базе данных модуля хранения информации (160).

[0066] Следует заметить, что в рамках данного описания понятие индикатора компрометации трактуют шире общепринятого значения. Помимо артефактов, прямо указывающих на факт компрометации (например, наличие в системном реестре записи, характерной для известной вредоносной программы), в рамках данного описания к индикаторам компрометации относят также значения статусов контрольных точек, которые указывают на изменение состояния данной контрольной точки.

[0067] Например, к индикаторам компрометации также относят: изменение данных DNS, изменение владельца IP-адреса, изменение владельца доменного имени, изменение статуса SSL-сертификата, изменение статуса TLS-сертификата, открытие нового порта, запуск нового сервиса, истечение срока действия доменного имени, истечение срока действия SSL-сертификата, истечение срока действия TLS-сертификата, отсутствие названия обнаруженного программного обеспечения (веб-сервиса) в списке легитимного программного обеспечения, принадлежность версии используемого легитимного программного обеспечения (веб-сервиса) к числу известных уязвимых версий этого сервиса, отсутствие или неверная настройка протокола DMARC, использование в SSL/TLS алгоритмов шифрования, относящихся к слабым алгоритмам, а также утечку конфиденциальных данных.

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

[0069] Однако, индикаторы компрометации, получаемые на этапе (210), представляют собой именно объекты или артефакты, обнаружение которых в инфраструктуре может свидетельствовать о ее компрометации. Они могут представлять собой, например, хэш-суммы вредоносных файлов, имена вредоносных файлов и пути, по которым они располагаются, IP-адреса командных серверов вредоносных программ, обращение к которым выполнено одним из устройств защищаемой инфраструктуры, адреса DNS-серверов, используемых вредоносными программами и так далее.

[0070] Кроме того, наряду с такими объектами в состав индикаторов компрометации, получаемых на данном этапе, могут входить также сведения об утечках конфиденциальных данных, например, сведения о названиях компаний, нелегитимный доступ к инфраструктуре которых был выставлен на продажу на специализированных форумах, используемых киберпреступниками, а также сведения о выставленных на продажу учетных, персональных, платежных данных сотрудников таких компаний.

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

[0072] Вся перечисленная информация может быть собрана заблаговременно из любого подходящего источника, например, из открытых сторонних источников данных киберразведки (Threat Intelligence feeds), из результатов анализа трафика или кода вредоносных файлов, выполняемым, например, сторонней платформой детонации вредоносных файлов либо виртуальной средой, "песочницей", сторонними средствами анализа кода вредоносных файлов и т.д. Такая информация может поступать в систему, реализующую способ (200) однократно, на первом этапе (210) ее функционирования. В одном из альтернативных вариантов реализации системы сведения об индикаторах компрометации получают и сохраняют в базе данных модуля хранения информации (160) с заранее заданной периодичностью, например, один раз в сутки, либо, например, каждые четыре часа.

[0073] Действия, выполняемые по способу (200) на этапе (210), не имеют особенностей и могут выполняться любым общеизвестным образом.

[0074] По окончании этапа (210) способ (200) переходит к этапу (220), на котором посредством модуля обнаружения инфраструктуры (120) выявляют контрольные точки защищаемой инфраструктуры (180), а именно относящиеся к ней доменные имена, IP-адреса, SSL- и\или TLS-сертификаты.

[0075] В одном из возможных вариантов реализации описываемого способа основой модуля обнаружения инфраструктуры (120) может являться предварительно построенная графовая модель сети Интернет. Ниже, со ссылкой на Фиг. 3А, будет приведен неограничивающий пример того, как в одном из возможных способов реализации может быть построена графовая модель сети Интернет. Следует заметить, что это упрощенный пример, приведенный для облегчения понимания, поэтому в нем условно не показан ряд вершин графа, которые могут присутствовать в практическом воплощении такой модели.

[0076] Графовая модель сети Интернет (300) представляет собой граф, в вершинах которого находятся элементы инфраструктуры вычислительных сетей и параметры этих элементов. Элементы инфраструктуры вычислительных сетей могут быть задействованы такие, например, как IP-адреса (310), (320), (330), (340), домены (311), (315), (319), (323), (325), порты (312), (316), (332), запущенные на этих портах веб-сервисы (314), (318), (334), SSL- и TLS-сертификаты (313), (317), (321) и т.д. Параметрами элементов инфраструктуры вычислительных сетей могут являться, например, владельцы IP-адресов (302), (342), даты регистрации IP-адресов (не показаны), даты создания и истечения SSL- и TLS-сертификатов (не показаны) и т.д.

[0077] Вершины графа выявляют на этапе построения модели в ходе сканирования сети Интернет. Это сканирование позволяет получить информацию о существовании, статусе и параметрах каждого из перечисленных элементов инфраструктуры вычислительных сетей.

[0078] Ребрами графа являются связи, выявленные в ходе анализа результатов упомянутого сканирования сети Интернет. Связью в данном случае считают выявленное совпадение параметров разных элементов инфраструктуры вычислительных сетей. Построение связей между вершинами может выполняться любым общеизвестным образом, например, так, как это описано в патенте RU 2681699, где находят по меньшей мере первый сетевой ресурс (одну вершину графа) и по меньшей мере второй сетевой ресурс (еще одну вершину графа); извлекают информацию о найденных сетевых ресурсах, включающую по меньшей мере один параметр первого сетевого ресурса и по меньшей мере один параметр второго сетевого ресурса; и в ответ на то, что по меньшей мере один параметр первого сетевого ресурса совпадает с по меньшей мере одним параметром второго сетевого ресурса, строят связь между первым сетевым ресурсом и вторым сетевым ресурсом (ребро между двумя вершинами графа).

[0079] Так, со ссылкой на Фиг. 3, связи между вершинами графа, соответствующим IP-адресам (320), (330) и (340) устанавливают, поскольку эти три адреса принадлежат одному и тому же владельцу (342). Связи между вершинами, соответствующими доменам (315), (319) и (325) устанавливают, поскольку на веб-сайтах, имеющих эти доменные имена, установлен один и тот же SSL-сертификат (317).

[0080] Кроме того, связи между вершинами, соответствующими доменам (315) и (319) устанавливают, поскольку оба этих доменных имени ссылаются (resolve) на один и тот же IP-адрес (310). Аналогично, связи между вершинами, соответствующими доменам (323) и (325) устанавливают, поскольку оба этих доменных имени ссылаются на один и тот же IP-адрес (320).

[0081] Связь между вершинами графа, соответствующими порту (316), открытому по IP-адресу (310) и порту (332), открытому по IP-адресу (330), устанавливают, поскольку на этих портах запущены одинаковые веб-сервисы (318), (334), например, веб-серверы Apache Tomcat одной и той же версии v.3.3.2.

[0082] Каждому ребру графа (каждой связи) в графовой модели сети Интернет (300) может быть поставлен в соответствие определенный вес, характеризующий, например, "прочность" этой связи или какой-либо еще ее параметр. Вычисление или присвоение этих величин может выполняться любым общеизвестным образом. В одном неограничивающем примере, связь может иметь тем больший вес, чем меньшее количество элементов она соединяет; например, связь между IP-адресом (310) и владельцем этого адреса (302) может иметь большой вес, чем связи между IP-адресами (320), (330) и (340) и их владельцем (342).

[0083] Кроме того, вес, присваиваемый каждому ребру графа, может зависеть и от других параметров. Например, связи, построенные от вершин, которые соответствуют SSL-сертификатам, могут иметь больший вес, чем связи, построенные от вершин, которые соответствуют одинаковым веб-сервисам, таким как веб-сервисы (318), (334). Возможны, без ограничений, и любые другие известные способы расчета или присвоения весов ребрам такого графа.

[0084] Вышеописанная графовая модель сети Интернет может быть выполнена с возможностью периодического ее пополнения или обогащения. Пополнение или обогащение графовой модели может выполняться как посредством повторного сканирования сети Интернет и анализа полученных данных вышеописанным способом, так и альтернативными методами, например, описанными ниже.

[0085] В одном неограничивающем примере могут анализировать списки доменов, публикуемые регистраторами доменов, и выявлять таким образом новые домены. В другом примере могут анализировать сетевой трафик в сети Интернет и извлекать из него новые доменные имена. Еще в одном примере новые домены могут извлекать из данных SSL-сертификатов, а также из кода или из трафика анализируемых сторонними системами вредоносных файлов. Аналогично, могут анализировать списки выпущенных SSL- и TLS-сертификатов, получая таким образом сведения о новых сертификатах и доменах, и пополняя графовую модель. Указанный анализ списков, сетевого трафика, кода вредоносных файлов, а также сертификатов может выполняться любым общеизвестным образом.

[0086] Заблаговременно созданная и постоянно пополняемая таким образом графовая модель сети Интернет входит в состав модуля обнаружения инфраструктуры (120), посредством которого на этапе (220) выявляют контрольные точки защищаемой инфраструктуры (180), а именно относящиеся к ней доменные имена, IP-адреса, SSL- и\или TLS-сертификаты, открытые порты и запущенные на этих портах веб-сервисы.

[0087] Основные шаги этапа (220) показаны на чертеже Фиг. 2Б. Этап (220) начинается на шаге (222), на котором находят в графовой модели сети Интернет основные данные об элементах защищаемой инфраструктуры (180), полученные на этапе (210).

[0088] В приведенном ранее примере такие основные данные представляют собой домен (311) company.com. На шаге (222) любым общеизвестным способом находят в графовой модели сети Интернет указанный домен (311) company.com.

[0089] Затем переходят к шагу (224), на котором выявляют фрагмент графовой модели, содержащий все элементы, так или иначе связанные с доменом (311). В одном из неограничивающих вариантов реализации способа для этого берут все элементы графовой модели, с которыми у домена (311) есть какая-либо связь. В другом возможном варианте реализации берут те элементы, которые связаны с исходным элементом защищаемой инфраструктуры таким количеством ребер, которое не превышает заранее заданный порог, например, элементы, связанные с исходным элементом защищаемой инфраструктуры не более чем 500 ребрами (связями). Выявленный фрагмент графовой модели может выглядеть, например, так, как показано на Фиг. 3А.

[0090] Затем переходят к шагу (226), на котором к выявленному фрагменту графа применяют по меньшей мере один алгоритм очистки. Этот по меньшей мере один алгоритм может, без ограничения, быть по меньшей мере одним любым алгоритмом, известным в данной области. В одном неограничивающем примере это может быть алгоритм, отсекающий ребра графа (связи), вес которых меньше заранее заданного порогового значения.

[0091] В результате применения по меньшей мере одного алгоритма очистки на шаге (226) получают очищенный фрагмент графа. Пример такого очищенного фрагмента (350) показан на Фиг. 3Б. Из чертежа видно, что в результате выполнения этапов (222)-(226) в данном примере были выявлены два дополнительных домена, (315) и (319), два SSL-сертификата (313) и (317), IP-адрес (310) сервера 111.222.333.444 и адреса двух открытых на данном сервере портов, на которых запущены сетевые сервисы: порт 111.222.333.444:69 (312), на котором запущен FTP-сервер (314) Cisco TFTP Server v.1.1, и порт 111.222.333.444:8080 (316), на котором запущен вебсервер (318) Apache Tomcat v.3.3.2.

[0092] Затем на шаге (228) дополнительно сканируют выявленные элементы защищаемой инфраструктуры посредством модуля сканирования (130). Это делается с целью получения максимально полной информации о составе защищаемой инфраструктуры. Это сканирование защищаемой инфраструктуры может выполняться один или несколько раз. Оно выполняется полностью аналогично сканированию, описанному ниже применительно к этапу (230).

[0093] Результатом этого сканирования может стать дополнительное обогащение очищенного фрагмента графовой модели сети Интернет данными, полученными в ходе сканирования.

[0094] Например, как показано на Фиг. 3 В, в составе обогащенного очищенного фрагмента графовой модели сети Интернет (360) появились выявленные в ходе дополнительного сканирования порт 111.222.333.444:22 (362), порт 111.222.333.444:443 (364) и порт 111.222.333.444:50050 (366). Указанный чертеж иллюстрирует также то обстоятельство, что удалось выявить открытые порты, но названия и версии веб-сервисов, запущенных на этих портах, остались неизвестными.

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

[0096] Собственно получение по меньшей мере одной веб-страницы может выполняться любым общеизвестным способом. В одном неограничивающем примере данный шаг может подразумевать использование любой широко известной утилиты, которая по заданному доменному имени строит список веб-страниц, ассоциированных с этим доменным именем, например, такой, как утилита SiteAnalyzer. В другом неограничивающем примере может использоваться любой из широко известных алгоритмов краулинга (выявления связанных вебстраниц). Еще в одном неограничивающем примере список веб-страниц, подлежащих анализу и контролю, может быть заранее получен системой, реализующей описываемый способ, и сохранен в базе данных модуля хранения информации (160).

[0097] Анализ выявленных веб-страниц выполняется в две фазы. В ходе первой фазы анализируют характер контента (содержимого), размещенного на каждой веб-странице и выявляют категории контента, к которым относятся проанализированные веб-страницы. Это может выполняться любым общеизвестным образом.

[0098] В качестве неограничивающего примера, это может выполняться способом, описанным в патенте RU 2738335. В соответствии с данным способом, предварительно формируют пул веб-страниц, причем так, чтобы в состав пула в достаточном количестве вошли веб-страницы, контент которых относится к каждой из требующих контроля категорий, например, таких как "авторизация", "платежи и переводы" (то есть страницы, предназначенные для ввода конфиденциальных данных), "контент для взрослых", "азартные игры", "наркотики" (страницы, содержащие высокорискованный контент), "бизнес", "медицина", "отдых", и так далее (страницы всех остальных видов). Затем преобразуют содержимое веб-страниц из HTML в текст, текст токенизируют, формируют матрицу токенов для обучения ансамбля классификаторов, и на основе полученной матрицы токенов создают ансамбль классификаторов, причем для каждого из них заранее определен решающий приоритет. При этом токенизация текста подразумевает исключение из него пунктуации, преобразование всех букв в нижний регистр, преобразование всех слов к первоначальной форме, символьную и статистическую обработку естественного языка и морфологический анализ.

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

• веб-страницы, предназначенные для ввода персональных, учетных или иных конфиденциальных данных,

• веб-страницы содержащие контент для взрослых, контент относящийся к азартным играм и прочий высокорискованный контент,

• все остальные веб-страницы.

[0100] В ходе второй фазы анализа веб-страницы, отнесенные к категории "все остальные", не рассматривают.

[0101] Ссылку на каждую из веб-страниц, отнесенных к категории "страницы для ввода конфиденциальных данных" считают отдельной контрольной точкой. Сведения о таких контрольных точках сохраняют, например, в виде URL, в базе данных модуля хранения информации (160). При этом в базе данных возможна, без ограничений, любая рубрикация подобных сохраняемых ссылок, например, наличие особой пометки "страница для ввода конфиденциальных данных".

[0102] Все ссылки на веб-страницы, отнесенные к категории "страницы с высокорискованным контентом" сохраняют, например, в виде списка URL, в базе данных модуля хранения информации (160), и считают данный список еще одной контрольной точкой.

[0103] В одном из возможных вариантов реализации описываемого способа, дополнительно на шаге (228) посредством модуля обнаружения инфраструктуры (120) также могут выявлять другие веб-страницы, подлежащие проверке на наличие вредоносного кода. В частности, могут выявлять веб-страницы, на которых возможно наличие так называемого веб-шелла (web shell).

[0104] Для выявления страниц, на которых возможно наличие веб-шелла, для каждого из доменов, принадлежащих защищаемой инфраструктуре, проверяют наличие особых папок, в которых вероятно наличие подобных страниц, таких, например, как папка /wp-content/, папка /just7z/, и так далее. Собственно названия особых папок, существование которых подлежит проверке применительно к обнаружению веб-шеллов, хорошо известны специалистам в предметной области. Эти названия могут быть предварительно сохранены отдельным списком в базе данных модуля хранения информации (160).

[0105] При наличии по меньшей мере одной из таких папок, например, папки /wp-content/, проверяют, посредством модуля обнаружения инфраструктуры (120), наличие в этой папке по меньшей мере одного файла, в котором вероятно наличие вредоносного кода, например, какого-либо из файлов wso2.5.1.php, wso2.5.php, wso2.php, wso.php, и так далее. Имена таких файлов хорошо известны специалистам в предметной области; они также могут быть предварительно сохранены отдельным списком в базе данных модуля хранения информации (160).

[0106] Собственно обнаружение файла с заданным именем внутри заданной папки может выполняться любым общеизвестным образом. В ответ на обнаружение каждого такого файла получают ссылку, например, URL, на этот файл.

[0107] Ссылку на каждый из найденных файлов (веб-страниц), отнесенных к категории "страницы, возможно, содержащие веб-шелл" считают отдельной контрольной точкой. Сведения о таких контрольных точках сохраняют, например, в виде URL, в базе данных модуля хранения информации (160). При этом в базе данных возможна, без ограничений, любая рубрикация подобных сохраняемых ссылок, например, наличие особой пометки "веб-шелл".

[0108] Например, в ходе описанной проверки на одном из доменов site3.company.com, относящихся к защищаемой инфраструктуре, может быть обнаружена папка /wp-content/, а внутри этой папки -- веб-страница с именем wso2.php. В данном примере в базе данных модуля хранения информации (160) будет с пометкой "веб-шелл" сохранена следующая ссылка:

[0109] http://site3.company.com/wp-content/wso2.php

[0110] Все обнаруженные в результате выполнения этапа (220) контрольные точки, то есть домены, IP-адреса, SSL и TLS-сертификаты, открытые порты, названия и версии запущенных веб-сервисов защищаемой инфраструктуры (180), а также контрольные точки, представляющие собой ссылки на веб-страницы, система, реализующая способ (200), сохраняет в базе данных модуля хранения информации (160). После этого способ (200) переходит к этапу (230).

[0111] На этапе (230) сканируют, посредством модуля сканирования (130), обнаруженные на предыдущем этапе контрольные точки защищаемой инфраструктуры (180) и получают, также посредством модуля сканирования (130), информацию о статусах контрольных точек защищаемой инфраструктуры.

[0112] К статусам контрольных точек защищаемой инфраструктуры в данном случае относят по меньшей мере:

[0113] Значения ресурсных записей системы доменных имен (DNS), а именно начальной записи зоны (SOA) и записи Name Server (NS). Однако, возможна реализация описываемого способа, в которой используют, то есть получают и впоследствии контролируют также значения и других типов ресурсных записей, например, без ограничения, ресурсных записей типов А, CNAME, MX, TXT и SPF.

[0114] В частности, в одной из возможных вариантов реализации описываемого решения получают ресурсные записи типа ТХТ, задающие конфигурацию протокола DMARC. Такие записи могут отличать от остальных ресурсных записей типа ТХТ по наличию в тексте записи сочетания символов

[0115] v=DMARC1

[0116] Вообще для того, чтобы получить значения ресурсных записей DNS, используют информацию о доменах, имеющихся в составе защищаемой инфраструктуры и обнаруженных в результате выполнения этапа (210). Для каждого домена определяют список используемых этим доменом DNS-серверов, и затем для каждого DNS-сервера получают значения ресурсных записей, относящихся к данному домену, и сохраняют результат в базе данных модуля хранения информации (160). Все перечисленные действия могут быть выполнены любым общеизвестным способом, например, посредством утилиты dig или сервиса Whois в любой их реализации.

[0117] Параметры регистрации каждого из обнаруженных доменов защищаемой инфраструктуры: владелец домена, регистратор (registrar) домена, срок действия домена.

[0118] Для того, чтобы получить значения этих параметров, используют информацию о доменах, имеющихся в составе защищаемой инфраструктуры и обнаруженных в результате выполнения этапа (210). Для каждого домена любым общеизвестным способом, например, посредством сервиса Whois, получают указанные значения и сохраняют результат в базе данных модуля хранения информации (160).

[0119] Параметры сертификатов, установленных на каждом из доменов и IP-адресов защищаемой инфраструктуры. Для каждого из доменов и IP-адресов определяют статус его SSL-сертификата или TLS-сертификата (статус указывает действителен ли сертификат), срок действия SSL-сертификата или TLS-сертификата и алгоритмы шифрования, который могут быть использованы сервером, на котором установлен данный сертификат.

[0120] Для того, чтобы получить значения этих параметров, используют информацию о доменах и IP-адресах, имеющихся в составе защищаемой инфраструктуры и обнаруженных в результате выполнения этапа (210); собственно получение параметров сертификата может быть выполнено любым общеизвестным образом, например, посредством открыто доступной библиотеки OpenSSL либо путем формирования GET-запроса к открытому онлайн-сервису, такому как www.sslshopper.com, и парсинга (разбора) текста ответа, полученного от этого онлайн-сервиса.

[0121] При этом, помимо прочего, в ответе сервера, на котором установлен определенный сертификат, например, TLS-сертификат, будут содержаться коды поддерживаемых алгоритмов шифрования. Они могут выглядеть, например, следующим образом:

[0122] TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256

[0123] Впоследствии, анализируя подобные коды, система, реализующая описываемый способ, может определить, являются ли алгоритмы шифрования, которые поддерживает домен или сервер при данном установленном сертификате, слабыми.

[0124] Параметры регистрации каждого из обнаруженных IP-адресов защищаемой инфраструктуры: владелец адреса, хостинг-провайдер, срок действия IP-адреса.

[0125] Для того, чтобы получить значения этих параметров, используют информацию об IP-адресах, имеющихся в составе защищаемой инфраструктуры и обнаруженных в результате выполнения этапа (210). Для каждого IP-адреса любым общеизвестным способом, например, посредством сервиса Whois, получают указанные значения и сохраняют результат в базе данных модуля хранения информации (160).

[0126] Параметры активности каждого из обнаруженных IP-адресов защищаемой инфраструктуры: перечень портов, открытых на данном IP-адресе, а также перечень веб-сервисов, запущенных на портах данного IP-адреса и версии программного обеспечения, соответствующего этим веб-сервисам.

[0127] Для того, чтобы получить перечень открытых портов, а также названия и версии запущенных на них сервисов, используют информацию об IP-адресах, имеющихся в составе защищаемой инфраструктуры и обнаруженных в результате выполнения этапа (210). Притом используют так называемый сканер портов, то есть программную реализацию алгоритма, построенного, например, на принципах SYN, TCP, UDP, ACK или FIN-сканирования, либо на любых других известных принципах сканирования портов, позволяющих отличить открытый порт от закрытого.

[0128] Для каждого IP-адреса посредством заранее подготовленного скрипта или онлайн-сервиса (такого, например, как nmap.org), получают список открытых на данном IP-адресе в настоящий момент портов, а также названия (идентификаторы) и версии запущенных на них веб-сервисов и сохраняют результат в базе данных модуля хранения информации (160). Собственно получение этих сведений является общеизвестной, стандартной функцией сканеров портов. По ответам сканера портов определяют не только номера открытых портов, но и названия и версии запущенных на них программ (веб-сервисов).

[0129] Еще в одном возможном варианте реализации описываемого способа для определения состояния портов используются известные сетевые утилиты, входящие в комплект поставки некоторых операционных систем, такие как утилиты netstat и nmap.

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

[0131] Ссылки на веб-страницы, отнесенные к категории "страницы с высокорискованным контентом" на этапе (220) были сохранены, например, в виде списка URL, в базе данных модуля хранения информации (160). Данный список считается контрольной точкой, статусом которой является длина списка: нулевую длину списка считают указанием на отсутствие в защищаемой инфраструктуре страниц с высокорискованным контентом (азартные игры, контент для взрослых, наркотические вещества и т.д.). Ненулевую длину списка, напротив, считают указанием на наличие по меньшей мере одной ссылки на подобную страницу внутри защищаемой инфраструктуры.

[0132] Контрольной точкой также считается каждая из ссылок на страницу, которая может содержать вредоносный код. На этапе (230) каждую из таких ссылок проверяют, посредством модуля анализа (140), и по результатам проверки присваивают ей соответствующий статус безопасности, указывающий на наличие или отсутствие на данной веб-странице вредоносного кода.

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

[0134] В рассматриваемом примере при проверке файла, расположенного по ссылке

[0135] http://site3.company.com/wp-content/wso2.php

[0136] одним из YARA-правил, например, таким:

[0137] будет выявлено наличие в данном файле веб-шелла. В результате этой проверки для данной контрольной точки будет выставлен статус "Обнаружен вредоносный код".

[0138] В другом случае, если бы веб-шелл не был обнаружен, для соответствующей этой странице контрольной точки был бы выставлен статус "Страница безопасна".

[0139] Аналогичным образом, при проверке страниц, отнесенных к категориям "страницы, для ввода конфиденциальных данных" каждую из этих страниц загружают в браузере, находят находящиеся в составе страницы скрипты, декодируют их, а затем проверяют, посредством модуля анализа (140), код скриптов при помощи заранее подготовленных и сохраненных в базе данных модуля хранения информации (160) сигнатур, предназначенных для выявления известных JS-снифферов и эксплойтов. Такие сигнатуры хорошо известны специалистам в предметной области. Указанная процедура анализа страниц также хорошо известна специалистам; она может выполняться любым общеизвестным способом.

[0140] Совершенно аналогично, в результате проверки страниц, в коде скриптов которых был выявлен JS-сниффер или эксплойт, для соответствующей этой странице контрольной точки выставляют статус "Обнаружен вредоносный код". В том случае, если ни JS-сниффер, ни эксплойт не были обнаружены, для соответствующей этой странице контрольной точки выставляют статус "Страница безопасна".

[0141] Все полученные в ходе выполнения этапа (230) сведения о статусах контрольных точек защищаемой инфраструктуры (180) система, реализующая способ (200), сохраняет в базе данных модуля хранения информации (160). Следует заметить, что технически каждый статус контрольной точки может представлять собой, например, строку символов, сохраненную в файле текстового формата. Альтернативно, каждый статус может представлять собой запись в базе данных. При этом помимо собственно значения статуса в данной записи может храниться также дополнительная информация, например, указание вида или типа контрольной точки, к которой относится данный статус: данные DNS, сведения о сертификате, сведения об IP-адресе и т.д. Иными словами, в базе данных возможна, без ограничений, любая рубрикация статусов контрольных точек по их видам, разновидностям, датам и времени получения и т.д.

[0142] После этого способ (200) переходит к этапу (240).

[0143] На этапе (240) проверяют, посредством модуля анализа (140), модуля связи (110) и базы данных модуля хранения информации (160), наличие индикаторов компрометации в информации о статусах контрольных точек. Притом в ответ на обнаружение по меньшей мере одного индикатора компрометации формируют и передают, посредством модуля оповещения (150) и модуля связи (110), по меньшей мере одно предупреждение о возможной кибератаке.

[0144] Подробнее выполнение этапа (240) будет описано ниже со ссылкой на Фиг. 4А и Фиг. 4Б.

[0145] Следует заметить, что проверки, выполняемые в ходе этапа (240), могут отличаться от показанной на Фиг. 4А и Фиг. 4Б последовательности, то есть действия выполняемые в соответствии с Фиг. 4А могут выполняться и до действий, выполняемых в соответствии с Фиг. 4Б, и после них, и одновременно с ними.

[0146] Следует также упомянуть, что для простоты восприятия на Фиг. 4А и Фиг. 4Б показан не полный возможный набор проверок, а лишь иллюстративные неограничивающие примеры. Полный ассортимент выполняемых проверок может быть, в соответствии с данным описанием, значительно шире, чем показано на упомянутых чертежах.

[0147] Итак, этап (240) может начинаться на шаге (242), на котором получают, посредством модуля анализа (140), из сохраненного ранее в базе данных модуля хранения информации (160) списка статусов контрольных точек, полученных в ходе выполнения этапа (230), очередной статус контрольной точки.

[0148] Затем на шаге (244) выбирают тип проверки, который зависит от того, что представляет собой данная контрольная точка, является ли она данными DNS, доменом, IP-адресом и так далее. Поскольку все статусы контрольных точек, как было описано выше применительно к этапу (230), при сохранении в базе данных рубрицируют по типам контрольных точек, данный выбор типа проверки является чисто формальным и может быть выполнен любым общеизвестным способом.

[0149] Так, если статус контрольной точки (246) представляет собой данные DNS, название владельца IP-адреса, владельца домена, статус SSL- или TLS-сертификата, то в его отношении выполняется проверка (248) факта изменения данного статуса. Она может выполняться любым общеизвестным способом, например, сравнением текущего и предыдущего по времени значений данного статуса, где предыдущее по времени значение посредством аналитического модуля (140) также получают из базы данных модуля хранения информации (160).

[0150] Например, на шаге (242) в 20.20 18 января 2020 года получили статус контрольной точки, в соответствии с которым владельцем IP-адреса 111.222.333.444 является компания Company, Ltd. На шаге (248) посредством аналитического модуля (140) строят запрос к базе данных, получают предыдущее по времени значение этого же статуса и находят, что в соответствии с предыдущим статусом этой контрольной точки, полученным в 10.10 17 января 2020 года, владельцем этого IP-адреса также являлась компания Company, Ltd. Таким образом, проверка на шаге (248) показала, что статус контрольной точки «владелец IP-адреса 111.222.333.444» не изменился. Поэтому считают, что индикатор компрометации не обнаружен, и способ возвращается к шагу (242), на котором получают очередной статус.

[0151] В другом примере, на шаге (242) в 20.20 18 января 2020 года получили статус контрольной точки, в соответствии с которым владельцем домена site3.company.com является компания Badguys, Ltd. На шаге (248) посредством аналитического модуля (140) строят запрос к базе данных, получают предыдущее по времени значение этого же статуса и находят, что в соответствии с предыдущим статусом этой контрольной точки, полученным в 10.10 17 января 2020 года, владельцем этого домена являлась компания Company, Ltd. Таким образом, проверка на шаге (248) показала, что статус контрольной точки «владелец домена site3.company.com» изменился, что является индикатором компрометации. Поэтому способ переходит к шагу (250), на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ также возвращается к шагу (242).

[0152] Далее, если статус контрольной точки (252) представляет собой открытый на некотором данном IP-адресе порт, либо запущенный на этом порту сервис, то в его отношении выполняется проверка (254) того факта, что данный порт или сервис является новым. Она может выполняться любым общеизвестным способом, например, сравнением текущего и предыдущего по времени значений данного статуса, где предыдущее по времени значение посредством аналитического модуля (140) также получают из базы данных модуля хранения информации (160).

[0153] Например, на шаге (242) в 20.20 18 января 2020 года получили статус контрольной точки, в соответствии с которым на IP-адресе 111.222.333.444 имеется открытый порт 8080. На шаге (254) посредством аналитического модуля (140) строят запрос к базе данных, получают предыдущее по времени значение этого же статуса и находят, что в соответствии с предыдущим статусом этой контрольной точки, полученным в 20.20 17 января 2020 года, на данном IP-адресе также был открыт порт 8080. Таким образом, проверка на шаге (254) показала, что статус контрольной точки «на IP-адресе 111.222.333.444 открыт порт 8080» не изменился. Поэтому считают, что индикатор компрометации не обнаружен, и способ возвращается к шагу (242), на котором получают очередной статус.

[0154] В одной из возможных альтернативных реализаций описываемого способа в том случае, если на шаге (252) обнаружен открытый порт, на шаге (254) этот порт также проверяют на принадлежность к заранее сохраненному в базе данных модуля памяти (160) списку портов, открытие которых считают индикатором компрометации. В этой реализации посредством аналитического модуля (140) строят запрос к базе данных, получают список портов, открытие которых считается безусловным индикатором компрометации и проверяют, присутствует ли в этом списке обнаруженный открытый порт. То, что порт, например, порт 4899, присутствует в списке, считают индикатором компрометации. Поэтому способ переходит к шагу (250), на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ также возвращается к шагу (242).

[0155] В другом примере, на шаге (242) в 20.20 18 января 2020 года получили статус контрольной точки, в соответствии с которым на IP-адресе 111.222.333.444 имеется открытый порт 8443. На шаге (254) посредством аналитического модуля (140) строят запрос к базе данных, получают предыдущее по времени значение этого же статуса и находят, что в соответствии с предыдущим статусом этой контрольной точки, полученным в 20.20 17 января 2020 года, на данном IP-адресе не было открытого порта 8443. Таким образом, проверка на шаге (254) показала, что статус контрольной точки «на IP-адресе 111.222.333.444 открыт порт 8443» изменился, что считают индикатором компрометации. Поэтому способ переходит к шагу (250), на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ также возвращается к шагу (242).

[0156] Следует заметить, что злоумышленник, получив доступ к легальной инфраструктуре, может, в частности, установить в ней систему управления вредоносным кодом, либо прокси-сервер, позволяющий пересылать (проксировать) запросы от вредоносного кода на какой-то другой сервер, принадлежащий злоумышленнику. За счет такого проксирования злоумышленник скрывает адрес настоящего вредоносного сервера, а вредоносная программа взаимодействует с легитимной и доверенной инфраструктурой, что сильно усложняет ее обнаружение. Общее название для подобного рода веб-сервисов - командно-контрольный сервер или С2-сервер (command and control server).

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

[0158] В одной из возможных реализаций описываемого способа, если статус контрольной точки представляет собой открытый порт, а название запущенного на нем веб-сервиса неизвестно, то в отношении данного веб-сервиса может выполняться, посредством аналитического модуля (140), проверка (на Фиг. 4А не показана) того, что данный веб-сервис не представляет собой командно-контрольный сервер злоумышленников.

[0159] В рамках вышеописанного примера, такая проверка может выполняться в отношении всех показанных на Фиг. 3В портов, для которых не удалось определить название запущенного веб-сервиса, то есть портов 111.222.333.444:22 (362), 111.222.333.444:443 (364) и 111.222.333.444:50050 (366).

[0160] В альтернативном варианте реализации описываемого способа такая проверка может выполняться в отношении только тех открытых портов, которые присутствуют в списке портов, используемых известными С2-серверами. Этот список может содержать также названия соответствующих С2-серверов и перечень особенностей каждого из С2-серверов. Вся эта информация относится к хорошо известной в предметной области; такой список может быть подготовлен заранее и сохранен в базе данных модуля памяти (160).

[0161] Применительно к вышеприведенному примеру, посредством аналитического модуля (140) проверяют наличие портов 22, 443 и 50050 в списке портов, используемых известными С2-серверами. В результате устанавливают, что в списке присутствует только один из этих портов, а именно 50050, и получают из списка сведения о том, что порт 50050 часто используется Cobalt Strike Team Server (программный продукт для пентестинга, популярный также у злоумышленников). В таком случае описанные ниже действия выполняют только для этого порта.

[0162] Проверка того, веб-сервис, работающий на порту 50050, не представляет собой командно-контрольный сервер злоумышленников, выполняется путем отправки, посредством модуля связи (110), типового HTTP-запроса на данный порт, и последующего анализа, посредством аналитического модуля (140), ответа, полученного от веб-сервиса, работающего на порту 50050.

[0163] Поскольку из списка портов, используемых известными С2-серверами, ранее получили информацию, что порт 50050 используется Cobalt Strike Team Server, для проверки ответа, полученного от веб-сервиса, работающего на этом порту, выбирают из базы данных хорошо известную в предметной области характерную особенность, присущую Cobalt Strike Team Server: в ответе этого сервера присутствует лишний пробел.

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

[0165] В том случае, если лишний пробел в ответе сервера не будет обнаружен, считают, что на порту 50050 работает легитимный веб-сервис, и способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0166] В одной из возможных реализаций описываемого способа, если статус контрольной точки представляет собой значение ресурсной записи DNS, то в его отношении выполняется, посредством аналитического модуля (140), проверка (на Фиг. 4А не показана) того факта, что DNS-сервер функционирует правильно. Это может быть выполнено любым общеизвестным образом, например, поиском в тексте ресурсной записи ключевых слов или численных значений, соответствующих правильному функционированию DNS-сервера. В том случае, если такие ключевые слова не найдены или численные значения не соответствуют правильному функционированию DNS-сервера, считают, что обнаружен индикатор компрометации, и способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0167] В качестве неограничивающего примера, упомянутая проверка значений ресурсных записей DNS может проводиться в отношении по меньшей мере одного из следующих состояний, каждое из которых считается индикатором компрометации:

• Ни один из DNS не отвечает на запросы,

• По меньшей мере один из DNS не ответил вовремя,

• По меньшей мере один из DNS не объявил себя авторитетным (authoritative),

• DNS SEC не поддерживается для данного домена,

• Список DNS, предоставленный корневым сервером (8.8.8.8), не соответствует списку, опубликованному DNS,

• Для данного домена есть только один DNS,

• Найден по меньшей мере один DNS, который способен отвечать на любой поиск DNS с любого IP (Open Recursive Name Server),

• По меньшей мере один DNS является Open Zone Transfer Server и предоставил информацию во всей DNS-зоне,

• По меньшей мере один DNS-сервер имеет частный IP-адрес,

• Не найдена опубликованная запись DNS для данного домена или имени хоста,

• Более одного DNS находятся в одной подсети класса С,

• Срок действия DNS SOA не соответствует рекомендуемому RFC,

• Значение кэша DNS SOA не соответствует рекомендуемому RFC,

• Значение обновления DNS SOA не соответствует рекомендуемому RFC,

• Значение повторной попытки DNS SOA не соответствует рекомендуемому RFC,

• Серийные номера SOA не совпадают,

• Неверный формат серийного номера DNS SOA.

[0168] Специалисту в предметной области будет очевидно, каким именно образом может выполняться каждая из указанных проверок. Также специалисту в предметной области очевидно, что слова "данный домен" или "данный хост" здесь обозначают тот принадлежащий защищаемой инфраструктуре домен или вычислительное устройство, которому соответствует по меньшей мере один проверяемый DNS.

[0169] В одной из возможных реализаций описываемого способа, если статус контрольной точки представляет собой значение ресурсной записи DNS (системы доменных имен), содержащей параметры настройки протокола DMARC, то в его отношении выполняется проверка (на Фиг. 4А не показана) того факта, что протокол DMARC установлен и правильно настроен. Это может выполняться любым общеизвестным образом, например, путем проверки, выполняемой посредством аналитического модуля (140), наличия в тексте ресурсной записи тэгов DMARC, соответствующих правильной настройке протокола. Отсутствие таких тэгов, как и отсутствие самой ресурсной записи, содержащей параметры настройки DMARC, считают индикатором компрометации.

[0170] Например, получили статус контрольной точки, в соответствии с которым ресурсная запись DNS содержит следующие параметры настройки протокола DMARC:

[0171] "v=DMARC1; p=none;"

[0172] Посредством аналитического модуля (140) убеждаются, что в тексте данной ресурсной записи не присутствует ни один из тэгов, наличие которых указывает на правильную настройку протокола, а именно тэгов quarantine и reject. Поэтому считают, что обнаружен индикатор компрометации, и способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0173] В другом примере, получили статус контрольной точки, в соответствии с которым ресурсная запись DNS содержит следующие параметры настройки протокола DMARC:

[0174] "v=DMARC1; p=quarantine; rua=mailto:admin@company.com"

[0175] Посредством аналитического модуля (140) убеждаются, что в тексте данной ресурсной записи присутствует один из тэгов, наличие которых указывает на правильную настройку протокола, а именно тэг quarantine. Поэтому считают, что индикатор компрометации не обнаружен, и способ переходит к шагу, на котором получают очередной статус контрольной точки.

[0176] Дополнительно, если статус контрольной точки представляет собой запущенный на некотором порту сервис, то в его отношении выполняется проверка (на Фиг. 4А не показана) того факта, что данный сервис является легитимным. Она может выполняться любым общеизвестным способом, например, поиском, посредством аналитического модуля (140), названия сервиса в заранее составленном списке легитимных веб-сервисов, хранящемся в базе данных модуля хранения информации (160).

[0177] Например, получили статус контрольной точки, в соответствии с которым на порту 8080 запущен веб-сервис Apache Tomcat. Посредством аналитического модуля (140) строят запрос к базе данных и находят, что название Apache Tomcat присутствует в списке легитимных сервисов. Поэтому считают, что индикатор компрометации не обнаружен, и способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0178] В другом примере получили статус контрольной точки, в соответствии с которым на порту 5938 запущен веб-сервис TeamViewer. Посредством аналитического модуля (140) строят запрос к базе данных и находят, что название TeamViewer отсутствует в списке легитимных сервисов. Это считают индикатором компрометации. Поэтому способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0179] Дополнительно, если статус контрольной точки представляет собой запущенный на некотором порту сервис, то в его отношении выполняется проверка (на Фиг. 4А не показана) того факта, что версия данного веб-сервиса не относится к известным уязвимым версиям данного веб-сервиса. Такая проверка на может выполняться любым общеизвестным способом, например, поиском, посредством аналитического модуля (140), полученной версии сервиса в заранее составленном списке уязвимых версий легитимных веб-сервисов, хранящемся в базе данных модуля хранения информации (160).

[0180] Например, получили статус контрольной точки, в соответствии с которым на порте 8080 запущен сервис Apache Tomcat v.3.3.2. Посредством аналитического модуля (140) строят запрос к базе данных и находят, что версия Apache Tomcat v.3.3.2 отсутствует в списке уязвимых версий этого сервиса. Поэтому считают, что индикатор компрометации не обнаружен, и способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0181] В другом примере получили статус контрольной точки, в соответствии с которым на порте 69 запущен сервис Cisco TFTP Server v.1.1. Посредством аналитического модуля (140) строят запрос к базе данных и находят, что версия Cisco TFTP Server v.1.1 присутствует в списке уязвимых версий этого сервиса. Это считают индикатором компрометации. Поэтому способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ также возвращается к шагу, на котором получают очередной статус контрольной точки..

[0182] Дополнительно, если описанная выше проверка показала, что запущенный на некотором порту веб-сервис является легитимным сервисом и представляет собой одну из систем управления базами данных (СУБД), такую, например, как MongoDB, или облачное хранилище, такое, например, как S3 Buckets, то в отношении этого сервиса выполняется проверка (на Фиг. 4А не показана) того факта, что данная СУБД или данное хранилище недоступны неавторизованным пользователям. Такая проверка может выполняться любым общеизвестным способом.

[0183] В одной из возможных реализаций данного решения проверка может заключаться в выборе, посредством аналитического модуля (140), из списка тестовых запросов, хранящегося в базе данных модуля хранения информации (160), строки тестового запроса, синтаксис которого соответствует разновидности запущенного веб-сервиса и отправке, посредством модуля связи (110), данного запроса на адрес запущенного веб-сервиса. В ответ на получение, посредством модуля связи (110), ответа вида "Ошибка авторизации" считают, что СУБД или хранилище недоступны неавторизованным пользователям.

[0184] В ответ на получение, посредством модуля связи (110), любого другого ответа, не являющегося ответом вида "Ошибка авторизации", считают, что обнаружен индикатор компрометации. Поэтому в таком случае способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0185] Например, получили статус контрольной точки, в соответствии с которым на порту 27017 запущен легитимный сервис MongoDB. Посредством аналитического модуля (140) выбирают из базы данных тестовый запрос, соответствующий синтаксису MongoDB, например,

[0186] >db.users.find();

[0187] и отправляют, посредством модуля связи (110), данный запрос на адрес запущенного веб-сервиса. В ответ, посредством модуля связи (110), получают ответ вида "Ошибка авторизации". Поэтому считают, что данная СУБД недоступна неавторизованным пользователям, индикатор компрометации не обнаружен, и способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0188] В другом примере получили статус контрольной точки, в соответствии с которым на порту 3306 запущен легитимный сервис mySQL. Посредством аналитического модуля (140) выбирают из базы данных тестовый запрос, соответствующий синтаксису mySQL, например,

[0189] mysqli_connect('111.222.333.444:3306','root','root','DataBasel');

[0190] В ответ, посредством модуля связи (110), получают ответ вида "Ошибка: 2002 - Нет такого файла или каталога". Этот ответ не является ответом вида "Ошибка авторизации", поэтому его получение считают индикатором компрометации. Способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ также возвращается к шагу, на котором получают очередной статус контрольной точки.

[0191] Наконец, если статус контрольной точки (256) представляет собой срок действия SSL- или TLS-сертификата, то в его отношении выполняется проверка (258) того факта, что данный срок действия вскоре истечет, например, истечет в течение 30 дней, начиная с текущего момента, либо, например, в течение 15 дней. Проверка может выполняться посредством аналитического модуля (140) любым общеизвестным способом, например, путем вычисления разности даты истечения сертификата, полученной из статуса (256) и текущей даты, полученной из показаний системных часов вычислительного устройства, реализующего метод (200).

[0192] Например, на шаге (242) получили статус контрольной точки (256), в соответствии с которым на домене company.com установлен SSL-сертификат, срок действия которого истекает 20 декабря 2021 года. На шаге (258) посредством аналитического модуля (140) любым общеизвестным образом обращаются к системным часам и получают текущую дату, например, 17 января 2020 года. Затем вычитают из даты истечения срока действия сертификата текущую дату и получают величину 703 (дня). Сравнивая полученную разность с предварительно заданной пороговой величиной, равной, например, 30, убеждаются, что SSL-сертификат домена company.com будет действовать дольше заданного временного интервала. Поэтому считают, что индикатор компрометации не обнаружен, и способ возвращается к шагу (242), на котором получают очередной статус.

[0193] В другом примере, на шаге (242) получили статус контрольной точки (256), в соответствии с которым на домене company.com установлен SSL-сертификат, срок действия которого истекает 14 февраля 2020 года. На шаге (258) посредством аналитического модуля (140) любым общеизвестным образом обращаются к системным часам и получают текущую дату, например, 17 января 2020 года. Затем вычитают из даты истечения срока действия сертификата текущую дату и получают величину 28 (дней). Сравнивая полученную разность с предварительно заданной пороговой величиной, равной, например, 30, убеждаются, что SSL-сертификат домена company.com перестанет действовать до истечения заданного временного интервала. Поэтому считают, что индикатор компрометации обнаружен, и способ переходит к шагу (250), на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ также возвращается к шагу (242).

[0194] Дополнительно, если статус контрольной точки представляет собой алгоритмы шифрования, используемые одним из объектов защищаемой инфраструктуры, на котором установлен SSL- или TLS-сертификата, то в его отношении выполняется проверка (на Фиг. 4А не показана) того факта, что среди используемых алгоритмов шифрования отсутствуют слабые алгоритмы шифрования. Подобная проверка может выполняться любым общеизвестным способом, например, поиском, посредством аналитического модуля (140), в списках кодов, соответствующим слабым алгоритмам шифрования, тех кодов, которые соответствуют поддерживаемым данным устройством алгоритмам шифрования. При этом список кодов, соответствующим слабым алгоритмам шифрования, хранится в базе данных модуля хранения информации (160).

[0195] Например, получили статус контрольной точки, в соответствии с которым один из объектов защищаемой инфраструктуры, например, домен site2.company.com, с установленным на нем сертификатом TLS v.1.2, использует алгоритмы шифрования, отображенные следующим набором кодов:

[0196] TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384

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

[0198] В другом примере получили статус контрольной точки, в соответствии с которым один из объектов защищаемой инфраструктуры, например, домен company.com, с установленным на нем сертификатом TLS v.1.2, использует алгоритмы шифрования, отображенные следующим набором кодов:

[0199] TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA

[0200] Посредством аналитического модуля (140) строят запрос к базе данных и находят, что данный набор кодов соответствует слабым алгоритмам шифрования. Это считают индикатором компрометации. Поэтому способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0201] В одной из возможных реализаций описываемого способа, если статус контрольной точки представляет собой статус безопасности веб-страницы, подлежащей проверке на наличие вредоносного кода, то в его отношении выполняется проверка (на Фиг. 4А не показана) того факта, что это статус "Страница безопасна". Это может выполняться любым общеизвестным образом, например, путем проверки, выполняемой посредством аналитического модуля (140). Несовпадение текущего статуса данной контрольной точки со значением "Страница безопасна", например, если текущий статус - "Обнаружен вредоносный код", считают индикатором компрометации.

[0202] Поэтому в таком случае способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0203] Также в одной из возможных реализаций описываемого способа, если статус контрольной точки представляет собой длину списка ссылок на веб-страницы, содержащие высокорискованный контент, то в его отношении выполняется проверка (на Фиг. 4А не показана) того факта, что длина списка равна нулю. Это может выполняться любым общеизвестным способом, например, путем проверки, выполняемой посредством аналитического модуля (140).

[0204] Если длина данного списка равна нулю, то считают, что в защищаемой инфраструктуре нет ни одной веб-страницы с высокорискованным контентом (то есть контент, посвященный таким темам как азартные игры, эротика и порнография, наркотические вещества и т.д.). В этом случае способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0205] Если длина списка ссылок на веб-страницы, содержащие высокорискованный контент, отличается от нуля, это считают указанием на наличие по меньшей мере одной страницы с подобным контентом внутри защищаемой инфраструктуры. Это считают индикатором компрометации.

[0206] Поэтому в таком случае способ переходит к шагу, на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ возвращается к шагу, на котором получают очередной статус контрольной точки.

[0207] Как было описано выше применительно к этапу (210) и Фиг. 2А, в состав индикаторов компрометации, обрабатываемых по описываемому способу, могут входить также сведения об утечках конфиденциальных данных, например, сведения о названиях компаний, нелегитимный доступ к инфраструктуре которых был выставлен на продажу на специализированных форумах, используемых киберпреступниками, сведения о выставленных на продажу конфиденциальных данных сотрудников таких компаний, а также сведения о том, что одно из вычислительных устройств, принадлежащих, судя по его IP-адресу, к защищаемой инфраструктуре, обращалось к по меньшей мере одному командному серверу, принадлежащему злоумышленникам.

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

[0209] Такие индикаторы компрометации могут быть собраны в закрытых источниках, таких как специализированные форумы киберпреступников, либо получены в результате работы сторонних систем, выполняющих анализ кода и\или детонацию вредоносных файлов, заблаговременно. В равной мере, такие индикаторы компрометации могут собираться в указанных источниках постоянно, сторонними системами или операторами, преобразовываться в любой подходящий формат и периодически поступать, как было описано выше, в систему, реализующую данный способ. Например, такие индикаторы компрометации могут поступать один раз в сутки, каждые четыре часа, каждый час, и так далее.

[0210] Данные, имеющие смысл очередной поступившей порции вышеописанных индикаторов компрометации, могут рассматриваться системой, реализующей способ (200), как очередной статус контрольной точки поверхности кибератаки защищаемой инфраструктуры.

[0211] Как показано на Фиг. 4Б, при получении (243) очередного такого статуса контрольной точки, на шаге (245) выполняют, посредством аналитического модуля (140), поиск в поступивших данных ключевых слов, соответствующих конфиденциальным данным защищаемой инфраструктуры. Список таких ключевых слов может быть составлен заранее, на этапе подготовки системы, реализующей способ. Также весь этот список либо его обновления и дополнения может поступать в систему, реализующую способ, посредством модуля связи (110), например, с одного из устройств защищаемой инфраструктуры (180), с заданной периодичностью, например, один раз в сутки, и сохраняться в базе данных модуля хранения информации (160).

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

[0213] Например, на шаге (243) получили упомянутый статус контрольной точки, и на шаге (245) посредством аналитического модуля (140) провели в полученных данных поиск по ключевым словам. Поиск дал нулевой результат; в полученных данных не найдено ни одного ключевого слова. Это интерпретируют как отсутствие на ресурсах, используемых злоумышленниками, каких-либо предложений по продаже скомпрометированных конфиденциальных данных, относящихся к защищаемой инфраструктуре, равно как и отсутствие в результатах анализа кода и\или трафика заведомо вредоносных программ, выполнявшегося сторонними системами, указаний на то, что какой-либо устройство, принадлежащее, судя по его доменному имени или IP-адресу, к защищаемой инфраструктуре, отправляло запросы к какому-либо известному внешнему командно-контрольному серверу, принадлежащему злоумышленникам. Поэтому считают, что факт компрометации не обнаружен, и способ возвращается к шагу (243), на котором получают очередной статус контрольной точки, то есть новую порцию данных с интернет-ресурсов, используемых злоумышленниками.

[0214] В другом примере, на шаге (243) получили упомянутый статус контрольной точки, и на шаге (245) посредством аналитического модуля (140) провели в полученных данных поиск по ключевым словам. Поиск дал ненулевой результат; например, при поиске по ключевому слову, представляющему собой домен корпоративной почты @company.com, были обнаружены валидные адреса корпоративной электронной почты действующих сотрудников компании: ivan@company.com, petr@company.com и emelya@company.com. Факт обнаружения корпоративных адресов среди данных, предлагаемых к продаже злоумышленниками, считают индикатором компрометации. В другом примере, при поиске по ключевому слову, представляющему собой IP-адрес одного из устройств защищаемой инфраструктуры, было обнаружено, что с данного адреса осуществлялось обращение к одному из известных IP-адресов, принадлежащих командно-контрольным серверам злоумышленников. Поэтому в обоих описанных случаях способ переходит к шагу (250), на котором, посредством модуля оповещения (150) и модуля связи (110), формируют и передают предупреждение о возможной кибератаке. После чего способ возвращается к шагу (245), на котором продолжают поиск по ключевым словам.

[0215] Как было описано выше применительно к Фиг. 1 и модулю связи (150), этот модуль позволяет формировать и отправлять (посредством модуля связи) оповещения о возможной компрометации защищаемой сетевой инфраструктуры по меньшей мере одним из перечисленных способов: по электронной почте, посредством отправки SMS, посредством отправки MMS, посредством отправки push-уведомления, сообщением в программе обмена мгновенными сообщениями, посредством создания события API.

[0216] Следует отметить, что использование такого средства оповещения, как события API позволяет реализовать дополнительную интеграцию описываемой системы с различными сторонними инструментами, такими как брандмауэры, файрволлы, платформы управления безопасностью, SIEM-решения и так далее. Собственно формирование всех перечисленных оповещений, таких как электронные письма, SMS, MMS, push-уведомления и т.д. может быть выполнено любым общеизвестным образом.

[0217] На Фиг. 5 представлена пример общей схемы вычислительного устройства (500), обеспечивающего обработку данных, необходимую для реализации заявленного решения. Как было описано выше применительно к Фиг. 1, модули, реализующие описанный способ, с точки зрения их технической реализации могут быть программными модулями, исполняемыми на одном вычислительном устройстве, так и программно-аппаратными модулями. Например, по меньшей мере некоторые из этих модулей, равно как и комбинация этих модулей могут быть реализованы как вычислительное устройство (500), представленное на Фиг. 5.

[0218] В общем случае устройство (500) содержит такие компоненты как один или более процессоров (501), по меньшей мере одно оперативное запоминающее устройство или память (502), средство хранения данных (503), интерфейсы ввода/вывода (504), средство В/В (505), средства сетевого взаимодействия или, что то же самое, передачи данных (506).

[0219] Процессор (501) устройства выполняет основные вычислительные операции, необходимые для функционирования устройства (500) или функциональности одного или более его компонентов. Процессор (501) исполняет необходимые машиночитаемые команды, содержащиеся в оперативной памяти (502).

[0220] Память (502), как правило, выполнена в виде ОЗУ и содержит необходимую программную логику, обеспечивающую требуемую функциональность.

[0221] Средство хранения данных (503) может выполняться в виде HDD, SSD дисков, рейд массива, сетевого хранилища, флэш-памяти, оптических накопителей информации (CD, DVD, MD, Blue-Ray дисков) и т.п.

[0222] Интерфейсы (504) представляют собой стандартные средства для подключения и работы с серверной частью, например, USB, RS232, RJ45, LPT, COM, HDMI, PS/2, Lightning, Fire Wire и т.п. Выбор интерфейсов (504) зависит от конкретного исполнения устройства (500), которое может представлять собой персональный компьютер, мейнфрейм, серверный кластер, тонкий клиент, смартфон, ноутбук и т.п.

[0223] В качестве средств В/В данных (505) могут использоваться клавиатура, джойстик, дисплей (сенсорный дисплей), проектор, тачпад, манипулятор мышь, трекбол, световое перо, динамики, микрофон и т.п.

[0224] Средства сетевого взаимодействия (506) выбираются из устройств, обеспечивающих прием и передачу данных по сети, например, Ethernet-карта, WLAN/Wi-Fi модуль, Bluetooth модуль, BLE модуль, NFC модуль, IrDa, RFID модуль, GSM модем и т.п. С помощью средств (506) обеспечивается организация обмена данными по проводному или беспроводному каналу передачи данных, например, WAN, PAN, ЛВС (LAN), Интранет, Интернет, WLAN, WMAN или GSM.

[0225] Компоненты устройства (500) сопряжены посредством общей шины передачи данных (510).

[0226] В заключение следует отметить, что приведенные в описании сведения являются только примерами, которые не ограничивают объем настоящего изобретения, описанного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего изобретения, согласующегося с сущностью и объемом настоящего изобретения.

[0227] Примерные системы и способы, проиллюстрированные в данном документе, могут описываться с точки зрения компонентов функциональных блоков. Следует принимать во внимание, что такие функциональные блоки могут быть реализованы посредством любого числа аппаратных и/или программных компонентов, сконфигурированных с возможностью выполнять указанные функции. Например, система может использовать различные компоненты интегральной схемы, например, запоминающие элементы, элементы обработки, логические элементы, таблицы поиска и т.п., которые могут выполнять множество функций под управлением одного или более микропроцессоров либо других устройств управления. Аналогично, программные элементы системы могут реализовываться с помощью любого языка программирования или подготовки сценариев, такого как С, С++, С#, Java, JavaScript, VBScript, Macromedia Cold Fusion, COBOL, Microsoft Active Server Pages, язык ассемблера, Perl, PHP, AWK, Python, Visual Basic, хранимых процедур SQL, PL/SQL, любых сценариев оболочки UNIX и расширяемого языка разметки (XML), при этом различные алгоритм реализуются с любой комбинацией структур данных, объектов, процессов, процедур или других программных элементов.

[0228] Кроме того, система контроля поверхности кибератаки может работать на одном вычислительном устройстве, либо на нескольких, связанных между собой по сети. Дополнительно следует отметить, что система может использовать любое число традиционных технологий для передачи данных, передачи служебных сигналов, обработки данных, управления сетью и т.п. Еще дополнительно, система может использоваться для того, чтобы обнаруживать или предотвращать проблемы безопасности с клиентским языком подготовки сценариев, таким как JavaScript, VBScript и т.п.

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

[0230] В качестве устройства обработки данных может выступать процессор, микропроцессор, ЭВМ (электронно-вычислительная машина), ПЛК (программируемый логический контроллер) или интегральная схема, сконфигурированные для исполнения определенных команд (инструкций, программ) по обработке данных. Процессор может быть многоядерным, для параллельной обработки данных.

[0231] В роли устройства памяти могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD) и т.д.

[0232] Следует отметить, что в указанное устройство могут входить и любые другие известные в данном уровне техники устройства, например, такие как датчики, устройства ввода/вывода данных, устройства отображения (дисплеи) и т.п. Устройство ввода/вывода данных может представлять собой, но не ограничиваясь, например, манипулятор мышь, клавиатуру, тачпад, стилус, джойстик, трекпад и т.п.

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

Похожие патенты RU2778635C1

название год авторы номер документа
Система и способ активного обнаружения вредоносных сетевых ресурсов 2021
  • Волков Дмитрий Александрович
  • Прудковский Николай Сергеевич
RU2769075C1
СПОСОБ И СИСТЕМА ВЫЯВЛЕНИЯ ИНФРАСТРУКТУРЫ ВРЕДОНОСНОЙ ПРОГРАММЫ ИЛИ КИБЕРЗЛОУМЫШЛЕННИКА 2020
  • Волков Дмитрий Александрович
  • Милешин Филипп Алексеевич
RU2722693C1
Способ классификации объектов для предотвращения распространения вредоносной активности 2023
  • Паринов Денис Игоревич
  • Власова Виктория Владимировна
  • Романенко Алексей Михайлович
  • Антонов Алексей Евгеньевич
RU2808385C1
СПОСОБ И СИСТЕМА АВТОРИЗАЦИИ ВЕБ-САЙТА В ВЕБ-БРАУЗЕРЕ 2018
  • Кортунов Антон Сергеевич
  • Заитов Эльдар Тимурович
RU2718480C2
СИСТЕМА И СПОСОБ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ ОНЛАЙН-ТРАНЗАКЦИЙ 2013
  • Монастырский Алексей Владимирович
  • Голованов Сергей Юрьевич
  • Мартыненко Владислав Валерьевич
  • Русаков Вячеслав Евгеньевич
RU2587423C2
Система и способ обеспечения безопасности IoT-устройств посредством установки компонентов обеспечения безопасности 2022
  • Филатов Константин Михайлович
  • Яблоков Виктор Владимирович
RU2798178C1
СИСТЕМА И СПОСОБ АВТОГЕНЕРАЦИИ РЕШАЮЩИХ ПРАВИЛ ДЛЯ СИСТЕМ ОБНАРУЖЕНИЯ ВТОРЖЕНИЙ С ОБРАТНОЙ СВЯЗЬЮ 2016
  • Кислицин Никита Игоревич
RU2634209C1
Система и способ обеспечения безопасности IoT-устройств посредством шлюза 2022
  • Филатов Константин Михайлович
  • Яблоков Виктор Владимирович
RU2786201C1
Вычислительное устройство и способ выявления скомпрометированных устройств на основе обнаружения DNS-туннелирования 2021
  • Афонин Антон Викторович
RU2777348C1
СИСТЕМА И СПОСОБ ВЫЯВЛЕНИЯ ЦЕЛЕВЫХ АТАК 2014
  • Яблоков Виктор Владимирович
RU2601147C2

Иллюстрации к изобретению RU 2 778 635 C1

Реферат патента 2022 года Система и способ внешнего контроля поверхности кибератаки

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

Формула изобретения RU 2 778 635 C1

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

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

- обнаруживают контрольные точки защищаемой инфраструктуры,

- сканируют контрольные точки защищаемой инфраструктуры и получают информацию о статусах контрольных точек защищаемой инфраструктуры,

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

- формируют по меньшей мере одно предупреждение о возможной кибератаке,

- передают по меньшей мере одно сформированное предупреждение о возможной кибератаке.

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

домен,

IP-адрес,

SSL-сертификат,

адрес электронной почты,

адрес FTP-сервера,

адрес системы управления базами данных,

адрес веб-службы хостинга файлов,

название веб-сервиса и порт, на котором он запущен.

3. Способ по п. 1, отличающийся тем, что к контрольным точкам защищаемой инфраструктуры относится по меньшей мере одно из перечисленного:

домены,

IP-адреса,

SSL-сертификаты,

TLS-сертификаты,

названия и номера версий веб-сервисов,

ссылка на по меньшей мере одну веб-страницу, подлежащую проверке на наличие вредоносного кода,

список ссылок на веб-страницы, содержащие высокорискованный контент.

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

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

6. Способ по п. 1, отличающийся тем, что к статусам контрольных точек защищаемой инфраструктуры относится по меньшей мере одно из перечисленного:

Значения ресурсных записей системы доменных имен (DNS).

Значение записи системы доменных имен, содержащей параметры настройки протокола DMARC.

Название компании-владельца IP-адреса.

Хостинг-провайдер IP-адреса.

Срок действия IP-адреса.

Список портов, открытых на данном IP-адресе.

Список сетевых сервисов, запущенных на данном IP-адресе.

Название компании-владельца домена.

Регистратор домена.

Срок действия домена.

Статус SSL- или TLS-сертификата.

Параметры SSL- или TLS-сертификата, а именно алгоритмы шифрования, которые могут быть использованы сервером, на котором установлен данный сертификат.

Срок действия SSL- или TLS-сертификата.

Статус безопасности веб-страницы, подлежащей проверке на наличие вредоносного кода.

Длина списка ссылок на веб-страницы, содержащие высокорискованный контент.

7. Способ по п. 1, отличающийся тем, что в состав индикаторов компрометации также входит по меньшей мере одно из нижеперечисленного:

изменение данных DNS,

неверное функционирование DNS,

изменение владельца IP-адреса,

изменение владельца доменного имени,

изменение статуса SSL-сертификата,

изменение статуса TLS-сертификата,

принадлежность используемых алгоритмов шифрования SSL к числу слабых алгоритмов шифрования SSL,

принадлежность используемых алгоритмов шифрования TLS к числу слабых алгоритмов шифрования TLS,

отсутствие или неверная настройка протокола DMARC,

открытие нового порта,

запуск нового сервиса,

отсутствие запущенного сервиса в списке известных легитимных сервисов,

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

получение, в ответ на тестовый запрос, от легитимного веб-сервиса, представляющего собой систему управления базами данных или облачное хранилище, любого другого ответа, кроме ответа "Ошибка авторизации",

истечение срока действия доменного имени,

истечение срока действия SSL-сертификата,

истечение срока действия TLS-сертификата,

выявление в составе защищаемой инфраструктуры по меньшей мере одной веб-страницы с нелегальным контентом,

выявление на по меньшей мере одной веб-странице защищаемой инфраструктуры вредоносного кода, такого как эксплойт, веб-шелл, JS-сниффер,

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

выявление в составе защищаемой инфраструктуры по меньшей мере одного командного сервера злоумышленников.

8. Способ по п. 7, отличающийся тем, что неверное функционирование DNS означает по меньшей мере одно из перечисленного:

Ни один из DNS не отвечает на запросы.

По меньшей мере один из DNS не ответил вовремя.

По меньшей мере один из DNS не объявил себя авторитетным.

DNSSEC не поддерживается для данного домена.

Список DNS, предоставленный корневым сервером, не соответствует списку, опубликованному DNS.

Для данного домена есть только один DNS.

Найден по меньшей мере один DNS, который способен отвечать на любой поиск DNS с любого IP, то есть открытый рекурсивный DNS.

По меньшей мере один DNS предоставил информацию обо всей DNS-зоне.

По меньшей мере один DNS-сервер имеет частный IP-адрес.

Не найдена опубликованная запись DNS для данного домена или имени хоста.

Более одного DNS находятся в одной подсети класса С.

Срок действия DNS SOA, то есть начальной записи зоны, не соответствует рекомендуемому RFC.

Значение кэша DNS SOA не соответствует рекомендуемому RFC.

Значение обновления DNS SOA не соответствует рекомендуемому RFC.

Значение повторной попытки DNS SOA не соответствует рекомендуемому RFC.

Серийные номера SOA не совпадают.

Неверный формат серийного номера DNS SOA.

9. Способ по п. 1, отличающийся тем, что дополнительно получают информацию об утечках конфиденциальных данных и сохраняют ее.

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

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

учетные данные пользователей защищаемой инфраструктуры,

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

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

платежные данные пользователей защищаемой инфраструктуры,

конфиденциальная информация, хранящаяся на устройствах защищаемой инфраструктуры.

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

электронной почты (e-mail),

SMS,

MMS,

push-уведомления,

сообщения в программе обмена мгновенными сообщениями,

события API.

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

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

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

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

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

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

модуль хранения информации,

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

Документы, цитированные в отчете о поиске Патент 2022 года RU2778635C1

СИСТЕМА И СПОСОБ ВЫЯВЛЕНИЯ ЦЕЛЕВЫХ АТАК 2014
  • Яблоков Виктор Владимирович
RU2601147C2
ПОЛЬЗОВАТЕЛЬСКИЙ ИНТЕРФЕЙС ДЛЯ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ И УДАЛЕННОГО УПРАВЛЕНИЯ СЕТЕВЫМИ КОНЕЧНЫМИ ТОЧКАМИ 2015
  • Чебере Богдан-Константин
  • Аким Йоан-Александру
  • Падина Мирела-Луйза
  • Мирон Моника-Мария
  • Стан Козмин-Клаудиу
  • Албистяну Каталина
  • Берте Дан-Раду
  • Думитраке Богдан-Теодор
  • Мирческу Даньел-Александру
  • Новак Александру
RU2697935C2
СПОСОБ И СЕРВЕР ДЛЯ ПОИСКА СВЯЗАННЫХ СЕТЕВЫХ РЕСУРСОВ 2018
  • Волков Дмитрий Александрович
  • Милешин Филипп Алексеевич
RU2681699C1
Система и способ противодействия атаке на вычислительные устройства пользователей 2018
  • Мартыненко Владислав Валерьевич
  • Романенко Алексей Михайлович
RU2697926C1
Станок для придания концам круглых радиаторных трубок шестигранного сечения 1924
  • Гаркин В.А.
SU2019A1
Способ защиты переносных электрических установок от опасностей, связанных с заземлением одной из фаз 1924
  • Подольский Л.П.
SU2014A1

RU 2 778 635 C1

Авторы

Бобак Тим Джон Оскар

Волков Дмитрий Александрович

Даты

2022-08-22Публикация

2021-06-01Подача