Открою страшную тайну. Потери банков от карточных мошенничеств чрезвычайно малы по сравнению, например, с невыплаченными кредитами. Однако для населения любая информация о карточных мошенничествах - как красный флаг для быка. И потому такие ситуации очень влияют на имидж банка.
Неудивительно, ведь тут деньги теряет население, а не банки. Не вернуть кредит для многих людей - ну если не святое дело, то где-то в глубине души как будто бы справедливое. А вот когда деньги исчезают с карточки труженника - это очень болезненно.
Вообще говоря, во всех этих историях с мошенничествами доля именно "технических" преступлений очень, очень мала. Ну когда данные карты действительно незаметно крадут и используют. Гораздо больше случаев, когда у человека выманивают всю необходимую информацию или прямо подталкивают к некоторым действиям. Об этом поговорим как-нибудь в другой раз, а сегодня коснемся вопроса именно "технических" мошенничеств, а если точнее - как устроена система автоматического обнаружения мошенничеств.
Сама система обнаружения и противодействия мошенничества (Fraud Detection and Prevention System) редко является чем-то монолитным. Потому что в этом деле нужно выполнять несколько разных по смыслу действий. Точнее, хотелось бы одно-единственное действие - просто как-то отсекать подозрительные транзакции и всё. Но в реальности так просто не получается.
А потому обычно есть две части системы.
Быстрая, но неточная часть
Это не какая-то отдельная программа, это обычно часть фронт-офиса, той программы, которая "принимает" транзакции из внешнего мира, а потом их обслуживает. Авторизует их там, или отправляет на авторизацию в платежную систему. И одна из частей фронт-офиса занимается детекцией мошенничеств.
Эта часть выполняет какие-то простые вычисления "на лету", и тут же может отклонить подозрительную транзакцию. Здесь ключевым свойством является скорость расчетов.
Почему же? Да просто таймаут обработки карточной транзакции составляет порядка 40 секунд. И за это время транзакция может пробежать половину земного шара. Т.е. в эти 40 секунд нужно успеть передать транзакционный запрос банку, тот передает в платежную систему, та передает банку-эмитенту. Здесь банк проводит авторизацию (выполняет массу проверок), и отправляет ответ по такому же длинному пути. И на все про все - порядка 40 секунд!
Проверки на мошенничество просто не имеют право занимать много времени.
Вторая причина вот в чем. Как видите, требуется очень быстро обрабатывать одну транзакцию. А в реальных системах таких транзакций может быть до нескольких тысяч. В секунду!! У крупных банков. У мелких - все-таки в пределах нескольких десятков, но это тоже немало.
Иными словами, такие системы изначально разрабатываются как высоконагруженные, и ориентированные на скорость выполнения. В них всё оптимизировано до последнего байта, потому что неоптимальный участок может в итоге очень сильно сказаться на общей производительности.
Это значит, что никакие сложные и тяжелые алгоритмы тут не поместишь. Потому чаще всего здесь ряд каких-то простых вычислений, без глубокого статистического анализа.
Плюс как вариант, каждый элемент транзакции может иметь какую-то свою оценку рисковости. Например, уличный банкомат на окраине - гораздо более рискованный источник транзакций, чем банкомат внутри банковского отделения. А маргинал Диванный Воин Акакий больше склонен к подозрительным действиям, чем напыщенный Хипстер Феоктист. А значит - у карт Акакия рисковость выше.
И тогда мы учитываем суммарный риск от этого конкретного банкомата и этого конкретного пользователя.
В общем, все алгоритмы здесь - максимально быстрые, но часто не очень "вдумчивые". А потому приходится иметь другую, отдельную систему:
Точная, но долгая система
Если не сковывать себя сорока секундами, то можно провести глубокий анализ со статистикой, сравнением, эталонными моделями поведения и так далее. Это всё требует большого количества данных, длительных расчетов и т.д. И всё это не получится выполнять во время обработки транзакции. Но зачем тогда эти расчеты, если транзакция уже выполнена?
А есть несколько схем.
Блокировка объектов
По результатам анализа можно понять, что конкретно эта карта участвует в очень подозрительных транзакциях. А значит, когда это стало понятно, ее можно заблокировать. Да, прежде совершенные транзакции уже не вернуть, но зато мы не дадим совершить новые мошенничества.
Или, может быть, подозрительно себя ведет POS-терминал. Тут гораздо проще, блокируем терминал, а потом разбираемся с его владельцем. Владельца, если что, уже легко достать :) Потому что мы о нем знаем очень много, и у нас с ним договор эквайринга.
И так далее. В этом варианте какие-то действия происходят все-таки уже после "преступления", но что-что сделать все-таки можно.
Изменение оценки рисковости
Это когда мы понимаем, что объект (карта, терминал, пользователь, торговец и т.д.) ведет себя очень подозрительно, но пока не было чего-то совсем криминального. Или было, но потом все разблокировали и внимательно следим. В этом случае обычно повышается оценка риска этого объекта. А это нужно для первой системы, которая быстрая, но неточная. Она может принимать решения "на лету", основываясь как раз на вот таких вот оценках, и тогда обе системы прекрасно работают вместе.
Все-таки работа "на лету" (онлайн)
Это один из возможных вариантов использования всех современных систем такого рода.
В этом случае все-таки на лету производится достаточно тяжелый анализ, на основе каких-то оптимизированных математических моделей и оптимизированного статистического анализа. И тогда наш вердикт отправляется фронт-офису в ответ на его вопрос.
Если успеваем. Если нет - ну тут уж пусть фронт-офис как-то разбирается, не дождавшись нашего ответа :)
Почему все-таки возможно работа в онлайн-режиме, хотя мы говорили, что это очень тяжело? Потому что система детекции мошенничеств - отдельная программа, которая специально оптимизируется для своих узких задач детекции и обычно имеет отдельную базу данных (а это узкое место).
У фронт-офиса масса совершенно других задач, там используются иные оптимизации, для других действий. Кроме того, обычно не каждая транзакция отправляется сюда на анализ.
Реверс транзакции
В некоторых случаях можно быстренько провести реверс транзакции. Например, мы поняли, что одна из прошлых транзакций оказалась мошеннической. И тогда мы можем успеть "запрыгнуть" в убегающий поезд и сформировать реверсную транзакцию, т.е. транзакцию отката.
Имеется в виду, что после списания выполнить обратное зачисление. Если все в предела одного банка - то тут раздолье, главное, чтобы с со счета назначения не успели деньги уйти куда-то еще. А в случае с платежной системой возможностей меньше, но все-таки есть.
Тут тоже есть строгие ограничения по времени, но они чуть больше, чем те самые 40 секунд, а потому шансы уложиться в этот таймаут выше.
Рабочее место рискового офицера
У большинства подобных систем (будь то одно интегрированное решение, или отдельная точная но долгая система) есть специальное рабочее место рискового офицера (risk officier). Сюда попадают все подозрительные объекты. Часть из них обрабатывается автоматически (например, карта блокируется), часть из них требует ручной обработки офицером.
На этом рабочем месте офицер может просмотреть историю транзакций по каждому объекту, результаты выполнения разных правил детекции, и принять решение, чего делать с этой фигней. Вариантов обычно не так много. Блокировать, позвонить клиенту и уточнить... Что-то такое.
В общем случае все эти правила обнаружения рисков создаются силами соответствующей службы в банке. Системы обычно позволяют банкам создавать самые разные алгоритмы. Часть этих алгоритмов может быть уже поставлена вместе с программой.
А вообще, помимо собственных идей о том, как эти алгоритмы-детекторы создавать, банки еще руководствуются предписаниями и платежных систем, и центробанка.
Это значит, что есть ряд правил, которые должны быть обязательно реализованы. Например, у Visa есть правило, что сумма зарубежных транзакций по карте не должна превышать 10 000$ в месяц. И как только превысила - новые транзакции должны быть банком отвергнуты.
Или, например, карта не может участвовать в транзакциях, которые сгенерированы в разных странах в течение пары часов (за исключением транзакций в аэропортах).
Противодействие мошенничества в некарточных системах
Не совсем наша тема, но почему бы и не затронуть.
Главный способ противодействия (тоже помимо всяких алгоритмов и ручных обработок) - это... Задержка обработки :)
Да-да. В мошенничестве критически важно всё сделать быстро, пока жертва не сообразила. А потому множество разных систем спокойно могли бы работать намного быстрее. Но они имеют довольно затяжные регламенты. И отчасти - именно для того, чтобы сделать мошенничества с их непривлекательной затеей. Особенно в системах типа SWIFT это распространено. Опять же, в них много ручных проверок, а количество транзакций в единицу времени намного меньше, чем в карточных системах (суммы, соответственно, намноооого больше).
А что вам еще хотелось бы узнать про детекцию мошеннических операций? Напишите в комментариях.
Мне очень важно понимать, что вам интересны мои тексты. Потому если вам нравится, не скупитесь на лайки и репосты :) Так я пойму, что мне надо продолжать.
Читайте также: