PDA

Просмотр полной версии : Получение ключа при авторизации и дешифрация


Coder
10.05.2010, 02:14
Доброй ночи, пробую разобраться с дешифрацией пакетов от сервера. На разных форумах вычитал что для дешифрования используется L2BlowFish, нашел его, посмотрел... на сколько я понял, теперь мне необходим ключ дешифрования, который клиент получает от сервера при установке соединения. Сниффером просматриваю входящие пакеты на порту 2106. После ввода логина/пароля и начала входа, приходят 4 пакета, 186, 42, 66, 26 байт. В каком их них искать этот КЛЮЧ?

Я надеюсь что мне ответят на первую часть вопроса, и на ответ на вторую часть я тоже надеюсь =)

var
KeyBF: String;
bfData: L2BlowFish;
_b: String; //Тут у меня содержимое пакета на порту 7777
_x: array [0..2500] of Char; //:confused:

...
//Я предположил что пакет размером 42 байта содержит ключ и...
bfData:=L2BlowFish.Create;
FillChar(KeyBF,21,0);
Move(_b[1],KeyBF,20);
bfData.Init(KeyBF, 21); //Попытался

...
//А к остальным пакетам, я стал применять это шаманство
Move(_b, _x, PacketInfo.PacketLen);
bfData.bfDecode(_x, PacketInfo.PacketLen);
...
//Дальше я вывел то, что попало в заветный _x, и я думаю вы догадались что я увидел...


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

Вразумите меня, как работать с этой дешифрацией? Клиент GFPlus RUOFF

xkor
10.05.2010, 17:32
почитай эти темки:
http://coderx.ru/showthread.php?t=4779
http://coderx.ru/showthread.php?t=3428
http://coderx.ru/showthread.php?t=2169

Coder
10.05.2010, 18:54
Два первых поста я читал до вопроса сюда, в третьем тоже нет ответа.
Я не ищу средств организовать соединение самостоятельно, а хочу понять как расшифровать пакет от сервера. Перехват пароля и т.п. мне не интересны. Нужны только расшифрованные пакеты в игре, от сервера.
Ну подскажите плиз, примером, что сделать то?

xkor
10.05.2010, 19:17
Coder, дык по ссылкам есть инфа как расшифровывать)

TheSun
21.05.2010, 18:07
Присоединяюсь к вопросу... Все указанные ссылки перечитал, но так и не понял как из первого пакета длиной 184(+2) байта получить ключ которым можно расшифровывать все последующие пакеты...

n1ghtmare
22.05.2010, 09:18
Я так понимаю алгоритмы руофа обычным смертным не подвласны... Поэтому расслабтесь или если хотите поигратся с ООГ идите на шоГи

xkor
22.05.2010, 11:09
n1ghtmare, а причем тут вообще руоф?

n1ghtmare
22.05.2010, 17:30
xkor,
Вразумите меня, как работать с этой дешифрацией? Клиент GFPlus RUOFF

xkor
22.05.2010, 22:33
n1ghtmare, а ну не заметил, а вообще трафик с логин сервером на руофе ничем не отличается от эталонного оффа и большинства фришек)

Yegor
23.05.2010, 12:24
xkor, на логин да, до выбора сервера я доходил на своем старом боте для Шока (последний раз проверял пол года назад), но Coder интересуется уже игровым траффиком :).

alexteam
23.05.2010, 13:11
ничем не отличается от эталонного оффа
Неповеришь..
слепок от 10го марта.
---------------------
2e de 09 00 // session ID
21 c6 00 00 // protocol revision
d3 25 e7 91 35 05 53 05 41 c6 43 94 92 05 fe 28 // RSA Public Key 128
17 b3 56 91 54 a7 42 6a 7e 1e 5b 97 89 82 f7 ee
67 cc f3 ec 7d 4d 72 08 15 4e 1f 01 d0 26 1f 0f
4f b6 d5 3f 46 c3 6e 7d 94 89 85 4a 39 2b da b9
50 d9 11 3c 56 29 a6 e2 fc 2b df a1 30 b4 00 7e
74 e4 23 50 e7 b6 50 f0 88 9e 37 72 b6 26 7e dc
e9 a4 dd e6 db 07 2e 88 0b 45 36 e8 e1 4e 2e fa
58 ff ba e8 bf 84 c0 c4 8c 13 83 d4 2d c6 bc 2c
00 00 00 00
00 00 00 00
00 00 00 00
00 00 00 00
37 42 12 6a fb 9f 7b 66 37 42 12 6a 6c 0b ef 6e //BF key
02 00 00 00 00 00 00 33 5f 81 f8 cf 61 1e 00 06 5d 05 31 09 88 13 01 // неведомая хуйня
---------------------


5f 81 f8 cf = 95.129.248.207
на тот момент по нему висел домен la2frost7.teratelecom.ru

TheSun
23.05.2010, 23:28
Подскажите хоть статический ключ BlowFish которым раскодировать первый пакет логин-сервера.
Такой? 6B 60 CB 5B 82 CE 90 B1 CC 2B 6C 55 6C 6C 6C 6C

А потом XOR четырьмя последними байтами??

RuOff

Yegor
24.05.2010, 11:14
TheSun, первый пакет просто заксорен, и BlowFish ключ не статический он как раз и приходит в первом пакете.
Последующие логин пакеты будут уже под блоуфишем и без ксора.

И вообще зачем оно тебе, если ты задаешь такие вопросы по логин серверу, ответы на которые есть поссылкам приведенным выше, то как ты собираешься разгадать алгоритм кодироания игрового потока? Там уже идет тайна Угновы.

xkor
24.05.2010, 12:53
Yegor, вообщет первый пакет закодирован и блоуфишем тем самым константным ключем)

Yegor
24.05.2010, 13:25
xkor, а ну да, но все равно в этом пакете приходит новый blowfish ключ.

TheSun
24.05.2010, 15:22
Yegor, вообщет первый пакет закодирован и блоуфишем тем самым константным ключем)

Вот вот. Об этом я и спрашивал... Yegor немного не прав. Насколько я понял из тонны информации на этом и других форумах, первый пакет закодирован XOR, а потом поверх BlowFish со статическим ключем (часто мелькал ключ приведенный мною выше, он правильный для руОффа?). И в этом пакете содержится динамический ключ которым закодированы все последующие пакеты от логин сервера. Вот этот пакет я и пытаюсь раскодировать, с целью узнать ключ которым можно раскодировать все последующие...

З.Ы. А до алгоритма кодирования игрового потока я еще дойду :)

Yegor
24.05.2010, 15:30
Вечером проверю работаспособность старой программы при попытке залогинится на руууоф, результтат отпишу.