Щит и Меч в системах ДБО

EugeneSukhov 8 декабря 2011 в 10:23 4,2k

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


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

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

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

Токен с криптографией на борту
Окончательную точку в воровстве ключей подписи могут поставить токены с криптографией на борту, однако пока они имеют слабое распространение. На то есть объективные причины. Да, действительно, они не позволят украсть ключи подписи злоумышленнику, но они не могут решить основную задачу — остановить кражу денег в системах ДБО. Да, они могут сильно снизить количество краж, но только на время. Уже сейчас набирает обороты схема кражи денег при которой подпись платежного поручения осуществляется прямо на компьютере пользователя в то время пока подключен токен. Это делается либо с помощью удаленного управления компьютером, либо использую технологию USB-over-IP, либо подменяя платежное поручение в момент выполнения подписи.

Дополнительное подтверждение платежа
Основная идея дополнительного подтверждения заключается в использовании независимого от компьютера устройства. Самое широкое распространение получили одноразовые пароли — OTP (One Time Password). Реализация могла быть разной, это могли быть SMS сообщения с кодом подтверждения, OTP токены, таблицы с одноразовыми паролями. Кстати, ужасно бесит не приходящая вовремя SMS-ка. :) Злоумышленникам пришлось искать новые способы атаки на системы ДБО. При таких механизмах защиты чисто технические способы атаки стали комбинироваться с социальной инженерией. Наиболее распространенный способ атаки на схему с одноразовыми паролями это фишинг. На фишинговом сайте у пользователя получают одноразовый пароль, который тут же используют для проведения своего платежа. Основным недостатком схемы защиты с OTP является отсутствие взаимосвязи между паролем и содержимым платежного поручения.

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

Последний писк
В этом году на российском рынке появились новые устройства для защиты ДБО. Это доверенные устройства формирования цифровой подписи. Устройства оснащены экраном для отображения платежной информации и кнопками подтверждения платежа и отказа от проведения платежа. На фото устройство Рутокен PINPad.



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

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