Лучший способ предотвратить мошенничество на рынке приложений?
Я разрабатываю сайт торговой площадки, где преподаватели и студенты могут найти друг друга. Я создаю систему онлайн-платежей (очень похожую на elance или guru.com), где преподаватель может получить оплату, а мы уходим.
Пара вопросов:
Какой лучший способ заблокировать IP-адреса из некоторых стран, таких как Нигерия? (Обратите внимание, я использую Ruby on Rails, поэтому любые рекомендации, относящиеся к этому, будут даже лучше, но если нет, то это тоже хорошо.)
Какие еще методы я могу использовать, кроме блокировки определенных IP-адресов? (Я уже делаю AVS и обычные проверки шлюза).
Какие распространенные мошенничества мне нужно проверить?
Например, я могу вспомнить, кто-то использует систему для оплаты себя, он получает средства в качестве оплаты (за вычетом нашей комиссии), а затем производит возврат средств с кредитной карты.
Я полагаю, что это похоже на проблемы, с которыми сталкиваются такие сайты, как Paypal или Google Checkout (некоторые называют эти сайты агрегации), поскольку они берут небольшую процентную плату - поэтому, если первоначальный источник средств потерян, это огромная потеря (во много раз больше прибыль в отличие от обычных продуктов с более высокой маржой).
Пара дополнительных заметок:
- Мои учетные записи пользователей уже требуют проверки электронной почты - это минимум, я ищу что-то помимо этого
- Для прямого депозита есть 3-5-дневный период ожидания - это требуется банком - но он все еще не отвечает на вопрос, как определить в течение этих 3-5 дней, является ли это мошенничеством или нет, поэтому его можно отменить
- Я бы предпочел избегать решения, которое наказывает хороших людей наряду с плохими - таких как взимание платы за регистрацию или заставление их оставлять свои средства на счете до тех пор, пока не будет запрошено снятие средств (например, Paypal).
5 ответов
Вот что я сделал до сих пор, если у людей есть больше предложений, пожалуйста, ответьте:
- Установите флажок "Обзор мошенничества", который, если установлен, требует, чтобы кто-то (я) посмотрел его вручную перед отправкой средств на прямой депозит
- Если отправляемая сумма> 300 долларов США, автоматически проверяется мошенничество
- Если ip-адрес запросов на репетитора и ученика совпадает, то обзор мошенничества
- проверьте их имена и адреса и посмотрите, совпадают ли они "по существу" - то есть они оба могут иметь имя "Джон", поэтому существует предел того, сколько "совпадений" являются причиной пометки для проверки на мошенничество.
Функция выглядит примерно так (обратите внимание, это не включает код для проверки IP-адресов)
def fraud_review invoice
return true if invoice.total > 300
#try to find out if they are the same person!
client = invoice.client
tutor = invoice.tutor
count = 0
client.full_name.split.each do |piece|
count += 1 if tutor.full_name.include? piece
end
client.name_on_card.split.each do |piece|
count += 1 if tutor.full_name.include? piece
end
client.street.split.each do |piece|
count += 1 if tutor.street.include? piece
end
return true if count > 2
false
end
Я думаю, что есть несколько способов добавить дополнительные слои, чтобы деактивировать эти действия.
- Все платежи осуществляются подтвержденными учетными записями пользователей (подтверждено по электронной почте).
- Задержка платежей на основе банковского клиринга на 3 - 5 дней.
- Вместо того, чтобы платежи напрямую применялись к кредитной карте / банковскому счету пользователя, они могут храниться "онлайн" аналогичным образом, как это делает PayPal, и пользователи должны вручную запросить снятие средств.
- Для блокировки IP я бы на самом деле пошел на уровень сервера и настроил таблицы IP. Я не сисадмин, поэтому я не знаю все подробности.
- Я читал о нескольких сайтах и участвовал в них, пытаясь снизить количество злонамеренных попыток, установив номинальную плату за регистрацию. Это удивительно снижает уровень кретинизма, присутствующего на сайте.
В общем, там, где есть желание, есть способ. Внимательно следите за активностью на сайте и имейте некоторые систематические правила для пометки, которые советуют администраторам сайта более внимательно взглянуть на аккаунты или активность.
Я собираюсь ответить на этот вопрос из общей стратегии выявления мошенничества, а не из-за сфокусированного на Ruby-On-Rails ответа. Относительно современные системы обнаружения мошенничества обычно включают в себя некоторые из следующих:
- Постоянные куки - храните куки на жестком диске пользователя. Вы можете использовать это для сравнения трафика, поступающего с одного устройства, притворяясь разными людьми.
- Отпечатки пальцев на устройстве - это можно решить только с помощью JavaScript. Вы можете использовать это для сравнения трафика, поступающего с одного устройства, притворяясь разными людьми.
- Ищите подписи для автоматизированных скриптов. Это может помочь, если кто-то пытается вставить украденные учетные данные из другого сервиса в ваш сервис. Как я уверен, вы знаете, что пользователи никогда не используют учетные данные повторно!
- Репутация IP - узел выхода Tor? (Информация с открытым исходным кодом). В зависимости от вашего приложения, может существовать законный случай, чтобы разрешить трафик от tor, но если пользователь обязан сообщить вам, кто он, чтобы использовать ваш сервис, то нет случая, чтобы быть анонимным.
- Попытки запутывания - UA соответствует машине? Если кто-то пытается скрыть свое происхождение, он, скорее всего, не принесет пользы. Вы можете заблокировать этот трафик в зависимости от вашего уровня комфорта.
Преимущество этого решения перед принятым ответом заключается в том, что оно не зависит от учетной записи пользователя. Недостатком является то, что это гораздо сложнее построить, если вы единственный, кто создает целое приложение. По моему опыту, постоянные куки-файлы обычно легко внедрить и могут помешать некоторым мошенникам низкого уровня.
Есть о чем подумать: вы упомянули, что устанавливаете жестко закодированный барьер в 3000 долларов. Я предполагаю, что решительный мошенник выяснит это и попробует что-то вроде $2999,99, чтобы обойти ваш контроль.
Для блокировки стран вам понадобится база данных геолокации IP, из которой доступно множество бесплатных и коммерческих. Я рекомендую оценивать потенциальные базы данных кандидатов на основании того, насколько хорошо они поддерживаются.
Чтобы заблокировать IP-адреса из определенной страны, вам нужно выяснить, каковы диапазоны IP-адресов оттуда. Тогда все, что вам нужно сделать, это настроить брандмауэр так, чтобы запретить трафик из этих диапазонов.