Доброго времени суток.
Из названия темы понятно, что речь пойдет о разработке OOG бота
1. Настройка сниффера
Прежде чем начать изучать трафик, надо видеть его структуру
Для этого будем использовать сниффер, перехватчик пакетов Сниффер - Pandora's Box(сниффер на основе прокси-сервера) Прокси-клиент - Любой, но я использую Proxifier
[Ссылки могут видеть только зарегистрированные пользователи. ] | [Ссылки могут видеть только зарегистрированные пользователи. ] Гайд по настройке Proxifier
Цитата:
Options -> Proxy Settings
Add
Address = 127.0.0.1
Port = 30000 (по умолчанию используется в пандоре)
Protocol = SOCKS Version 4
Ok
Отмечаем галочкой созданную настройку
Options -> Proxification Rules
Выбираем второй кружочек
Add
Название выбираем удобное для вас.
Добавляем Application (указываем путь к elementclient.exe)
Port Range = 29000
Ok
Отмечаем галочкой созданную настройку
Процесс
Запускаем Pandora's Box
Включаем Proxy
Запускаем PW
2. Структура пакета
Все пакеты отправляются в формате:
3. "Упаковка, шифрация, создание ключей" или "Входим на аккаунт"
Как известно, все серверные пакеты после 0x02 S2C(Server to Client) шифруются и пакуются, а клиентские пакеты только шифруются
Для шифрации используется алгоритм [Ссылки могут видеть только зарегистрированные пользователи. ]
Для упаковки - [Ссылки могут видеть только зарегистрированные пользователи. ] RC4 C#
Код:
using System;
namespace OOGLibrary.Cryptography
{
class RC4
{
public RC4()
{
for (int i = 0; i < 256; i++)
m_Table[i] = Convert.ToByte(i);
m_Shift1 = 0;
m_Shift2 = 0;
}
public void Shuffle(byte[] Key)
{
byte Shift = 0;
for (int i = 0; i < 256; i++)
{
byte A = Key[i % 16];
Shift += (byte)(A + m_Table[i]);
byte B = m_Table[i];
m_Table[i] = m_Table[Shift];
m_Table[Shift] = B;
}
}
public byte Encode(byte InPacket)
{
m_Shift1++;
byte A = m_Table[m_Shift1];
m_Shift2 += A;
byte B = m_Table[m_Shift2];
m_Table[m_Shift2] = A;
m_Table[m_Shift1] = B;
byte C = (byte)(A + B);
byte D = m_Table[C];
return (byte)(InPacket ^ D);
}
private byte m_Shift1;
private byte m_Shift2;
private byte[] m_Table = new byte[256];
}
}
0x02 SMKey - тот самый пакет, после которого клиент начинает шифровать трафик, а сервер паковать алгоритмом MPPC и шифровать
EncHash - хеш, который нужен для создания ключа для RC4, который в свою очередь используется для шифрации трафика
Этот ключ генерируется следующим образом - HMACMD5(Login){Hash + EncHash}
Hash - тот самый хеш из 0x03 LogginAnnounce
DecHash - Рандомный хеш, с помощью которого, как я уже описывал чуть выше, генерируется ключ для RC4, которым клиент будет расшифровывать трафик
Force - флаг(Усиленный вход)
Этот пакет, как и все последующие, шифруется
Задавайте вопросы, пишите замечания
[Ссылки могут видеть только зарегистрированные пользователи. ] | [Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
________________ Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - твинки любого игрока, их дата создания, последний онлайн, статус удаления и прочее
Skype - freepvps
ICQ - 412705115
[Ссылки могут видеть только зарегистрированные пользователи. ] - ставкобот [Ссылки могут видеть только зарегистрированные пользователи. ] - общение в КЧ через смартфон
Options -> Proxy SettingsAdd
Address = 127.0.0.1
Port = 30000 (по умолчанию используется в пандоре)
Protocol = SOCKS Version 4
Ok
Отмечаем галочкой созданную настройку
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - Совершенный автологин для Perfect World [RUOFF, PWI, Фришек 1.4.4 - 1.4.5]
--------------------------------------------
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - Патч на Горны, Красный (да и любой) чат, Анфриз, Бесконечный зум, Моментальный разгон на полете для RUOFF, PWI и прочих 1.4.6 и фришек 1.4.4, 1.4.5.
--------------------------------------------
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - патчер для серверов 1.4.5 и 1.4.4 работающий с включенной игрой.
--------------------------------------------
7_ON, не трогайте настройки пандоры, если не знаете, что они значат
________________ Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - твинки любого игрока, их дата создания, последний онлайн, статус удаления и прочее
Skype - freepvps
ICQ - 412705115
[Ссылки могут видеть только зарегистрированные пользователи. ] - ставкобот [Ссылки могут видеть только зарегистрированные пользователи. ] - общение в КЧ через смартфон
Может я чего то не понимаю... Скачал архив с Pandora's Box, открываю гайд по ее настройке и собственно вопрос: где те кнопки и пункты меню? Или эта не та версия или ... Можно поподробнее описать настройку Pandora's Box
7_ON,
[Ссылки могут видеть только зарегистрированные пользователи. ]
________________ Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - твинки любого игрока, их дата создания, последний онлайн, статус удаления и прочее
Skype - freepvps
ICQ - 412705115
[Ссылки могут видеть только зарегистрированные пользователи. ] - ставкобот [Ссылки могут видеть только зарегистрированные пользователи. ] - общение в КЧ через смартфон
Поясните, что надо отправлять в пакете C02? Я его формирую так: беру EncHash из S02, HMACMD5 хеш из C03, логин. На их основе делаю RC4 ключ = HMACMD5(хеш из С03 + EncHash).ComputeHash(Login). Затем пишу в пакет опкод 0х02, длину пакета, длину ключа, полученный RC4 ключ и 0х00. Отправляю и сервер молчит. Слышал, что нужно уже сам пакет C02 зашифровать, так вот, его шифровать с помощью RC4? И на основе какого ключа тогда? И что именно шифровать - чисто пакет, или все полностью вместе с опкодом/длиной пакета и т.д.
gudvin7771, [Ссылки могут видеть только зарегистрированные пользователи. ]
В будущем юзайте поиск
________________ Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - твинки любого игрока, их дата создания, последний онлайн, статус удаления и прочее
Skype - freepvps
ICQ - 412705115
[Ссылки могут видеть только зарегистрированные пользователи. ] - ставкобот [Ссылки могут видеть только зарегистрированные пользователи. ] - общение в КЧ через смартфон
________________ Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - твинки любого игрока, их дата создания, последний онлайн, статус удаления и прочее
Skype - freepvps
ICQ - 412705115
[Ссылки могут видеть только зарегистрированные пользователи. ] - ставкобот [Ссылки могут видеть только зарегистрированные пользователи. ] - общение в КЧ через смартфон
Sinyss, что там за обновление такое
Добавились всего 5 байт, а алгоритмы те же
________________ Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - твинки любого игрока, их дата создания, последний онлайн, статус удаления и прочее
Skype - freepvps
ICQ - 412705115
[Ссылки могут видеть только зарегистрированные пользователи. ] - ставкобот [Ссылки могут видеть только зарегистрированные пользователи. ] - общение в КЧ через смартфон
________________ Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). - твинки любого игрока, их дата создания, последний онлайн, статус удаления и прочее
Skype - freepvps
ICQ - 412705115
[Ссылки могут видеть только зарегистрированные пользователи. ] - ставкобот [Ссылки могут видеть только зарегистрированные пользователи. ] - общение в КЧ через смартфон