Oldraggame.ru
Модератор: 4epT
Re: Oldraggame.ru
wireshark работает на весь твой канал
-
- Начинающий
- Сообщения: 19
- Зарегистрирован: Чт апр 17, 2008 7:22 am
Re: Oldraggame.ru
ВПЕ ловит пакеты от клиента, но нужно в таргет ставить не клиент, а что-то другое...vpixyn писал(а):а у меня что то даже ни WPE, ни Wireshark не видят запущенный клиент ро, чтобы стянуть хоть какие то данные....о0
Но не поможет, при логин пакете там шифрация и ничего не вытянуть толком оттуда, без каких-либо лишних заумных действий.
Кстати, у кого ОК не отображает норм русские имена в игре, дамаг, и еще хз что - поставьте последний ОК, с опенкор.ком. На 2.0.7 2009го года точно не отображалось корректно, пока не поменял ОК...
-
- Новичок
- Сообщения: 7
- Зарегистрирован: Пн мар 11, 2013 9:50 am
- Сервер RO:: OldRO
Re: Oldraggame.ru
OK 2.1 - дамаг от мобов корявый <- давно на это забил
кстати, шифруется же только логин пакет, можно тупо его и отправлять вместо того, который собирает кора
кстати, шифруется же только логин пакет, можно тупо его и отправлять вместо того, который собирает кора
Последний раз редактировалось Strategist Пт мар 15, 2013 8:08 am, всего редактировалось 1 раз.
Re: Oldraggame.ru
дивизион сделал обход автопатчера и подмену окон с цисловыми различиями Ragnarok -1 Ragnarok -2 и т.п.Zozo писал(а):всё поделал, а как теперь сменить название exe файла?)?))))) если есть решение - пожалуйста в личку
-
- Новичок
- Сообщения: 7
- Зарегистрирован: Пн мар 11, 2013 9:50 am
- Сервер RO:: OldRO
Re: Oldraggame.ru
а запускать из сэндбокса или с виртуалки разные клиенты не проще? (если уж так хочется юзать xkore 1) >_<Ololo писал(а):дивизион сделал обход автопатчера и подмену окон с цисловыми различиями Ragnarok -1 Ragnarok -2 и т.п.Zozo писал(а):всё поделал, а как теперь сменить название exe файла?)?))))) если есть решение - пожалуйста в личку
- 4epT
- macro-маньячина
- Сообщения: 2792
- Зарегистрирован: Чт дек 21, 2006 1:23 pm
- Сервер RO:: 4game
- Discord: ya4ept#8494
- Контактная информация:
Re: Oldraggame.ru
какой нахрен обход автопатчера?дивизион сделал обход автопатчера
1rag1 и 1sak1 - наше всё.. кто в теме тот поймёт
вообще-то штатный xkore реагирует на название exe, а не название окна..и подмену окон с цисловыми различиями Ragnarok -1 Ragnarok -2 и т.п.
-
- Начинающий
- Сообщения: 19
- Зарегистрирован: Чт апр 17, 2008 7:22 am
Re: Oldraggame.ru
Можно, да, если это кто-то знает как делается. src\Network\Send\servertype0.pm - там пакеты...кстати, шифруется же только логин пакет, можно тупо его и отправлять вместо того, который собирает кора
-
- Новичок
- Сообщения: 10
- Зарегистрирован: Пн мар 11, 2013 12:54 pm
- Сервер RO:: oldraggame
Re: Oldraggame.ru
1rag1 и 1sak1 не пашут работает только 1но окно
Re: Oldraggame.ru
Просто 1rag1 обойтись не получится - патчер сменяет для клиента настройки подключения.
Поэтому как сменить имя экзэ файлу не понятно.
Скрыть или переименовать процесс на вин 64 трудновато.
Обходить автопатчер - черевато, пропустишь патч - пошлёшь неверный пакет - вылетишь в бан.
Добавлено спустя 1 минуту 40 секунд:
Да и обойти автопатчер не проще чем вскрыть способ шифрования логин пакета.
Поэтому как сменить имя экзэ файлу не понятно.
Скрыть или переименовать процесс на вин 64 трудновато.
Обходить автопатчер - черевато, пропустишь патч - пошлёшь неверный пакет - вылетишь в бан.
Добавлено спустя 1 минуту 40 секунд:
Да и обойти автопатчер не проще чем вскрыть способ шифрования логин пакета.
Re: Oldraggame.ru
Скажите пожалуйста, а ключ шифровки меняется или он всегда одинаковый?
Re: Oldraggame.ru
Как он захочет - так сменит, нужно вскрыть алгоритм. А не каждый раз по новой голову ломать.
-
- Начинающий
- Сообщения: 19
- Зарегистрирован: Чт апр 17, 2008 7:22 am
Re: Oldraggame.ru
У меня на логине всегда один и тот же пакет отправляется.autobuy писал(а):Скажите пожалуйста, а ключ шифровки меняется или он всегда одинаковый?
Можно просто для каждого чара бота делать отдельный сервертайп0.пм и все, все решено, только чо там редактировать то нужно, может кто напишет?
Re: Oldraggame.ru
Судя по форумам, уже достаточно много людей обошло "второй уровень защиты", поэтому пора совершить небольшое пожертвование. Ниженаписанное актуально для Win8 x64 и свежей опенкоры (r8420). Если у вас что-то не заработает, прошу в личку вопросы не задавать, лучше в этой теме.
Изначальный сетап:
1) В tables\servers.txt добавляем новую запись:
2) В tables создаём новый каталог oldraggame, куда помещаем желаемые таблицы, которые будут уникальными для нашего сервера. Я сделал копию с папки Old.
3) Получаем файл recvpackets.txt из ragexe.exe. Способы можно найти на сайте. Например, тут
4) Запихиваем полученный recvpackets.txt в недавно создзанный каталог tables\oldraggame
Почему не serverType ServerType0:
1) в xKore 1 могут появляться ошибки $char must be defined - это из-за того, что приходят "неформатные" AccountID сообщения, которые ломают ожидаемую последовательность сообщений, а именно - не разбирается сообщение map_loaded, из-за чего не устанавливается переменная $char.
2) Для работы xKore 0 нужно переделывать посылку master_login сообщения, т.к. с вводом "второго этапа защиты" оно стало зашифровано.
Создаём новый serverType:
Каждый новый serverType определяется с помощью двух файлов: src\Network\Receive\<serverType>.pm и src\Network\Send\<serverType>pm, где первый - занимается допиливанием обработчиков полученных сообщений, а второй - соответственно допиливанием методов, которые посылают сообщения на сервер.
Соответственно, в нашем случае нужно сделать два файла:
src\Network\Receive\oldraggame.pm
В обработчиках входящих сообщений будем лечить ошибку $char must be defined следующим образом - нам надо указать следующую команду
ровно перед тем, как придёт неизвестное сообщение (см логи бота). Почему именно в обработчиках входящих сообщений? Потому что в xKore 1 бот не посылает ни одного сообщения до того, как подсоединится к мапсерверу, а эти ошибки выскакивают раньше. Путь решения - ищем по логам консоли последние полученные сообщения перед неизвестными. В обработчиках этих сообщений добавляем в конец вышеописанную команду. В нашем случае, нужно добавить эту команду в концы обработчиков сообщений account_server_info и received_character_ID_and_Map
Итого, файл будет выглядеть примерно так. Не гарантирую, что это лучшее решение, т.к. я новичок в перле и в опенкоре, но вроде выглядит нормально и работает:
Далее, создаём файл
src\Network\Send\oldraggame.pm
в котором будем писать новый метод посылки мастер логин пакета:
Далее, нужно с помощью WPE или Wireshark поймать мастер логин пакет (тот, который XBATuT 6OTuTb), который посылает ваш ragexe.exe для вашего аккаунта и собственно впихнуть его $msg. Как его поймать - см гайды. Минус этого подхода - для каждого нового аккаунта придётся создавать новый сервертайп.
Либо, если чуть-чуть подучить перл, можно добавить условие на $username, в зависимости от которого будут посылаться различные пакеты - тогда можно обойтись одним сервертайпом.
Либо, если у вас есть время - вы можете поймать пару сотен сообщений master_login, потратить пару часов и расшифровать алгоритм, которым кодируется мастер логин пакет. У меня получилось. Кодом поделюсь с теми, кто поделится рабочими для олдраггейма конфигами типа "поставил новиса, пошёл спать, получил второпрофника". Подсказка: пакет состоит из 3 частей: статической, закодированный самый обычный мастер логин пакет, хэш.
Внимание! Защита возможно достаточно серьезная, но из-за того что это ещё пока что "второй уровень защиты", похоже, она не функционирует в полную силу. "Третий уровень защиты" по обещаниям Splatt-а должен раздавать автобаны ботам. И, вполне возможно, статистика собирается уже сейчас. Используйте на свой страх и риск.
UPD: Обещания автобана не нашёл. Но, по-моему, с существующей технологией шифрации пакетов, это сделать не сложно.
UPD2: пруф
Изначальный сетап:
1) В tables\servers.txt добавляем новую запись:
Код: Выделить всё
# http://oldraggame.ru
[OldRaggame]
ip 5.9.111.72
port 6800
master_version 25
version 20
serverType oldraggame
serverEncoding Russian
charBlockSize 106
chatLangCode 1
addTableFolders oldraggame
3) Получаем файл recvpackets.txt из ragexe.exe. Способы можно найти на сайте. Например, тут
4) Запихиваем полученный recvpackets.txt в недавно создзанный каталог tables\oldraggame
Почему не serverType ServerType0:
1) в xKore 1 могут появляться ошибки $char must be defined - это из-за того, что приходят "неформатные" AccountID сообщения, которые ломают ожидаемую последовательность сообщений, а именно - не разбирается сообщение map_loaded, из-за чего не устанавливается переменная $char.
2) Для работы xKore 0 нужно переделывать посылку master_login сообщения, т.к. с вводом "второго этапа защиты" оно стало зашифровано.
Создаём новый serverType:
Каждый новый serverType определяется с помощью двух файлов: src\Network\Receive\<serverType>.pm и src\Network\Send\<serverType>pm, где первый - занимается допиливанием обработчиков полученных сообщений, а второй - соответственно допиливанием методов, которые посылают сообщения на сервер.
Соответственно, в нашем случае нужно сделать два файла:
src\Network\Receive\oldraggame.pm
В обработчиках входящих сообщений будем лечить ошибку $char must be defined следующим образом - нам надо указать следующую команду
Код: Выделить всё
$incomingMessages->nextMessageMightBeAccountID();
ровно перед тем, как придёт неизвестное сообщение (см логи бота). Почему именно в обработчиках входящих сообщений? Потому что в xKore 1 бот не посылает ни одного сообщения до того, как подсоединится к мапсерверу, а эти ошибки выскакивают раньше. Путь решения - ищем по логам консоли последние полученные сообщения перед неизвестными. В обработчиках этих сообщений добавляем в конец вышеописанную команду. В нашем случае, нужно добавить эту команду в концы обработчиков сообщений account_server_info и received_character_ID_and_Map
Итого, файл будет выглядеть примерно так. Не гарантирую, что это лучшее решение, т.к. я новичок в перле и в опенкоре, но вроде выглядит нормально и работает:
Код: Выделить всё
# oldraggame
package Network::Receive::oldraggame;
use strict;
use base 'Network::Receive::ServerType0';
use Globals qw($incomingMessages);
sub new {
my ($class) = @_;
my $self = $class->SUPER::new(@_);
return $self;
}
sub account_server_info {
# Account_server_info is last received message before char server connection
my ($self) = shift;
$self->SUPER::account_server_info(@_);
# So after receiving account_server_info we must prepare for AccountID message
$incomingMessages->nextMessageMightBeAccountID();
}
sub received_character_ID_and_Map {
# Received_character_ID_and_Map is last received message before map server connection
my ($self) = shift;
$self->SUPER::received_character_ID_and_Map(@_);
# So after receiving received_character_ID_and_Map we must prepare for AccountID message
$incomingMessages->nextMessageMightBeAccountID();
}
1;
src\Network\Send\oldraggame.pm
в котором будем писать новый метод посылки мастер логин пакета:
Код: Выделить всё
# oldraggame
package Network::Send::oldraggame;
use strict;
use base 'Network::Send::ServerType0';
use Log qw(debug);
sub new {
my ($class) = @_;
my $self = $class->SUPER::new(@_);
return $self;
}
sub sendMasterLogin {
my ($self, $username, $password, $master_version, $version) = @_;
my $msg= "XBATuT 6OTuTb, 6JlEATb! 4epT 3ae6aJk noDcKa3blBaTb, nycTb WKoJlbHuKu CaMu DyMAyuT CBoEu roJloBoU!".
pack( "C*", 0x00, 0x00, 0x29, 0x44, 0x55 ).
pack( "C*", 0x12, 0x34, 0x56, 0x78 );
$self->sendToServer($msg);
debug "Sent sendMasterLogin\n", "sendPacket", 2;
}
1;
Либо, если чуть-чуть подучить перл, можно добавить условие на $username, в зависимости от которого будут посылаться различные пакеты - тогда можно обойтись одним сервертайпом.
Либо, если у вас есть время - вы можете поймать пару сотен сообщений master_login, потратить пару часов и расшифровать алгоритм, которым кодируется мастер логин пакет. У меня получилось. Кодом поделюсь с теми, кто поделится рабочими для олдраггейма конфигами типа "поставил новиса, пошёл спать, получил второпрофника". Подсказка: пакет состоит из 3 частей: статической, закодированный самый обычный мастер логин пакет, хэш.
Внимание! Защита возможно достаточно серьезная, но из-за того что это ещё пока что "второй уровень защиты", похоже, она не функционирует в полную силу. "Третий уровень защиты" по обещаниям Splatt-а должен раздавать автобаны ботам. И, вполне возможно, статистика собирается уже сейчас. Используйте на свой страх и риск.
UPD: Обещания автобана не нашёл. Но, по-моему, с существующей технологией шифрации пакетов, это сделать не сложно.
UPD2: пруф
Последний раз редактировалось Somebody Пт мар 15, 2013 5:43 pm, всего редактировалось 4 раза.
Re: Oldraggame.ru
CСпасиб тебе огромное. Но теперь такой вой встанет на форуме сервера)))
Re: Oldraggame.ru
Я думаю, сплат просто введёт третий уровень защиты, над которым придётся долбиться ещё дольше. Потому что то, что есть сейчас, шифрует только один пакет, который на серверной стороне даже полностью не проверяется.
А насчет воя на форуме - я так понял, что те, кому ну очень надо было бота, уже получили. Мой пост только поможет остальным. А самые ленивые даже не смогут изменить код так, чтобы отсылал нужный им логин пакет. По-моему, всё честно.
А насчет воя на форуме - я так понял, что те, кому ну очень надо было бота, уже получили. Мой пост только поможет остальным. А самые ленивые даже не смогут изменить код так, чтобы отсылал нужный им логин пакет. По-моему, всё честно.