Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Blade & Soul (https://forum.zone-game.info/forumdisplay.php?f=183)
-   -   Шифровка пакетов (https://forum.zone-game.info/showthread.php?t=36260)

SiriusED 28.08.2014 15:30

Шифровка пакетов
 
Всем привет, может ли кто помочь понять как шифруется трафик в этой игре?
Играл на русской фришке, че-то раньше хотел разобратся в пакетах когда играл, но как то закинул это дело, а вот теперь появилось время и все таки решил поискать инфу как же все таки шифруются пакеты в этой игре...
Так вот, поставил я хуки на перехват трафика и получаю че-то странное:
Снифф:
Свернуть ↑Развернуть ↓


И дальше все пакеты идут вот в таком вот виде как последние..
Кто может подсказать что тут за алгоритмы, и как использовать эти ключи?

ANZO 28.08.2014 15:36

Re: Шифровка пакетов
 
Ну вон же вам после пакета авторизации ключик приходит he4DOnj5kya8qh3r+LeKTmwa13XnW5J23zIh/Znxv0WNoSXQWNWS3U3Bu/6DV0KuW3uw2TOC9dYBp72ZRtZezGoz6OTy/wQyqBr/I/3NyFfKTotOa, коим дальнейшие пакеты и шифруются я так думаю.

Вот товарищ буржин обьясняет по этой теме:
https://forum.zone-game.info/showpos...75&postcount=8

SiriusED 28.08.2014 16:13

Re: Шифровка пакетов
 
То есть вы хотите сказать что с помощью этого вот ключа я смогу сгенерировать AES-ключ для дальнейшей расшифровки пакетов?
Я если честно сомневаюсь что это так...
Ну и с сообщения "luna9966" я так понял нужно ставить хук именно на функцию которая генерит AES-ключ в клиенте, вот очень хотел бы получить инфу по названию этой функции или адерсе, можно в ПМ если кто вкурсе..

luna9966 28.08.2014 17:18

Re: Шифровка пакетов
 
Господа, вы научитесь для начала отделять мух от котлет.

Есть логин сервер и есть все остальное. Это понятно?

Что вам нужно от сервера то? Игровой траффик или траффик сервера авторизации? Ааа, игровой, ну я так и подумал...

Для того чтобы поймать зашифрованные пакеты от гейм сервера нужно выставлять порт 10100, для лобби соотвественно 10900. Понятно? Гуд.

Идем далее. Первые два пакета от лобби/гейма, которые вы увидите с флагами(не опкод) 4040 и 1050 это пакеты которые несут в себе ключи для обмена. Алгоритм RSA. Но вам его разбирать не нужно, т.к. известно, что путем RSA передается рандомный AES ключ для дальнейшей шифровки траффика. Итак, вам нужен AES ключ. Существует в клиете функция, которая читает все AES ключи, ее очень легко найти, если вы знаете как трассировать ASM код. К слову, конфиги игры тоже заXORеры AES ключем, поэтому даже при запуске, крипто функция палится. Далее, вам понадобится самописанный сниффер с AES криптографией в режиме ECB, язык не важен. В принципе можете переделать самурая если шарите в джаве. Фишка в том, чтобы сниффер поддерживал бы возможность ввода ключа после первых 2 пакетов. И т.д. и т.п.

SiriusED 28.08.2014 18:01

Re: Шифровка пакетов
 
Ну вот о чем я и говорю, снифер то я напишу, на это то как раз знаний хватит, но вот с АСМ пока что не на столько дружу что б понимать как найти эту функцию которая работает с AES-ключами..
Ну первое что приходит на ум это - каким-то образом нужно осуществить мониторинг(аля API-Monitor) вызываемых функций в клиенте что б поймать эту функцию, вот тут что-то можете подсказать как это реализовать? Или есть проще варианты что б узнать что за функция?

Ну а так то на сколько я понял мне нужно узнать что за функция читает AES-ключи, хукнуть ее, получить ключ, заюзать этот ключ в своем сниффере, профит. Все верно я понял?

luna9966 28.08.2014 18:10

Re: Шифровка пакетов
 
Я сделаю вам подарок под вашу пиратку, когда у вас будет сниффер пакетов. Я просто укажу вам адрес нужной функции и ее параметры, надеюсь вы умеете хукать :)

SiriusED 28.08.2014 18:38

Re: Шифровка пакетов
 
Ну в тему хуков и с++ я въезжал недели две, но все таки неделю тому назад - въехал и даже свой собственный управляемый D3Dhook запилил..
Ну за добрый жест конечно спасибо огромное, но мне бы как раз научится это все самому искать, я ж хочу научиться и понять как все устроено а не попросить на форуме готовое решение :)

Так что я серьезно хотел бы помощи в том, как мониторить пользовательские(не WinAPI) функции процесса, ну и как потом еще узнать сигнатуру этих функций я даже не представляю если честно... Ну пока что вот нугуглил и читаю об CE - Ultimap, по этой теме..

з.ы. Могу написать в ПМ если не хотите в паблик сливать инфу о софте или технике..

luna9966 28.08.2014 19:35

Re: Шифровка пакетов
 
Что в приват, что в паблик. Тут нету ничего секретного. Изучайте ollyDBG и IDA 6+. Олька имеет просто огромный потенциал, через нее можно несложно отследить вызовы тех или инных функций. Ну а Айда лучший инструмент для реверсинга :)

Ну раз хотите сами, делайте сами. Софт назван.

DDera 23.07.2015 00:21

Re: Шифровка пакетов
 
luna9966, здравствуйте!
Можете рассказать метод нахождения функций которая работает с AES ключами?


Текущее время: 07:11. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2023, Jelsoft Enterprises Ltd. Перевод: zCarot