Каковы основные изменения в протоколе 3d secure 2.0?
Прошло более 17 лет с момента разработки 3D Secure 1. Хотя платежная индустрия в большинстве стран довольно хорошо приняла этот метод аутентификации, признавалась необходимость создания нового протокола с учетом текущих и будущих требований рынка, включая добавление поддержки аутентификации на основе мобильных устройств и интеграции цифровых кошельков. Кроме того, отмечалось, что использование 3D Secure 1 имеет некоторые недостатки:
Учтя основные болевые точки 3D Secure, EMVCo недавно выпустила новую улучшенную версию протокола. EMV 3-D Secure (3D Secure 2 или 3DS2) направлена на устранение многих недостатков 3D Secure 1 и обеспечивает следующие основные преимущества:
1. Flexible Device & Channel Support (Гибкая поддержка различных устройств и каналов).
Обеспечивает более плавное и последовательное взаимодействие с пользователем по нескольким каналам оплаты, включая оплату в браузере мобильного телефона, платежи в приложениях и платежи через цифровой кошелек.
Что контролирует пользователь?
CReq (base64url json) — challenge request — сообщение, отправляемое браузером пользователя, в случае если ARes вернет сообщение о необходимости провести Challenge Flow.
{
"ThreeDSServerTransID": "8a880dc0-d2d2-4067-bcb1-b08d1690b26e",
"AcsTransID": "d7c1ee99-9478-44a6-b1f2-391e29c6b340",
"MessageType": "CReq",
"MessageVersion": "2.1.0",
"SdkTransID": "b2385523-a66c-4907-ac3c-91848e8c0067",
"SdkCounterStoA": "001"
}
Если платежный процесс использует 3D Secure SDK, это сообщение будет зашифровано (JWE).
В CReq вы можете увидеть следующие поля:
К сожалению, нам пока не удалось провести достаточно подробное исследование 2-й версии протокола 3DS, поэтому сложно сказать, какие уязвимости встречаются чаще. Вы можете стать первым, кто опубликует исследование на данную тему.
Стоит отметить, что 3-d secure авторизация проходит по трём доменам:
- домену банка-эквайера, который обслуживает интернет-магазин;
- домену банка-эмитента, который выпустил платёжную карту покупателя;
- домену платёжной системы.
Отсюда, собственно говоря, и возникло название Three-Domain Secure. Вся передаваемая информация по платежу сохраняется на домене банка-эмитента, а интернет-магазин не имеет к ней никакого доступа. Но интернет-магазин может хранить часть информации по реквизитам банковской карты, если покупатель даёт своё согласие.
3d secure v 2. *
Как мы писали ранее, в 3DS v1.0 есть некоторые проблемы.
Основная проблема в том, что покупатель может использовать множество разных типов устройств. Планшет, мобильный телефон, умные часы, умный чайник и т.д. Но сайт ACS не всегда разработан для взаимодействия со всеми типами устройств.
Для этого в 3DS 2.0 предусмотрели 3DS SDK.
Другая проблема состоит в том, что новый тип защиты требует дополнительного взаимодействия с клиентом. И этот момент влияет на конверсию. Решением проблемы конверсии стала возможность использования механизма управления рисками, который позволяет не заставлять пользователя вводить дополнительные секретные данные, если банк обладает достаточным количеством информации, подтверждающей личность клиента.
Следующий важный момент заключается в том, что технологии аутентификации развиваются. Соответственно, 3DS могла бы использовать не только OTP. Поэтому v2 задумывалась с возможностью расширения поддержки различных механизмов аутентификации.
Интересный факт про v1.0. Люди некоторых стран не доверяли этому протоколу, потому что видели редирект и думали, что это мошенничество!
Этот психологический момент послужил причиной изменения спецификации второй версии протокола для сокрытия момента перенаправления.
3d secure, протокол авторизации для оплаты картой через интернет
3D-Secure (Three-Domain Secure)
защищенный протокол авторизации пользователей для
CNP-операций
(без присутствия карты). Данная технология разработана для безопасности оплаты товаров и услуг в Интернете. Изначально протокол был предложен платежной системой
VISA
, но потом с некоторыми изменениями был принят и другими. У VISA протокол называется
Verified by Visa (VbV)
, у
Masterсard
–
Masterсard SecureCode (MCC)
, а у
JCB International
– J/Secure.
Данный протокол добавляет дополнительный шаг авторизации пользователя при оплате покупки в интернет-магазине. На первом шаге используется: номер карты, срок ее действия, имя держателя карты и код проверки ее подлинности (например, CVC2). На втором шаге, используя протокол 3D-Secure, сайт магазина показывает страницу банка-эмитента карты, на которой предлагается ввести дополнительный защитный код. Его клиент банка может получить: посредством СМС-сообщения на свой мобильный телефон, с помощью карточки разовых кодов или специального устройства, а также код может быть постоянным, заранее установленным самим клиентом. Собственно название метода Three-Domain Secure возникло из-за того, что в онлайн-транзакции в данном случае участвуют три домена – или торговой точки (мерчанта) или эквайрера, где вводятся данные платёжной карты, платёжной системы, которая прозводит переадресацию платежа страницу подтверждения паролем либо разовым кодом и домен эмитента карты или специализированного сервиса, где формируется страница подтверждения и проверяется правильность введённых защитных кодов.
Вся передаваемая подтверждающая информация от покупателя сохраняется на платежном сервере банка-эмитента, и интернет-магазин не имеет к ней никакого доступа (магазин может только сохранить часть информации по реквизитам платёжной карты, но в объёме не более чем это предписано в PCI DSS). Это защищает данные от хищения
Не все онлайновые магазины и банки поддерживают 3D-Secure. Эта технология не является обязательной и защищает в первую очередь торговую точку и банк от мошеннических операций. При возможности использования 3D-Secure, но не задействованном сервисе (например, карта клиента поддерживает данную технологию, а онлайн-магазин нет; или же наоборот платёжный сервис готов предоставить авторизацию по 3DS, а карта клиента не подключена к этому сервису), ответственность за несанкционированную транзакцию возлагается на сторону, по чьей вине не была использована технология 3DS. Узнать онлайн-магазины, поддерживающие технологию 3D-Secure, можно по размещенным на сайте или платёжной странице логотипам: Masterсard SecureCode и/или Verified by Visa .
Материалы по теме:
3D-Secure: кто в защите?
Pareq
Браузер клиента, совершающего оплату, может произвести достаточно много редиректов по различным компонентам, участвующим в совершении платежа. Так, в России есть некоторое количество запросов, обрабатывающихся на стороне Национальной Системы Платежных Карт. Но сегодня нас интересует только традиционный этап, описанный в спецификации протокола. А именно этап передачи PaReq.
А поподробнее?
CRReq/CRRes для нас не очень важны. А вот VeReq/VeRes рассмотреть нужно.
Версии протокола 3d secure
v1.0 - 2001 г -…
v2.0 - 2022 г - Устарело
v2.1 - 2022 г
v2.2 - 2022 г
В настоящее время большинство платежных сервисов используют версию 1.0.2 при проведении онлайн CNP-платежей, запрашивающих OTP-код.Версия 1.0.2 была создана в 2001 году и в ней есть некоторые проблемы.
На данный момент актуальной версией является v2.2, и EMV планирует, что к концу 2020-го года она будет использоваться везде.
Где это можно найти?
В ходе нашего исследования мы обнаружили несколько распространенных URL-адресов:
/acs/pareq/___uid___
/acspage/cap?RID=14&VAA=B
/way4acs/pa?id=____id____
/PaReqVISA.jsp
/PaReqMC.jsp
/mdpayacs/pareq
/acs/auth/start.do
И распространенные имена поддоменов:
acs
3ds
3ds
secure
cap
payments
ecm
3dsauth
testacs
card
Впрочем, иногда вы можете найти и другие интересные пути.Если вы хотите найти что-то новое, используйте proxy interceptor и записывайте процесс совершения платежей для интересующей вас платежной системы.
Как защитить себя от мошенников
Есть несколько способов защитить себя от злоумышленников при отсутствии технологии защиты 3ds во время совершения платежей:
- подключить данную технологию, обратившись в банк. В зависимости от кредитной организации, способ и сроки подключения могут отличаться;
- использовать карты разных банков. Например, одна – зарплатная. Она используется только для получения денег с места работы. Вторая – дебетовая. Она открывается для совершения различных финансовых операций. На ней не должно быть средств или их количество незначительное;
- использовать виртуальные одноразовые карты;
- работать только с надежными контрагентами.
Никакие IT-технологии не смогут защитить, если клиент сам не позаботится о собственной безопасности, поэтому надо осуществлять платежи через проверенные сервисы.
Как мошенники могут обойти 3d secure
Примечательно, что торговые площадки, которые не поддерживают этот протокол, полностью снимают с себя ответственность за действия злоумышленников, поэтому обезопасить платеж в этом случае обязан банк, выпустивший карту.
Но если владелец карты введет СМС-пароль для подтверждения, все обязательства ложатся на его плечи, и доказать, что покупку совершили мошенники, будет практически невозможно.
Как отключить
Начиная с 2022 года, практически каждый новый носитель оснащен протоколом 3D secure. Его использование абсолютно бесплатно, но и отключить функцию по требованию клиента невозможно.
Финансовые организации не заинтересованы в полном отказе от 3D secure.
- Во-первых, это делается для безопасности денег клиента.
- Во-вторых, человек не сможет совершать покупки в онлайн-магазинах, поддерживающих эту опцию, а это потери для банка.
Впрочем, всегда можно договориться. Например, если вы переезжаете в другую страну, но продолжаете пользоваться карточкой, банк может предложить привязать ее к заграничному номеру телефона.
Как подключить
Технология 3D secure довольно молодая — она стала активно внедряться в продукты банков с 2022 года, и сегодня является практически обязательной, поэтому предустановлена на большинстве современных карт.
Эта услуга абсолютно бесплатна. Но если вдруг протокол 3D secure не подключен на пластиковом носителе, активировать его можно самостоятельно при условии поддержания этой функции.
Следует обратиться с паспортом и картой к сотруднику, который поможет составить заявление и подключить функционал.
Протокол можно подключить при помощи вкладки «Прочие операции», предварительно привязав к номеру своего телефона.
- При помощи интернет-банкинга.
Для этого нужно авторизоваться, в личном кабинете активировать протокол.
- По телефону или через мобильное приложение.
Нужно позвонить или написать в чат своей кредитной организации и попросить включить 3D secure.
Как работает 3d secure v2?
Начало потока платежей аналогично предыдущей версии. Клиент должен указать данные своей карты.
Первый и самый важный момент — это Risk Engine. В версии 1.0.2 клиенты всегда должны вводить второй фактор, например OTP. Однако в версии 2. * клиент может никогда не увидеть этот дополнительный защищенный запрос.
Как это работает?
Главное, что необходимо понять, — это то, что при использовании своей карты (виртуальной или реальной) для онлайн-оплаты, вы сталкиваетесь именно с протоколом 3DS. Поэтому сейчас мы проиллюстрируем все этапы совершения онлайн-платежа.
1 — Покупатель уже добавил все необходимые ему товары в корзину и нажал кнопку “Оплатить”. В этот момент он попадает на страницу MPI-сервиса, где вводит данные своей карты.
После нажатия кнопки оплаты продавец (MPI) инициализирует старт платежного потока и, согласно протоколу, отправляет CRReq-запрос (Card Range Request). Данный запрос необходим, чтобы найти банк-эмитент вашей карты и получить CRR из домена взаимодействия. Этот запрос нас мало интересует.
После этого MPI отправляет VeReq (Verification Request). Этот запрос отправляется банку-эмитенту для проверки того, что 3DS для данной карты включен и карту можно использовать для оплаты.
VeRes (Verification Response) содержит дополнительную информацию для следующего этапа платежа.
Клиенты не могут видеть эти два типа сообщений.
2 — MPI создает PaReq (Payment Request) — запрос на оплату. Этот запрос отправляется через редирект в браузере клиента.
Итогом отправки PaReq становится отображение запроса на ввод OTP-кода.
3 — Клиент вводит OTP-код и возвращается на сайт продавца. Опять же в процессе этого через редирект от банка-эмитента к MPI передается PaRes (Payment Response), который содержит информацию о статусе проверки.
Как это устроено?
Это основная схема, необходимая для понимания всего процесса платежа с использованием механизма 3DS.
На этом рисунке мы видим все три домена, используемые в протоколе, а также последовательность сообщений между всеми участниками платежной операции.
Когда платежные системы будут поддерживать 3-d secure 2.0?
Широкое распространение 3D Secure 2 будет зависеть от отдельных эмитентов карт, поддерживающих новый стандарт. Ожидается, что первые банки начнут поддерживать 3D Secure 2 для своих владельцев карт в начале 2022 года, вполне вероятно, что более широкое внедрение будет постепенным и займет несколько месяцев.
Например, платформа Visa 3DS 2.0 теперь доступна и готова обрабатывать запросы аутентификации 3DS 2.0: прежде чем участвовать в программе 2.0, поставщики услуг ACS и 3DS Server должны пройти тестирование как с EMVCo, так и с Visa. Провайдеры могут начать тестирование с Visa только после получения письма-подтверждения, подтверждающего успешное завершение тестирования с EMVCo.
Также предполагается, что 3D Secure 1 и 3D Secure 2 будут сосуществовать по крайней мере до 2020 года.
Для европейского бизнеса вступление в силу в сентябре 2022 года нового регламента, известного как строгая аутентификация клиентов (Strong Customer Authentication, SCA), который будет применяться к онлайн-платежам в Европейском экономическом пространстве (EEA), где банк держателя карты и провайдер платежных услуг находятся в EEA, делает 3D Secure 2 еще более важным.
Хотя 3D Secure 2 будет основным методом соблюдения требований SCA к платежам по картам, ожидается, что Frictionless flow (беспрепятственный поток) не будет рассматриваться как форма строгой аутентификации клиентов. Это будет означать, что после введения в действие SCA в Европе Frictionless flow может использоваться только для платежей, которые подпадают под исключение (в то время как все платежи, требующие SCA, должны будут аутентифицироваться с использованием потока Challenge).
Необходимость практического использования 3-d secure
Несмотря на очевидное преимущество 3-D Secure, не все интернет-торговцы и банки поддерживают данную технологию, так как она не является обязательной. Результаты исследований, проводимых в США, показывают, что ввиду применения 3-D Secure аутентификации, количество «брошенных корзин» в онлайн-магазинах существенно возрастает.
По нашему мнению, в использовании 3-D Secure видится реальная практическая необходимость, поскольку пароль из SMS-оповещения является своеобразной гарантией надлежащего владения банковской картой. Кроме этого, поддержка стандарта 3-D Secure продавцом (онлайн-магазином) нивелирует его ответственность в случае попытки проведения несанкционированного платежа. Таким образом бизнес перекладывает бремя ответственности на банк-эмитент, который выпустил ту или иную платёжную карту.
Тем не менее механизм 3-D Secure постепенно устаревает. Недобросовестные покупатели (мошенники) приспособились перехватывать SMS-оповещения банков, тем самым получая доступ к чужим кодам аутентификации. В свою очередь, это наталкивает на мысль о том, что существующие протоколы безопасности требуют модернизации.
Особенности работы v2
Если вы посмотрите на схему потока платежей, вы увидите, что она похожа на предыдущую, но во 2-й версии больше этапов. Это происходит за счет добавления дополнительных аутентификационных запросов и механизма Risck Engine, который может совершать как один дополнительный запрос (при платеже через браузер), так и множество (используется 3DS SDK).
Условно, 2-ю версию можно разделить на два блока. Красный, где пользователь непосредственно влияет на передаваемую информацию, и желтый, где система сама собирает и передает информацию о пользователе.
Преимущества и недостатки
Совершенных технологий не существует, и 3D secure – не исключение. При всех ее плюсах есть и минусы, на которые тоже нужно обратить внимание.
Положительные стороны | Отрицательные стороны |
Гарантия повышенного контроля и защиты: если носитель утерян, оплату без подтверждения невозможно осуществить | Есть уязвимые места: мошенники могут получить доступ к паролям с помощью вредоносных программ |
Каждый раз генерируется новый пароль, который не нужно запоминать | Проверочный код действителен не более 5 минут, если не успеть его ввести в поле для проверки, придется запрашивать новый |
Протокол проводит аутентификацию самостоятельно без участия владельца карты | Уведомления приходят, если телефонный аппарат находится в зоне доступа сети |
Система предоставляет услуги бесплатно | Без доступа к интернету невозможно ввести проверочный код и совершить покупку |
Проблемы (найденные и возможные)
На что смотреть в v1
На что смотреть в v2
Тем, кто подумывает обратить свой взгляд на платежные системы, я бы посоветовал остановиться еще и на сервисах, предоставляющих 3DS как SaaS. Там может оказаться еще достаточно много вещей, которые помогут вам понять, как устроен мир онлайн-платежей.
Раскрутим xxe
Рассмотрим следующий пример:
Сравнение сервисов для вывода денег
Параметр | MasterCard Mobile | QIWI | Альфа-Банк | RuRu | PayOnline | Сбербанк | |
1 | Работа с системой VISA | — | |||||
2 | Работа с системой MasterCard | ||||||
3 | Без регистрации | — | — | ||||
4 | Без привязки карты | — | |||||
5 | Опциональная защита для отправителя платежа | — | — | — | — | ||
6 | Возможность перевода в пределах одного банка | — | — | ||||
7 | Работа с валютными операциями | — | — | — | |||
8 | Работа с иностранными банками | — | — | — |