Войти
ПрограммированиеФорумСеть

Перехват и расшифровка пакетов

#0
10:31, 9 янв. 2010

Здравствуйте, интереса ради и опыта, чтобы перейти от теории к практике, решил написать простенький совсем-совсем эмулятор какой-нибудь игры, вернее эмулятор сервера. Задача остановилась в тот момент, когда я попытался расшифровать отснифенные пакеты, чтобы узнать опкоды и прочую информацию которая передаётся.

Подскажите пожалуйста, как расшифровываются пакеты? Что можно почитать на эту тему? Как можно узнать по какому алгоритму шифруются пакеты?

Заранее огромное спасибо и извините, за возможно глупые вопросы.


#1
11:46, 9 янв. 2010

Для того что бы написать сервер тебе надо не пакеты снифать А уж тем более  не взламывать шифр если он  есть на том что ты ловишь.

#2
11:49, 9 янв. 2010

А как иначе будут общаться клиент и сервер, если пакеты которые понимает клиент неизвестны?

#3
12:17, 9 янв. 2010

Justone
> простенький совсем-совсем эмулятор какой-нибудь игры, вернее эмулятор сервера.
По-моему, "простенький" и "сервер какой-нибудь игры", учитывая, что протокол тебе не известен - это сборник взаимоисключающих параграфов.

#4
12:33, 9 янв. 2010

Не, ну взять хотя бы игру WoW или Aion или RF Online, разницы всё равно нет, нужно разобрать для начала пакеты. Я себе это представляю так, отснифать их с помощью снифера, того же WPE Pro к примеру, далее изучать пакеты, искать байты которые не меняются и как-то разобраться структуру, хотя бы понять, где записан опкод, где данные какие-то, а где просто мусор. Вот правда как это сделать, никак толком сообразить не получается. :(

#5
13:32, 9 янв. 2010

Justone,
1. Параллельно снифать пакеты и реверсить клиент... выяснять корреляции.
2. Мусор в данных наврятли будет. каждый байтик значимый.

#6
13:37, 9 янв. 2010

v_over Большое спасибо! А можно чуточку, хоть самую малость, подробнее про реверс клиента? Хотя бы литературу, которую следует почитать. Я так понимаю, имеется ввиду дизассемблирование?

#7
13:48, 9 янв. 2010

Justone, да. Если опыта в этом деле не было, то могу посоветовать *искусство дизассемблирования* Крис Касперски, ну и есть множество статей на wasm.ru .

#8
13:52, 9 янв. 2010

v_over Ясно, буду изучать, большое спасибо! Опыта в этом деле совсем нет, да и ассемблер я не знаю. Честно говоря, я даже мало представляю пока, что требуется найти этим способом, но всё равно премного благодарен. Буду изучать.

#9
9:09, 10 янв. 2010

это высший пилотаж, а ты тут пришел такой, Белый Орёл, не знающий ассемблера, и "решил перейти от теории к практике" :)))

#10
10:00, 10 янв. 2010

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

#11
22:35, 25 янв. 2010

Да неиначе автор пытается читить на каком-нибудь сервере сетевой игры))

"решил написать простенький совсем-совсем эмулятор какой-нибудь игры, вернее эмулятор сервера" - и как это будет выглядеть? Ведь сервер может не только "принимать/отдавать" пакеты, он же эти пакеты формирует исходя из какой-то логики, данных лежащих на нем и т.д. Тут одним перехватом пакетов не обойдешься, нужно и сервер и клиент "разобрать на винтики" чтоб что-то съэмулирвоать суметь.

"Как можно узнать по какому алгоритму шифруются пакеты?" а вы думаете что такая инфа передается в хоть каком-то виде от сервера к клиенту? это нужно дизассемблировать клиент/сервер и ковырять внутрненности.

Можно взять ява сборки сервера lineage2, клиент к нему и пытаться ковырять, и полазить по форумам вроде allcheats.ru, но многое "вкусное" там закрыто под хайдом с сотнями сообщений.

ПрограммированиеФорумСеть

Тема в архиве.