Защита систем интернет-банкинга

27 марта 2009 17:00

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

По опыту автора, в триаде классов угроз безопасности — конфиденциальности, целостности, доступности — для систем интернет-банкинга наиболее важными являются:

 

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

     

    Разберем эти проблемы отдельно.

    Доступность интернет-банкинга

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

    Примером уязвимости, позволяющей реализовать атаку первого типа, является уязвимость в ОС Windows, опубликованная в июне 2008 г. под кодом MS08-036. Данная уязвимость позволяла злоумышленнику атаковать операционную систему, используя протокол Pragmatic General Multicast (PGM). Специально сформированый пакет PGM приводил к зависанию ОС Windows. Таким образом, если сервер интернет-банкинга обрабатывал протокол PGM, он мог бы быть выведен из строя одним сетевым пакетом.

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

    Технологии минимизации операционных систем на сегодняшни день проработаны достаточно хорошо. UNIX-подобные операционные системы черезвычайно гибки, хорошо управляемы и могут быть минимизированы собственными средствами. Поставщики таких ОС часто предлагают руководства, посвященные минимизации. Кроме того, сравнительно недавно сложилась тенденция поставки дистрибутивов UNIX-подобных ОС в режиме «безопасно по умолчанию» (secure by default), когда даже без дополнительной настройки установленная операционная система защищена в достаточной степени. Сюда относятся ОС Solaris компании Sun1 и некоторые дистрибутивы Linux. Особенно вэтом отношении выделяется ОС OpenBSD2, создатели которой приложили максимум усилий к обеспечению безопасности, так что в этой операционной системе за последние 10 лет было обнаружено всего две удаленных уязвимости в конфигурации по умолчанию.

    Компания Microsoft тоже вскочила в этот уходящий поезд и наконец в версии операционной системы Windows Server 2008 представила минимизированый вариант инсталляции Server Core. К сожалению, функциональность веб-сервера не полностью поддерживается в этом режиме, поэтому данная возможность может оказаться неприменимой.

    Вторым классом атак на доступность систем интернет-банкинга являются различные атаки типа flood (наводнение IP-пакетами): сюда относятся и SYN-flood, приводящие к истощению ресурсов сервера, и «просто» наводнение IP-пакетами, переполняющее канал передачи данных в Интернет.

    Атаки типа SYN-flood широко распространены в настоящее время, изучены специалистами по ИБ, и для защиты от них выработаны надлежащие методики. Так, в частности, в ОС Linux встроен механизм SYN-cookie, обеспечивающий защиту сервера, он же реализован в ряде межсетевых экранов, в том числе Cisco ASA5 и Juniper.

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

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

    %images[2]%

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

    Конфиденциальность и целостность

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

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

    Отсюда очевидна разница в подходе к защите информации. Для «обычного» программного обеспечения методика защиты схожа с таковой для обеспечения доступности: минимизация, установка обновлений программного обеспечения, контроль сетевого трафика средствами сетевых IDS/IPS. Для «заказного» ПО интернет-банкинга это неприменимо: как правило, производители не публикуют ошибки в ПО, его обновление связано со значительными трудностями, а векторы атаки могут быть неизвестны (рис. 2).

    %images[3]%

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

    В случае когда взаимодействие клиента с сервером осуществляется посредством веб-браузера, система контроля носит название Web Application Firewall (WAF). Система WAF выполняет предварительный контроль запросов клиента, защищая от атак типа SQL-инъекция, межсайтовый скриптинг (XSS) и др. После контроля запросы передаются собственно на сервер интернет-банкинга, где обрабатываются и возвращаются клиенту (возможно — с дополнительным контролем). Таким образом, WAF исполняет роль прокси-сервера прикладного уровня, установленного на стороне банка.

    В случае когда для интернет-банкинга разработан отдельный программный клиент, необходимо контролировать тот протокол прикладного уровня, который используется для взаимодействия клиента и сервера. Как правило, такой протокол основан на языке разметки XML, а в качестве транспорта используется HTTP. В этой ситуации важно контролировать как целостность и легитимность HTTP-запросов, так и форму и содержание XML-сообщений. Последнее достигается за счет проверки соответствия DTD (или XML-схеме) на контролирующем устройстве. Там же могут проходить и дополнительные проверки.

    Нужно отметить, что требования по применению систем класса WAF предъявляются и стандартом PCI DSS.

    Резюме

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



© 2020 БАНКОВСКИЕ ТЕХНОЛОГИИ
Первое издание на российском рынке, посвященное информационным технологиям для банков.
Москва, Проспект Мира, д.3, корп. 1
+7 (495) 120-81-42
info@int-bank.ru

Свидетельство СМИ ФС77-39103 от 11 марта 2010 года.
По вопросам сайта просим обращаться к администрации сайта: info@int-bank.ru.
При использовании материалов необходимо давать ссылку на www.banktech.ru.