Описание мошеннических сценариев, связанных с отсутствием валидации отправителя сообщения в SMS-банкинге. Примеры эксплуатации с использованием социальной инженерии и возможные пути устранения проблем.
1 of 15
Download to read offline
More Related Content
Мошенничество в SMS-банкинге
2. Мошенничество в SMS-банкинге
Денис Горчаков, Ольга Кочетова
Исследовательский центр
Positive Technologies
Positive Hack Days 2013
3. Что такое SMS-банкинг
― возможность проверять баланс и получать информацию о произведенных
транзакциях
― возможность совершать базовые операции:
• пополнение счета мобильного телефона
• оплата различных услуг
• перевод средств
• экстренная блокировка карты при утере
3
5. Отсутствие подтверждения операций или слабая
защита подтверждения
От: Василий
Кому: SMS-банк
SEND 100 89161234567
От: Мой банк
Платеж на номер 89161234567 на
100 рублей принят
От: Мой банк
Для подтверждения платежа
введите код 974365
От: Василий
Кому: SMS-банк
SEND 9999 89161234567
От: Мой банк
Для подтверждения платежа
необходимо указать последние 4
цифры Вашей карты
От: Василий
Кому: SMS-банк
SEND 9999 89161234567 0890
От: Мой банк
Платеж на номер 89161234567 на 9999
рублей принят
5
6. Сбор данных злоумышленником
― случайность: привязка к чужому номеру
• Минимальный вред – чтение чужой финансовой информации
• Максимальный вред – управление чужим счетом:
http://pravo.ru/news/view/83503/
• Последствия – уголовная и административная ответственность
― целенаправленный сбор данных:
• корзины для чеков у терминалов и банкоматов в людных местах
• продавцы магазинов – копия кассовой ленты
• сотрудники операторов связи:
http://www.securitylab.ru/news/377745.php
6
7. Эксплуатация
― Зная только номер:
• платеж на номер телефона (свой или подтвержденный)
банки уже озабочены: http://www.finsb.ru/map/novosti/view/?tx_ttnews[tt_news]=1428
• социальная инженерия
Вариация стандартной схемы с «ошибочным платежом на чужой номер», когда
имитируется сообщение об оплате от оператора/платежной системы.
• хулиганство, блокировка карты
Дополнительно:
― атаки на OTP (длительный срок действия)
― ненадежные методы проверки (по частичному номеру карты)
7
8. Злоумышленник Семен:
От: номер Василия
Кому: SMS-банк
SEND 500 89261234567
$$$
От: Оператор мобильной связи
Баланс лицевого счета Вашего телефона
пополнен на 500 рублей.
От: Семен
Кому: Василий
Братан, ошибся номером, кинь мне
бабки назад, будь другом!!1
От: Семен
Братан, ошибся номером, кинь мне бабки
назад, будь другом!!1
SMS-шлюз
От: SMS-банк
Василий Петрович, с Вашей карты списано
500 рублей на пополнение счета телефона
REAL
REAL
От: SMS-банк
Ошибочное списание средств с Вашей карты
отменено. Средства будут возвращены на
карту в установленный срок
FAKE
От: номер SMS-банка
Кому: Василий
Ошибочное списание средств с Вашей
карты отменено. Средства будут
возвращены на карту в установленный
срок
SMS-шлюз
Социальная инженерия
8
9. Злоумышленник Семен:
От: номер Василия
Кому: SMS-банк
SEND 3000 89261234567
$$$
От: Оператор мобильной связи
Баланс лицевого счета Вашего телефона
пополнен на 3000 рублей.
SMS-шлюз
От: SMS-банк
Василий Петрович, с Вашей карты списано
3000 рублей на пополнение счета
телефона
REAL
REAL
От: Служба безопасности банка
Зафиксирована ошибочная операция по
Вашей карте. Для немедленной отмены
операции отправьте на номер службы
безопасности 9900 команду отмены:
CANCEL 79161235476
FAKE
От: «Служба безопасности банка»
Кому: Василий
Зафиксирована ошибочная операция
по Вашей карте. Для немедленной
отмены операции отправьте на номер
службы безопасности 9900 команду
отмены:
CANCEL 79161235476
SMS-шлюз
Электронный кошелек
SMS-агрегатор
Социальная инженерия в.2
9
10. Злоумышленник Семен:
От: номер Василия
Кому: SMS-банк
SEND CUTEKITTENS 99999
От: SMS-банк
Василий Петрович, спасибо!
Ваше пожертвование в фонд
поддержки котят в размере
99999 рублей принято!
Спасибо!
SMS-шлюз
… разумеется, и не только это, ведь злоумышленники уже в курсе,
информация есть на общедоступных ресурсах:
1. http://www.banki.ru/forum/index.php?PAGE_NAME=read&FID=34&TID=154788
2. http://www.banki.ru/forum/index.php?PAGE_NAME=read&FID=34&TID=154785
Хулиганство
10
11. Проверки
― без проверки (только по номеру отправителя):
― просто и удобно, но небезопасно;
― проверка по 4 цифрам карты: ненадежно;
― проверка по одноразовому коду: лучше, но есть нюансы в безопасности;
― правильные банки: помимо ОТР - проверка IMSI*, привязка IMSI к номеру
счета;
* IMSI (International Mobile Subscriber Identity) — международный идентификатор мобильного
абонента (индивидуальный номер абонента), ассоциированный с каждым пользователем
мобильной связи стандарта GSM, UMTS или CDMA. При регистрации в сети аппарат абонента
передаёт IMSI, по которому происходит его идентификация.
Номер «зашит» на SIM-карте пользователя.
11
12. Злоумышленник Семен:
От: номер Василия
Кому: SMS-банк
SEND CUTEKITTENS 99999 0890
SMS-шлюз
Проверка IMSI
отправителя
I. (привязан к счету) ОТКАЗ
II.
Как правильно?
От: SMS-банк
Подтвердите операцию, отправив
код 754387 ответом на это
сообщение
ОТКАЗ
WTF?
12
13. Другие векторы?
• GSM-сигнализации с паролями по умолчанию
• «умные дома» - таргетированные атаки
Как защититься пользователю?
• не отключать OTP и оповещения на операции по
карте
• внимательность и бдительность
• использовать банк-клиент для смартфона
13
14. Конец рассказа
Спасибо за внимание
Денис Горчаков, Ольга Кочетова
Исследовательский центр
Positive Technologies
dgorchakov@ptsecurity.ru, okochetova@ptsecurity.ru
Editor's Notes
Человек приобретает контракт у оператора сотовой связи.
Человек открывает счет в банке и привязывает услугу «SMS-банк» к номеру телефона
Человек расторгает договор с оператором сотовой связи, оставив привязки различных сервисов к данному номеру, в том числе и банковский счет.
По прошествии определенного времени оператор заново выставляет данный номер на продажу.
Новый владелец номера начинает получать SMS-уведомления о состоянии счета, в том числе и получает доступ к управлению счетом.
Вариант 1. Для одобрения платежа достаточно, чтобы команда была отправлена с номера, привязанного к счету карты.
Вариант 2. Для одобрения платежа достаточно, чтобы команда и последние 4 цифры карты были отправлены с номера, привязанного к счету карты.
Допустим, что злоумышленник точно знает, что владелец определенного номера телефона пользуется услугой «SMS-банк»
Злоумышленник имитирует номер владельца карты (например, через собственный шлюз) и отправляет на номер SMS-банка сообщение с командой на пополнение счета телефона с данной карты (операция не требует авторизации).
Банк переводит средства на счет владельца карты и оповещает его об этом (как и оператор связи)
Владелец телефона получает фальшивое сообщение, что ошибочное списание средств с карты отменено.
Злоумышленник отправляет сообщение, где пишет, что ошибся номером при платеже и просит вернуть оплаченное назад.
Владелец, не зная, что счет его телефона пополнен с его же карты, перечисляет злоумышленнику указанную сумму.
Допустим, что злоумышленник точно знает, что владелец определенного номера телефона пользуется услугой «SMS-банк»
Злоумышленник имитирует номер владельца карты (например, через собственный шлюз) и отправляет на номер SMS-банка сообщение с командой на пополнение счета телефона с данной карты (операция не требует авторизации).
Банк переводит средства на счет владельца карты и оповещает его об этом (как и оператор связи)
Владелец телефона получает фальшивое сообщение, что ошибочное списание средств с карты отменено.
Злоумышленник отправляет сообщение, где пишет, что ошибся номером при платеже и просит вернуть оплаченное назад.
Владелец, не зная, что счет его телефона пополнен с его же карты, перечисляет злоумышленнику указанную сумму.
Обладая информацией о 4 последних цифрах карты, можно проделывать операции с большими суммами.
Например, перечислить средства в благотворительный фонд.