Компания ChronoPay предупредила об уязвимости в протоколе 3D Secure, через который производится оплата с банковских карт на сайтах и в мобильных приложениях. Из-за бага в запросе аутентификации злоумышленник может подменить данные получателя платежа на странице подтверждения транзакции.
Система 3D Secure предполагает дополнительный слой защиты — код из SMS, который приходит на телефон для подтверждения платежа. Плательщик вводит этот код на странице, на которой мошенник потенциально может указать поддельные данные о получателе средств.
Выходит, что слабым звеном в этой системе стала технология, разработанная специально для защиты платежей. Проблема в том, что запрос передаётся в адресной строке браузера открытым текстом в незашифрованном виде и не проверяется платёжной системе. Хакеру нужно лишь подменить данные в адресной строке и ввести плательщика в заблуждение на странице с подтверждением платежа.
Описанная уязвимость будет устранена в протоколе 3D Secure 2.0, внедрение которого уже происходит. В ближайшие месяцы на него перейдёт большая часть сайтов и приложений с онлайн-оплатой товаров и услуг.