Исследователи из университета Ньюкасла доказали, что минимальный объем существующей информации не помешает злоумышленнику провести автоматизированную атаку подбором данных платежных карт, если в обработке платежей онлайн имеют место недочеты.

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

По свидетельству университетских исследователей, их «распределенная атака подбором» (distributed guessing) работает лишь против платежной экосистемы Visa. В ходе эксперимента им удалось провести брутфорс на 400 сайтах из списка Alexa, в том числе на PayPal и Amazon, и за считаные секунды получить номер карты, ее срок действия, код CVV и другие реквизиты.

Университетские исследователи предупреждают, что подобные атаки масштабируются и практически осуществимы. Visa и 36 затронутых сайтов были извещены о возможности злоупотреблений до выхода научной статьи «Does The Online Card Payment Landscape Unwittingly Facilitate Fraud?» («Правда ли, что современное состояние платежного онлайн-сервиса облегчает задачу мошенникам?»). Операторы восьми популярных сайтов уже приняли меры защиты: замедлили обработку повторных запросов, ввели CAPTCHA и т.п. Представители Visa со своей стороны заявили, что исследователи не учли наличие систем предотвращения фрода, однако Мохаммед Али (Mohammed Aamir Ali), один из соавторов отчета, отметил, что их PoC-атака как раз показывает слабости многослойной защиты Visa, которые сможет использовать продвинутый злоумышленник.

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

По некоторым предположениям, аналогичная распределенная атака была недавно проведена против британского банка Tesco. В результате этой атаки были похищены денежные средства с 20 тыс. клиентских счетов. «У нас слишком мало данных, чтобы подтвердить это заявление», — сказал Али в ответ на запрос Threatpost.

Исследователи проверили на уязвимость не только Visa, но и MasterCard. Оказалось, что у MasterCard есть централизованная сеть, способная обнаружить атаку подбором после 10 попыток, даже если атака распределена по разным сайтам. Visa такой защитой не обладает. «Автор атаки может начать с лэптопа, подключенного к Интернету, — рассказывает Али. — Вначале ему потребуются первые шесть цифр — идентификационный номер банка, который обычно публикуется в Интернете».

В отчете исследователей отмечено, что их атака использует два слабых места, каждое из которых, взятое в отдельности, не даст нужного эффекта, а вместе они составляют угрозу для всей глобальной системы. К сожалению, платежные системы зачастую не способны обнаружить невалидный запрос на проведение платежа, поданный на разных сайтах. «Это означает, что, распределив попытки подбора по многим сайтам, можно гадать практически бесконечно, даже если отдельные сайты ограничивают число попыток», — сказано в отчете.

Вторым узким местом является отсутствие единообразия формы для ввода данных платежных карт. Некоторые сайты требуют основной учетный номер, срок окончания действия карты, код CVV и адрес, на других сайтах полей для ввода меньше. «Имея валидный номер карты (PAN), можно приступить к угадыванию даты истечения срока ее действия, — пишут далее исследователи. — Для этого подойдут несколько сайтов, которые проверяют лишь два поля: номер карты и срок ее действия. Получив дату окончания срока, атакующий сможет ее использовать вместе с номером карты, чтобы угадать информацию CVV2 на другой группе сайтов, проверяющих три поля (номер карты, срок окончания действия и CVV2)».

Для проведения автоматизированной PoC-атаки были созданы бот и скрипты для Firefox, написанные с помощью фреймворка Java Selenium. При этом на бот были возложены функции ввода и подбора значений для каждого поля. В итоге дату истечения срока действия карты удавалось угадать в среднем за 60 попыток, код CVV — менее чем за 1 тыс. попыток.

«Если бы все коммерсанты использовали три поля и запрашивали дату окончания действия и CVV2, то нам потребовалось бы 60 x 1000 = 60 000 попыток, — признали исследователи. — Разница между 1060 и 60 000 — это разница между быстрой, практически осуществимой атакой и трудоемкой атакой, осуществить которую почти нереально».

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

«И стандартизация, и централизация противоречат принципам гибкости и свободы выбора, ассоциируемым с Интернетом или успешной коммерческой деятельностью, однако они обеспечат требуемую защиту, — пишут исследователи. — Целесообразность и сроки внедрения таких решений придется определять самим заинтересованным сторонам».

Категории: Главное, Мошенничество, Уязвимости