Показать сообщение отдельно
Старый 04.05.2009, 22:39   #33
Новичок
 
Регистрация: 10.01.2009
Сообщений: 8
Сказал Спасибо: 3
Имеет 0 спасибок в 0 сообщенях
Lumex пока неопределено
По умолчанию

Как все устроено надоест объяснять. Вкратце. Про логин- и гейм-серверы - это задание на дом.
Есть два типа пакетов: те которые клиент(бот) получает от сервера и те которые отправляет. И те и другие посылаются в зашифрованном виде. На данный момент шифрация пакетов от сервера клиенту не изменилась и бот со старым скриптом спокойно их расшифровывает. Проблема в другом - изменилась шифрация пакетов от клиента серверу, т.е. клиент шифрует (по старому алгоритму) пакет и отправляет серверу, а тот расшифровывает по новыму алгоритму. В результате сервер видит неправильный пакет и моментально посылает клиент на... в общем очень далеко - дисконнект. И все, не срослось у них, бывает.
Но не все пакеты шифруются, несколько первых пакетов от клиента идут без шифрации (2 штука по-моему) в ответ на которые от сервера приходит пакет InitKey (как-то так примерно, название аналогичное может быть) Так вот клиент берет из этого пакета часть - ключ. И последующие пакеты посылает используя для шифрации этот ключ. Но чтобы жизнь совсем медом не казалась, ключ изменяется после отправки каждого пакета от клиента. Изменяется по определенной последовательности - алгоритму.
Отсюда задача:
1) Определить, что именно берется из ИнитКей для ключа.
2) По какому алгоритму изменяется ключ.
Решение1: берем сниффер (спецпрогу, которая ловит пакеты линеечные). Проги: пакетхак (здесь на сайте есть), хлапекс или валкерпатчер - без разницы какую, лишь бы не сами не пытались шифровать, они это могут. Ловим пакеты, думаем, составляем последовательности. Вычисляем ключ и алгоритм. Пишем новый скрипт для ВП. Вуаля! Все работает. Или не работает. Снова думаем или
Решение2: откладываем определенную сумму, ищем человека, который может это сделать и...дальше дело техники.
Вроде все. Поправляйте, легко могу ошибаться.
Lumex вне форума   Ответить с цитированием