Некоторые банки на удивление безответственно относятся к вопросам информационной безопасности. Например, в списке рассылки Seclists вчера опубликована информация о британском банке Santander, это пример полной безалаберности в вопросе защиты пользовательских данных.
На сайте для онлайн-банкинга https://retail.santander.co.uk полно уязвимостей, таких как возможность XSS в форме авторизации. В письме Seclists приводят и другие примеры. Самый вопиющий из них — включение приватной информации о пользователях непосредственно в cookies. В зависимости от того, какие разделы сайта посетил клиент, в cookies включается следующая информация:
- Полное имя
- PAN (номер кредитной карты)
- Номер банковского счёта и сортировочный код
- Алиас (порядковый номер)
- Уникальный идентификатор пользователя (UserID)
Особенное беспокойство вызывает раскрытие полного номера кредитной карты, который по стандарту безопасности PCI DSS 2.0 должен конвертироваться в нечитаемую форму, независимо от места хранения. Здесь же стандарты явно не соблюдаются. Например, если зайти на сайте в раздел «Кредитные карты» и выбрать карту, то устанавливается следующий файл cookies c видимым номером карты:
rinfo=/EBAN_Cards_ENS/BtoChannelDriver.ssobto?dse_operationName=viewRecentTransactions&cardSelected=5***************
Другая приватная информация хранится в NewUniversalCookie
в формате base64, после декодирования видны пользовательские данные (заменены на звёздочки):
<?xml version=\"1.0\"
encoding=\"ISO-8859-1\"?><cookie><definitionName>NewUserPasswordCookie</definitionName><name>*****</name><alias>*****</alias><userID>*****</userID></cookie>
Правила информационной безопасности на самом сайте Santander гласят, что «следящие куки не содержат имени и адреса пользователя». Получается, что банк нарушает собственные правила.
Нужно заметить также, что cookies не отмечаются меткой HTTPOnly, что повышает риск утечки информации, в том числе через XSS.
Вдобавок, хотя cookies перестают действовать по окончании рабочей сессии, они не стираются и не перезаписываются. Таким образом, информация доступна, пока пользователь не закроет браузер, что, опять же, повышает риск утечки информации.