РАЗБОР Статья

Подмена отправителя сообщения

Revoltage
Revoltage Newbie · 42 сообщений
Подписаться
19,8 тыс.
[ обложка статьи ]
Режим чтения
Подмена отправителя — это не только SMS и звонки. Тот же приём существует в электронной почте: email spoofing основан на том, что протокол SMTP изначально, ещё с 1980-х годов, не проверяет подлинность адреса отправителя в поле «От», поэтому злоумышленник может отправить письмо якобы от имени банка или известного сервиса. По данным F.A.C.C.T., спуфинг адреса отправителя использовался примерно в 70% email-атак 2023 года, а защитой служат механизмы SPF, DKIM и DMARC. В этой статье мы сосредоточимся на двух других векторах — подмене отправителя SMS и номера звонящего.

Приветствую Codeby! Сегодня я собираюсь разобрать недооцененные на мой взгляд схемы для фишинга. В этом посте хочу рассказать о подмене номера отправителя СМС и о подмене номера звонящего, более известные в интернете как senderid spoofing и callerid spoofing.

SenderID Spoofing мы можем видеть очень часто: когда при создании аккаунта мы вводим номер телефона, то нам приходит смска, часто от имени компании где мы заводим аккаунт. CallerID Spoofing встречается реже, но клиенты сбербанка могут помнить, что с номера 900 им может позвонить бот.

Подмена сообщений:

Разберем два метода подделки отправителя, мы сможем отправлять SMS от имени компаний в несколько (в некоторых случаях больше) кликов.



1. Twilio:
Очень эффективный метод для крупной фишинговой атаки. Первым делом регистрируемся с помощью новой почты и левого номера телефона(можно публичного виртуального) и заходим в аккаунт.

Присылать СМС с названием компании вместо номера можно в большинстве стран, но не во всех.

В России нужно попросить у тех поддержки зарегестрировать senderid(это небольшая проблема) с помощью формы, это займет от дня до недели.

Если регистрация для страны не требуется, пропускаем предыдущий пункт.

Берём простенький код на Python:
Python:
from twilio.rest import Client


account_sid = 'СИД АККАУНТА'
auth_token = 'ТОКЕН'
client = Client(account_sid, auth_token)

message = client.messages.create(body='Привет Codeby!', from_='ОТПРАВИТЕЛЬ', to='ПОЛУЧАТЕЛЬ')
print(message.sid)
Токен и SID смотрим в консоли twilio из Project INFO(Console | Twilio)

Теперь нам нужно апгрейднуть аккаунт, в правом верхнем углу будет баланс, а рядом "Upgrade", жмём и вводим левые данные.

Как только нас просят оплатить, переключаемся на промокод и вводим TWILIOQUEST, получаем бесплатно платный аккаунт.

Теперь можем запускать код, который я привел в статье ранее.

Получаем сообщение от QIWI:
Screenshot_2021-09-08-20-15-10-938_com.tempnumber.Temp_Number.Temp_Number.jpg


Вместо безобидного приветствия там могла быть фишинговая ссылка. При проделанных действиях будет так-же отображаться история сообщений от настоящего QIWI

Опасность заключается в том, что такую атаку практически не используют и даже просвещенный юзер, с довольно-таки большой вероятностью, может попасться на это.



2
. TextBelt: Для тех, кто не хочет заморачиваться над регистрацией Twilio для тестирования полноценной атаки, есть возможность отправить одно сообщение в день с помощью сервиса textbelt из терминала:
Bash:
curl -X POST https://textbelt.com/text \
       --data-urlencode phone='НОМЕР' \
       --data-urlencode senderid='QIWI' \
       --data-urlencode message='Hi codeby' \
       -d key=textbelt
Подмена номера звонящего:

Для этого нам понадобится:

1. CallWithUs

2. SIP Звонилка

Регистрируемся с левыми данными, сервис их не проверяет, нам сразу выдают данные для подключения:

sip.callwithus.com

UserID:
Логин из Email

Password: Пароль из Email

Звонилка должна успешно подключится. Далее нужно пополнить баланс на CallWithUs, можно позвонить на 3246 чтобы пополнять с карты.

Заходим в SPEED DEAL выбираем место откуда якобы будем звонить, SELECT DIALING RULE: Russia, далее идём во вкладу ADD CALLER ID, тут самое интересное — ставим код страны которую выбрали в DIALING RULE и пишем остальную часть, ЛЮБУЮ!!!

И звоним на номер жертвы, получаем звонок от +7ххххххххх.

При этом если у жертвы в контактах этот номер подписан, то звонок поступит к примеру от "Клиент Стирка"

Успех!

Заключение: Как видите, такую атаку может реализовать любой, практически бесплатно, поэтому, хоть СберБанк и заявляет что его номер 900 нельзя подделать, никто не защищён от подобных атак.

Пока что, единственное что может спасти от нее — запрет на слова вместо номера отправителя полностью (это реализовано к примеру в США), ну а от подмены callerid не защищён абсолютно никто, а атаки которые сейчас проводятся в Вайбере вполне реально проводить через мобильную связь. Соединив две схемы у атакующего все будет ограничено только фантазией, в следующей статье я наглядно покажу полноценную атаку с использованием этих двух методов.
Полезно · 15

Комментарии

16
Интересно было почитать. Жаль, что в Twilio для отправки на российские номера необходимо запрашивать senderid у тех.поддержки.
 
Интересно было почитать. Жаль, что в Twilio для отправки на российские номера необходимо запрашивать senderid у тех.поддержки.
Да, это минус, но одобряют они их без проблем.
Если хочется получить senderid для России без лишних вопросов, то посмотрите на clicksend, там для получения SenderID нужно заплатить 50$, но никаких данных о компания указывать не надо, только сам SenderID и страну.
 
Спасибо за интересную публикацию. Нада будет поэкспериментировать. :)
 
  • Нравится
Реакции: Revoltage
1
С Twilio есть один нюанс. Или я что-то не понял?




Пруф тут.
Если я правильно понимаю, то это должно вычитаться из баланса аккаунта, а мы получили 50$ по промокоду.

С Twilio есть один нюанс. Или я что-то не понял?




Пруф тут.
Ещё несколько протоколов и сумма будет на балансе, + я в статье сказал что не во всех странах работает бесплатный и мгновенный senderid
 
При попытке отправить через textbelt выдает такую ошибку - > {"success":false,"error":"Your phone number was not provided in E.164 format, or free SMS are disabled for this country"}
Номер пишу получателя пишу в формате +7ХХХYYYZZXX
 
При попытке отправить через textbelt выдает такую ошибку - > {"success":false,"error":"Your phone number was not provided in E.164 format, or free SMS are disabled for this country"}
Номер пишу получателя пишу в формате +7ХХХYYYZZXX
Отправляете в Россию?
 
  • Нравится
Реакции: PhoeNIX*_404
1
Промокод TWILIOQUEST has expired.
А где новый найти?
 
textbelt:
{"success":false,"error":"Your phone number was not provided in E.164 format, or free SMS are disabled for this country"}
есть вероятность что проблема с апи ключом, но новый у них не генерируется
 
textbelt:

есть вероятность что проблема с апи ключом, но новый у них не генерируется
Есть вероятность что многие начали тестить на российские номера и textbelt отключил возможность в Россию впринцепе
 
Есть вероятность что многие начали тестить на российские номера и textbelt отключил возможность в Россию впринцепе
Тестил на украинский номер, да и новый апи ключ сгенерировать не могу, видимо сервис переживает технические шоколадки
 
Callwithus все ещё работает?
 
Кто тестировал,у кого работает,напишите в ЛС.кто имеет подробную инфу так же прошу поделиться .