Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Mail.ru SMS sender (https://forum.antichat.xyz/showthread.php?t=133090)

Gar|k 05.08.2009 16:14

Mail.ru SMS sender
 
Пишем альтернативный клиент


ВВЕДЕНИЕ:
После того как я выложил в паблик Mail.ru Spam base generator меня многие просили выложить исходник или хотя бы рассказать как работать с MMP протоколом. Собственно этому и будет посвящен этот пост, а чтобы было еще интереснее я опишу, как отравлять СМС используя протокол.
Ассемблер я выбрал не случайно, так как надеюсь, что он отпугнет неверных :)

АЛГОРИТМ:
Протокол довольно хорошо описан самими разработчиками.
После установки соединения сервер постоянно посылает пакеты, которые клиент должен успевать обрабатывать и адекватно отвечать. Прием и отправка должны происходить асинхронно, а на блокируемых сокетах подобное можно реализовать лишь используя многопоточность.

Я опишу принцип работы моего клиента, остальное можно будет понять из комментариев к коду.
  1. Получаем адрес рекомендуемого сервера MMP по адресу mrim.mail.ru:2042 он передается в текстовом формате ip : port
  2. Подключаемся к серверу и создаем поток отправки и приема.

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

  3. Отправляем MRIM_CS_HELLO
  4. Получаем MRIM_CS_HELLO_ACK и создаем поток пинга, который через указанный в пакете интервал отправляет MRIM_CS_PING.
  5. Посылаем MRIM_CS_LOGIN2. Mail.ru Agent отправляет очень странный пакет, полностью который разобрать мне так и не удалось, а все мои попытки самостоятельно сформировать MRIM_CS_LOGIN2 оказывались неудачными, поэтому я просто скопировал часть дампа )
  6. В случае успешной авторизации сервер присылает MRIM_CS_LOGIN_ACK и MRIM_CS_LOGIN_REJ в случае неудачи.
  7. После авторизации необходимо принять полностью MRIM_CS_USER_INFO и только после этого отправлять свои данные. Все мои попытки отправлять запросы сразу после MRIM_CS_LOGIN_ACK заканчивались неудачей.
СМС:
Эта возможность никак не освещена в официальной документации, но стоит немножко поснифать...
Код:

EFBEADDE
12000100
DD711940
39100000 команда 0x1039 отправка смс
2E000000 длина сообщения

00000000
00000000
00000000
00000000
00000000
00000000


00000000

lps номер телефона кому

0C000000
2B3739313233353435363731 // +79123545671

lps сообщение в UNICODE

16000000

67006100720069006B0020006D007500740069007400 // garik mutit

После успешной отправки сервер присылает пакет 0x1040, а в случае неудачи MRIM_CS_MESSAGE_ACK в котором красиво написано почему, не ушла СМС.

WWW:
Для тех, кто хочет понять, как вообще это все работает, я рекомендую почитать:
http://www.wasm.ru/publist.php?list=1
http://www.insidepro.com/kk/006/006r.shtml

P.S

Автор не несет ответственности за возможно последующие брут форсы email (пока тестировал сервер даже не ругнулся, что я так часто подключаюсь), генераторы спам баз на основе MRIM_CS_WP_REQUEST, спамерские рассылки СМС и MRIM_CS_MESSAGE, и распространение червей через MRIM_CS_FILE_TRANSFER ;)

Приложение А
Текст программы

К сожелению она получилась настолько здоровая, что тупо не умещается в пост ) поэтому вот ссылочки:
mra.inc, string.inc, sms.asm

Приложение Б
Контрольный пример работы программы


http://zona-chat.narod.ru/smssend/sms.jpg
Рисунок Б.1 – Главное окно программы

Кому лень компилировать, можете посмотреть сразу как все это работает sms.exe (7168 байт). Лично у меня антивить ругается, что это "TR/Crypr.XPACK.Gen", эх зналбы он что это просто асм программа, труд 3х ночей )

ex3me 05.08.2009 16:43

Отлично =)
На делфи вариант только не выкладывай, ибо начнется массовая продажа СМС-спамеров через м.ру

Gar|k 05.08.2009 16:51

2 ex3me, не бойся я делфи знаю на уровне школьника :)

ex3me 05.08.2009 16:56

Gar|k, кстати у меня тоже орет Авира на XPACK, может пару левых модулей еще подключить? :D

З.Ы. Значит я не буду выкладывать вариант отсылки на Delphi :D

Gar|k 30.08.2009 13:25

ну че ктонить написал спаммер? ))

AKYLA 05.09.2009 00:55

Gar|k
А как же ))) осталось только побороть 50 смс в сутки, путем использования множества аков и синхронизации оных )) и будет около 2500 смс за сутки ))
Только здаеться мне, маил.ру прикроет дыру в виде возможности отправки без добавления в список контактов.

_nic 05.09.2009 01:26

На Украину шлет?

buxmanager 05.09.2009 02:03

а на украину не отправляет....((((((((

warlok 05.09.2009 02:07

Цитата:

а на украину не отправляет....((((((((
я пробывал на MTC укр все доходило)

nonamez 05.09.2009 02:13

а куда кроме раши и укр шлет?


Время: 03:15