Столкнулся с аналогичной проблемой...
Вообщем история была такова, сначало на сервере стояла просто защита ЛС от ботов, l2.exe был невидим, стояли последние верси ГГ итд итп, но вообщем это все более или менее обходилось, можно было юзать бота, phx итд итп
Однако в один день это пофиксили проведя тех работы на сервере и соответственно заменив в патче файл npkcrypt
После этого пакеты стали приходить зашифрованными
Бот начал выдавать сообщение аля
PacketProcessError [F9][00]
ну дак вот вообщем считаю корнем сего зла файл npkcrypt
ЗЫ Правильно ли я считаю ?
Согласен, просто наглядно показал как оно выглядит. Если говорит о моем сервере, то в этом месте:
00444B93 FF51 64 CALL DWORD PTR DS:[ECX+64]
у меня идет прыжок в функцию отправки, в которой перед вызовом Send
добавлен неродной для клиента длл кой прыжок в нее, где происходит шифрование пакета.
на твоем сервере стоит защита l2guard. Вызов же конкретно функции чуть дальше в engine.dll : 004534B8 JMP l2guard.0F846680. опять же send по другому адресу: 004534C9 CALL DWORD PTR DS:[<&WSOCK32.#19>]
в ida очень наглядно на графах показывает этот самый алгоритм шифрования
на твоем сервере стоит защита l2guard. Вызов же конкретно функции чуть дальше в engine.dll : 004534B8 JMP l2guard.0F846680. опять же send по другому адресу: 004534C9 CALL DWORD PTR DS:[<&WSOCK32.#19>]
в ida очень наглядно на графах показывает этот самый алгоритм шифрования
Извините за оффтоп.
Но если защита основанна на шифрации пакетов логин сервера, то не проще ли сделать фейк логин и спокойно продолжать юзать бота?
Шифрован трафик ГЕЙМ серва)
Добавлено через 2 минуты
Цитата:
Сообщение от qai
Столкнулся с аналогичной проблемой...
Вообщем история была такова, сначало на сервере стояла просто защита ЛС от ботов, l2.exe был невидим, стояли последние верси ГГ итд итп, но вообщем это все более или менее обходилось, можно было юзать бота, phx итд итп
Однако в один день это пофиксили проведя тех работы на сервере и соответственно заменив в патче файл npkcrypt
После этого пакеты стали приходить зашифрованными
Бот начал выдавать сообщение аля
PacketProcessError [F9][00]
ну дак вот вообщем считаю корнем сего зла файл npkcrypt
ЗЫ Правильно ли я считаю ?
Мож быть, чтобы наверняка просто напросто сравни файлы двух клиентов по содержимому, обращая внимание только на .ехе и .длл
Добавлено через 2 минуты
Цитата:
Сообщение от MHz
Пожалуйста, просветите ленивого нуба, как помешать Фемиде находить Олли, а то вот что выходит у меня
К сожалению никто не посчитал нужным мне помочь. Ну и ладно! Сам справился.
1. Загружаем клиент линейки, он нам показывает окно регистрации.
2. Запускаем Олю.
3. Запускаем в Оле пнх
4. Коннектимся чаром к серваку
5. Ставим бряки на методах TXorCoding.EncryptGP - изучаем шифрацию серверного трафика и TXorCodingOut.DecryptGP - изучаем шифрацию клиентского трафика.
К сожалению никто не посчитал нужным мне помочь. Ну и ладно! Сам справился.
1. Загружаем клиент линейки, он нам показывает окно регистрации.
2. Запускаем Олю.
3. Запускаем в Оле пнх
4. Коннектимся чаром к серваку
5. Ставим бряки на методах TXorCoding.EncryptGP - изучаем шифрацию серверного трафика и TXorCodingOut.DecryptGP - изучаем шифрацию клиентского трафика.
Сори, за позний ответ, но в предыдущих моих постах это было описано.
Собственно, аттач в работающий процесс с хайддебагером.
К сожалению никто не посчитал нужным мне помочь. Ну и ладно! Сам справился.
1. Загружаем клиент линейки, он нам показывает окно регистрации.
2. Запускаем Олю.
3. Запускаем в Оле пнх
4. Коннектимся чаром к серваку
5. Ставим бряки на методах TXorCoding.EncryptGP - изучаем шифрацию серверного трафика и TXorCodingOut.DecryptGP - изучаем шифрацию клиентского трафика.
А разве это не будет анализ не л2 а л2рнх обработки??
А разве это не будет анализ не л2 а л2рнх обработки??
Меня в сейчас интересует шифрация серверного трафика, по-моему самый быстрый способ попасть туда, это из TXorCoding.EncryptGP потому что клиент получает данные от сервера через нее.
Чтобы анализировать работу newxor.dll достаточно встроенного отладчика в Delphi
P.S. Прошу прощения за косноязычие
P.P.S Таки удалось скомпилить все в 7-м Дельфи (у меня другого нет). Бряки надо ставить где-то в PacketProcessor Более детально сейчас выясняю где.
Добавлено через 1 час 42 минуты
Цитата:
Сообщение от MHz
xkor - как ты догадался, что надо перехватывать API вызов connect? Как можно догадаться какими функциями посылаются и принимаются пакеты? Это send и recv или другие?
Цитата:
Сообщение от Breadfun
А разве это не будет анализ не л2 а л2рнх обработки
Подебагал я l2phx в Delphi. Он сам во-всю юзает send и recv. Ты пожалуй прав. Через TXorCoding.EncryptGP далековато будет добираться до кода шифрования клиента, сейчас ищу место по-ближе
Последний раз редактировалось MHz, 19.07.2008 в 23:36.
Причина: Добавлено сообщение
Наверно глупый вопрос...
Дан шифрованный пакет и точно известно что это за пакет и алгоритм шифрования (стандартный для С4), как определить ключ шифрования?
в теме была утилита которая расшифровывала пакет, а нет (нельзя сделать) для нахождения ключа шифрования?