Анализ уязвимостей и тестирование на проникновение в финансовых организациях

Центральный банк предъявляет требования к проведению обязательного тестирования на проникновение для финансовых организаций, что влечет за собой значительные затраты. Статья будет полезна руководителям финансовых организаций в части выполнения требований регулятора, а также способов экономии и повышения эффективности работ. Вместе с Геннадием Перминовым, ведущим консультантом по ИБ RTM Group, мы поговорим о требованиях к исполнителю пентестов, видах пентеcтов, об инструментарии, а также о том, как можно влиять на конечную стоимость пентеста.

Анализ уязвимостей и тестирование на проникновение в финансовых организациях

Требования по проведению пентеста

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

  • Положением Банка России от 17.04.2019 N 683-П – устанавливает ежегодное тестирование для кредитных организаций (п. 3.2)
  • Положением Банка России от 04.06.2020 N 719-П – устанавливает ежегодное тестирование для операторов по переводу денежных средств, банковских платежных агентов (субагентов), операторов услуг информационного обмена, операторов услуг платежной инфраструктуры (п. 1.1)
  • Положением Банка России от 20.04.2021 N 757-П – устанавливает ежегодное тестирование для некредитных финансовых организаций, реализующих усиленный и стандартный уровни защиты информации (п. 1.4.5)
  • Положение Банка России от 8 апреля 2020 г. № 716-П – устанавливает ежегодное тестирование для кредитных организаций (п. 8.8)
  • ГОСТ Р 57580 Безопасность финансовых (банковских) операций – устанавливает для стандартного и усиленного уровней защиты информации однократное тестирование на этапе «Ввод в эксплуатацию АС» и ежегодное тестирование на этапе «Эксплуатация (сопровождение) АС».

Законодательное регулирование – лицензии на пентест

Банки и НФО могут проводить тестирование на проникновение самостоятельно, если имеют необходимые инструменты и компетенцию. В Положениях Банка России нет требований об обязательном привлечении внешнего исполнителя для проведения пентеста.

Однако, если привлекается внешняя компания, она обязательно должна обладать лицензией ФСТЭК России на виды работ, предусмотренные подпунктом «б» пункта 4 постановления Правительства РФ от 3 февраля 2012 года № 79.

Тестирование инфраструктуры и приложений

Тестированию на проникновение могут подвергаться как инфраструктура заказчика, так и программное обеспечение.

ОУД4 – не пентест

Если говорить о тестировании на проникновение программного обеспечения, то в финансовой сфере оно обычно проводится в рамках оценки соответствия ОУД4.

В положениях 719-П, 683-П (для банков) и 757-П (для НФО) содержатся требования к обеспечению использования прикладного программного обеспечения автоматизированных систем и приложений, прошедших (одно из двух):

  1. Сертификацию ПО в системе сертификации ФСТЭК России по требованиям по безопасности информации, устанавливающим уровни доверия к средствам технической защиты информации и средствам обеспечения безопасности информационных технологий, утвержденным Приказом ФСТЭК России от 2 июня 2020 года № 76;
  2. Оценку соответствия по требованиям к оценочному уровню доверия не ниже, чем ОУД4, в соответствии с ГОСТ Р ИСО/МЭК 15408-3-2013 “Информационная технология. Методы и средства обеспечения безопасности. Критерии оценки безопасности информационных технологий. Часть 3. Компоненты доверия к безопасности”.

На практике финансовые организации осуществляют оценку ПО на соответствие требованиям ОУД4, т. к. требования, используемые в системе сертификации ФСТЭК, являются более высокими в сравнении с требованиями ОУД4, а сертификация в целом получается дороже.

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

Разница между анализом уязвимостей по ОУД4 и оценкой соответствия по ОУД4 заключается в том, что анализ уязвимостей – это комплекс мероприятий по оценке лишь части компонентов доверия в пределах определённого уровня, в то время как в оценку соответствия по ОУД4 входит анализ всего перечня классов доверия и выполнения всех действий оценщика. Т.е. анализ уязвимостей является лишь малой частью того, что составляет целый ОУД.

Анализ уязвимостей – пентест – Red Team

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

Основных из них три:

  1. Поиск уязвимостей без эксплуатации (Анализ уязвимостей)
  2. Анализ уязвимостей с попыткой эксплуатации (Pentest)
  3. Комплексный анализ безопасности организации путем моделирования действий злоумышленника с использованием программных, технических, физических и социотехнических методов с эксплуатацией уязвимостей независимо от природы возникновения с реализацией векторов атак до получения максимального уровня доступа или исчерпания возможных векторов атак (RedTeam)

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

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

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

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

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

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

Кроме того, хотя при проведении пентеста эксперт и моделирует действия потенциального внешнего злоумышленника, он всё равно ограничен заранее обговоренными сценариями и подходами, согласованными с Заказчиком. У RedTeam же, напротив, никаких договоренностей и ограничений нет.

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

Red Team является реализацией концепции «Red Team vs Blue Team», которая подразумевает существование двух противоборствующих команд: Blue Team, в задачи которой входит создание и поддержание актуальной и эффективной системы защиты информации, и Red Team, в задачи которой входит преодоление системы защиты, созданной Blue Team. При этом методы, используемые Red Team, не ограничиваются только лишь информационной системой. Концепция «Red Team vs Blue Team» призвана создать эффективную систему защиты информации в организации, способную противостоять актуальным угрозам.

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

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

Социальная инженерия – обилие вариантов

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

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

  • С использованием e-mail – самый простой и быстрый способ. Позволяет охватить большое количество людей. Обычно пользователю предлагается скачать и запустить зараженный файл, либо перейти по ссылке. Данный способ обладает высокой эффективностью. Согласно статистике Positive Technologies за 3 квартал 2022 года, 50% компьютерных атак по всему миру реализованы с использованием фишинга посредством e-mail. Дополнительно повысить эффективность атаки позволяет более детальная проработка теста сообщения – желательно, чтобы он содержал информацию, касающуюся лично сотрудника и его интересов (пересмотр графика отпусков, порядка стимулирующих выплат в организации и т.п.)

Экспертам компании RTM Group удавалось таким образом мотивировать пользователей скачать и установить на свои компьютеры бэкдоры, которые в дальнейшем позволяли развить атаку до захвата домена.

  • По телефону – более сложный способ, который требует от эксперта более тщательной подготовки, более внимательного сбора предварительной информации и даже определенного таланта. Здесь помимо создания качественной легенды (сотрудник филиала, недавно принятый сотрудник и т.д.) от эксперта требуется еще и некоторый актерский талант. По опыту экспертов RTM Group, эффективность телефонных звонков близка к 100%. Нашим экспертам удавалось получить личную контактную информацию руководителей организации, график их отсутствия и другие данные, представившись сотрудниками удаленных филиалов.
  • При личной встрече – пожалуй, самый сложный способ взаимодействия. В дополнение к перечисленному ранее, требуется проработанная легенда, подготовка внешнего вида, определенные морально-волевые качества эксперта. Здесь тоже возможны различные варианты создания легенды: сотрудник управляющей компании, представитель провайдера, сотрудник IT-отдела, проверяющий, недовольный клиент и т.п. Такой способ также очень эффективен и позволяет получить физический доступ на территорию организации либо к ее информационной системе. Поэтому он является и наиболее опасным с точки зрения последствий для организации. Обычно проводится только в рамках Red Team.

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

  • При разбрасывании носителей. Этот способ является развитием социотехнического тестирования при личной встрече. Эксперты RTM Group оценивают эффективность этого метода примерно в 15%. Дело в том, что некоторые носители могут быть так и не обнаружены, они могут быть подключены к рабочим местам без доступа к интернету или за пределами тестируемой организации.

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

Инструментарий

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

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

В некоторой степени отраслевыми стандартами являются:

  • Для предварительного исследования инфраструктуры могут использоваться Nmap, Masscan, Sn1per, Shodan, Censys
  • Для сбора информации из открытых источников: Maltego, SpiderFoot, theHarvester, metagoofil + exiftool
  • Сканеры уязвимостей: программное обеспечение, которое сканирует сеть, сервера и приложения на наличие известных уязвимостей. Некоторые из популярных сканеров уязвимостей включают в себя Nessus, OpenVAS, Qualys, Nmap + плагины
  • Инструменты перехвата трафика: программное обеспечение, которое перехватывает трафик между узлами в сети, что может помочь исследовать уязвимости, связанные с безопасностью передачи данных. Примеры таких инструментов включают Wireshark, tcpdump и Fiddler
  • Инструменты взлома паролей: программное обеспечение, которое используется для атак на пароли и аутентификацию. Сюда же входят словари паролей и инструменты для обнаружения и использования уязвимостей, связанных с аутентификацией. Примеры таких инструментов – Hashcat, John the Ripper, Hydra, Medusa
  • Инструменты эксплойтов: программное обеспечение, которое используется для эксплуатации уязвимостей в системе с целью получения удаленного доступа или других привилегий. Например, к ним относятся Metasploit, Canvas и Core Impact
  • Инструменты социальной инженерии: программное обеспечение, которое применяется для анализа и воздействия на человеческий фактор с целью обмана пользователей системы. Среди таких инструментов можно отметить SET (Social-Engineer Toolkit) и BeEF (Browser Exploitation Framework)
  • Инструменты для пентеста веб-приложений: Burp Suite, OWASP ZAP, Acunetix, Nikto.

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

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

Оценка критичности уязвимостей

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

Оценка критичности уязвимостей может проводиться в соответствии с различными методиками. Например, для этого могут использоваться фреймворки VPR (Vulnerability priority rating). Тот, что предложила компания Tenable, или CVSS (Common Vulnerability Scoring System), разработанный Национальным советом по инфраструктуре (National Infrastructure Advisory Council, NIAC) США. Последний является наиболее распространенным и популярным, поэтому далее речь пойдет о нем. В настоящее время параллельно используются версии стандарта CVSS v2.0 и v3.1.

Критичность уязвимостей оценивается на основе ряда параметров: насколько она проста в эксплуатации, реально ли осуществить ее удаленно, есть ли готовый эксплойт и патч, возможна ли эскалация и т.д. Разница стандартов состоит в том, что при расчете CVSS v3.1 более детально рассматривается контекст существования уязвимости в конкретной информационной системе и ее влияние на нее. Такой расчет является более трудоемким и дорогостоящим, поэтому, где это допустимо, используется CVSS v2.0.

Критический и высокий уровень опасности, как правило, означают, что злоумышленник с низкой квалификацией, используя непривилегированный доступ локально или через интернет, может влиять на безопасность информации и для этого существуют готовый эксплоит, либо доказательство наличия уязвимости. Анализ пентестов, проведенных в 2022 году экспертами компании RTM Group, показывает, что 83% протестированных компаний имели в своих информационных системах уязвимости среднего уровня, 69% – высокого и 46% – критического.

Например, опубликованная в середине мая 2023 года уязвимость CVE-2023-1698 оценивается как критическая (CVSSv.3 9.8) и содержится во многих продуктах WAGO (контроллерах и сенсорных панелях для автоматизации и визуализации задач в области коммутации). Она позволяет удаленному злоумышленнику, не прошедшему проверку подлинности, создавать новых пользователей и изменять конфигурацию устройства, что может привести к непреднамеренному поведению, отказу в обслуживании и полной компрометации системы.

Рекомендации

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

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

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

Способы экономии

Стоимость проведения пентеста (тестирования на проникновение) может зависеть от нескольких факторов, включая:

  • Объекты тестирования – стоимость проведения пентеста может быть связана с количеством систем или приложений, которые нужно тестировать, а также с их сложностью и доступностью. Например, внешний пентест организации, в которой эксплуатируются 10 внешних хостов, возможно провести за три рабочих дня, в то время как пентест 100 хостов потребует значительно больше времени
  • Глубину тестирования – стоимость может изменяться в зависимости от глубины, которая обсуждалась ранее. Например, анализ уязвимостей автоматизированными средствами без эксплуатации потребует гораздо меньше времени и людских ресурсов, чем попытка эксплуатации каждой из обнаруженных уязвимостей и развитие атак
  • Формат проведения пентеста – black box, gray box, white box. От количества исходной информации, необходимости ее сбора из открытых источников также зависит итоговая стоимость пентеста. Хотя проведение OSINT может давать дополнительные сведения о том, какая чувствительная информация об организации может быть собрана из открытых источников и расширяет возможности для реализации сценариев социальной инженерии, этот процесс потребует дополнительных расходов
  • Режим работы со службой безопасности – будет ли она блокировать атаки экспертов, будут ли включены средства защиты информации. Например, внешний пентест с включенной IDS (системой обнаружения вторжений) потребует дополнительного времени и ресурсов для обхода IDS в дополнение к непосредственному пентесту хостов
  • Местоположение – стоимость может меняться в зависимости от местоположения заказчика и исполнителя. Например, пентест внутренней инфраструктуры заказчика может проводиться очно, либо удаленно (например, с использованием VPN). В первом случае расходы будут выше
  • Участие заказчика в процессе – часть работ по тестированию на проникновение организация может произвести самостоятельно. Например, тестирование социальной инженерии, сигнатурное автоматизированное сканирование – анализ уязвимостей или любой другой вид работ, для которого организация обладает достаточной квалификацией
  • Срочность – если заказчик требует проведения пентеста в кратчайшие сроки, стоимость может быть выше за счет привлечения дополнительных ресурсов. Например, пентест внутренней инфраструктуры организации может быть проведен одним экспертом за 14 рабочих дней, либо тремя экспертами за 5 рабочих дней, либо тремя старшими экспертами за три рабочих дня
  • Период проведения работ. Например, если заказчик требует осуществлять пентест в нерабочее время – ночью или в выходные дни, в соответствии с трудовым законодательством это нужно будет компенсировать исполнителям, следовательно, конечная стоимость работ вырастет
  • Поддержка – стоимость проведения пентеста может изменяться в зависимости от уровня поддержки, который требуется от исполнителя после завершения тестирования. Сюда может входить дополнительное тестирование по результатам устранения выявленных уязвимостей, консультирование IT-отдела организации по устранению выявленных уязвимостей и др.

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

Сложности при проведении пентестов – примеры от исполнителя

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

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

Выводы

Таким образом, количество вариантов проведения пентестов огромно. Пентест может быть как самостоятельным видом работ, так и входить в состав комплексных оценок безопасности. Он может быть регламентирован нормативными документами регулятора и проводиться инициативно. Может проводиться сотрудниками организации, либо с привлечением сторонних исполнителей. Может проводиться с различной глубиной исследования – без попыток проникновения, с попытками проникновения и Red Team. Может проводиться по различным схемам в отношении предоставления исходных данных – White Box, Gray Box, Black Box. Может быть направлен на исследование информационной инфраструктуры, программного обеспечения, защищенности методам социальной инженерии, физической защиты, защищенности организации в целом.

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

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

Начать дискуссию