Анализ уязвимостей по ОУД 4

Положениями Банка России № 382-П (в редакции Указания Банка России №4793-У), № 683-П и № 684-П предусмотрено обязательное проведение анализа уязвимостей прикладного программного обеспечения автоматизированных систем и приложений кредитных и некредитных финансовых организаций (как для действующих, так и для вновь вводимых в эксплуатацию систем). Анализ уязвимостей проводится по требованиям к оценочному уровню доверия не ниже чем ОУД 4 (Усиленный) в соответствии с требованиями национального стандарта Российской Федерации ГОСТ Р ИСО/МЭК 15408-3-2013 «Национальный стандарт Российской Федерации. Информационная технология. Методы и средства обеспечения безопасности. Критерии оценки безопасности информационных технологий. Часть 3. Компоненты доверия к безопасности». Для проведения данных работ Банком России был разработан методический документ «Профиль Защиты прикладного программного обеспечения автоматизированных систем и приложений кредитных организаций и некредитных финансовых организаций».

Для проведения анализа уязвимостей прикладного ПО финансовые организации должны привлекать компании, имеющие лицензию ФСТЭК России на осуществление деятельности по технической защите конфиденциальной информации (подпункты «б», «д» или «е»).

Целями проведения анализа уязвимостей программного обеспечения по оценочному уровню доверия ОУД 4+ являются:

  • выполнение требований нормативных актов Банка России;

  • оценка качества прикладного ПО на основе проведения анализа уязвимостей по требованиям к оценочному уровню доверия в соответствии с требованиями ГОСТ Р ИСО/МЭК 15408-3-2013;

  • определение недостатков прикладного ПО, определение и проверка потенциальных векторов атаки на исследуемое ПО;

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

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

Определение границ исследования и объекта оценки

Положениями Банка России № 382-П, № 683-П, № 684-П определены разные объекты для проведения анализа уязвимостей:

  • согласно 382-П: прикладное ПО автоматизированных систем и приложений, используемых для осуществления переводов денежных средств;

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

  • согласно 684-П: прикладное ПО автоматизированных систем и приложений некредитных финансовых организаций, реализующих усиленный и стандартный уровни защиты информации, распространяемое клиентам для осуществления финансовых операций, а также ПО, обрабатывающее защищаемую информацию при приёме электронных сообщений к исполнению.

Таким образом для разных типов кредитных и некредитных финансовых организаций объекты оценки будут отличаться. Например, для банка объектом оценки должна стать система дистанционного банковского обслуживания физических лиц в составе веб-приложения интернет-банкинга, мобильных приложений для Android и iOS, серверов приложений и СУБД. Для паевого инвестиционного фонда — клиентская часть (веб и мобильные), бэкенд клиентов и Учётная система ПИФ.

Анализ документации и разработка Задания по безопасности

Для проведения оценки соответствия требованиям регулятора необходимо разработать Задание по безопасности (ЗБ). В нем будут описаны необходимые функции безопасности объекта оценки и шаги проверки для подтверждения корректности выполнения всех требований.

Для разработки ЗБ заказчик предоставляет требуемую информацию в различной форме (документация, интервью). Специалисты «Перспективного мониторинга» проводят анализ предоставленной информации и разрабатывают Задание по безопасности. Таким образом, полученное ЗБ будет «проекцией» Профиля защиты прикладного программного обеспечения, разработанного Банком России, на конкретный объект оценки заказчика, то есть описание и обоснование того, каким образом требования Профиля реализованы в ПО.

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

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

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

В рамках выполнения данного этапа производится:

  • изучение архитектуры и компонентов объекта оценки;

  • изучение технической и эксплуатационной документации и Задания по безопасности на предмет наличия потенциальных уязвимостей и слабостей;

  • поиск в общедоступных источниках (включая БДУ ФСТЭК России) информации о возможных уязвимостях и слабостях компонентов ПО.

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

Анализ исходного кода

В рамках выполнения данного этапа работ производится:

  • статический анализ исходного кода различными анализаторами — как общедоступными, проприетарными и open-source решениями, так и собственными разработками ЗАО «Перспективный мониторинг»;

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

В результате выполнения анализа исходного кода:

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

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

Тестирование на проникновение

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

В рамках выполнения данного этапа работ:

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

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

  • проводится динамический анализ исполняемого приложения и фаззинг серверной части;

  • проводится тестирование на проникновение, включая протоколирование всех проведённых тестов и испытаний.

Результаты проведённого тестирования на проникновение позволяют подтвердить или опровергнуть возможность эксплуатации выявленных уязвимостей.

Подготовка отчёта об исследовании

Результат работ — отчёт об анализе объекта оценки на соответствие требованиям к оценочному уровню доверия по ГОСТ Р ИСО/МЭК 15408-3-2013.

В соответствии с профилем защиты по итогам анализа уязвимостей оформляется отчет, содержащий:

  • перечень исследованных компонентов объекта оценки и среды функционирования;

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

  • результаты анализа;

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

  • рекомендации по устранению выявленных уязвимостей и сведения об их устранении;

  • демонстрацию отсутствия возможности использовать выявленные уязвимости.

Проектный опыт «Перспективного мониторинга»

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

К наиболее значимым проектам можно отнести следующие проекты.

Исследование защищённости торговых систем, периметра, точек удалённого доступа, прикладных систем и ресурсов для ПАО «Московская Биржа». Московская биржа — крупнейший российский биржевой холдинг. Является организатором торгов акциями, облигациями, производными инструментами, валютой, инструментами денежного рынка, драгоценными металлами и зерном.

Анализ протокола и исходного кода (code review) для одной из прикладных информационных систем ПАО «Московская Биржа».

Тестирование веб-сервисов и системы дистанционного клиентского обслуживания Санкт-Петербургской Международной Товарно-сырьевой Биржи. СПбМТСБ — лидер организованного товарного рынка России с более чем двумя тысячами участников торгов.

Анализ защищённости прикладного программного обеспечения для «Эльдорадо».

Выполнение проектов по практикам безопасной разработки программного обеспечения для ОАО «ИнфоТеКС».


Реализованные проекты
Анализ защищённости периметра «Московской биржи»
Московская биржа — крупнейший российский биржевой холдинг. Московская биржа является организатором торгов акциями, облигациями, производными инструментами, валютой, инструментами денежного рынка, драгоценными металлами и зерном.
Анализ исходного кода для Московской биржи
Московская биржа — крупнейший российский биржевой холдинг. Московская биржа является организатором торгов акциями, облигациями, производными инструментами, валютой, инструментами денежного рынка, драгоценными металлами и зерном.
Внедрение практик SSDL в ИнфоТеКС
ИнфоТеКС — разработчик и производитель средств защиты информации. Задачей «Перспективного мониторинга» стала помощь во внедрении практик безопасной разработки программного обеспечения.
Аудит программного обеспечения для «Эльдорадо»
Заказчик — ООО «Эльдорадо», один из крупнейших розничных продавцов электроники и бытовой техники в России.Задачей исследователей было проверить текущий уровень защищённости ПО.
Аудит по 382-П АО «Банк «Вологжанин»
Банк «Вологжанин» — универсальное финансово-кредитное учреждение, обслуживающее индивидуальных и корпоративных клиентов различных форм собственности и направлений деятельности.