L2PacketHackФорум программы L2PacketHack, всё что с ней связано находится тут.
Правила раздела!
Категорически запрещено:
* Просить пакеты/скрипты на шмот/адену/другие вещи;
* Просить (помочь) взломать/сломать сервак/аккаунт или раздеть/наказать кого-то на любом серваке;
* Просить научить работать с программой, если не понимаете элементарных вещей в отношениях клиент-сервер (так как, если вы их понимаете, то вопросов по основным возможностям программы быть недолжно);
* Все посты не удовлетворяющие этим запретам, а так же не относящиеся к теме будут удаляться при первой возможности.
* Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы.
* Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
* Данные запреты неподлежат обсуждению.
Здравствуйте. Пришлось пилить newxor.dll под один сервер, алгоритм шифрации в общем уже понятен.
Суть проблемы:
1. Сделал все по мануалу - создал проект dll, закинул в него newxor.lpr и coding.pas. Библиотека компилится, но пакетхак ее не цепляет, даже если исходники не менять. Может ли это быть из-за того, что компиляция не в Delphi, а в Lazarus IDE? (с установкой делфи проблемы)
2. Шифрация сервера использует второй xor-ключ, который прилетает в том же пакете KeyInit, но расположен в конце пакета. При этом функция InitKey, по-видимому, принимает не пакет Init целиком, а лишь выдранные из него 8-байт ключа. Как мне получить доступ из функции к содержимому всего пакета?
1. Зависит от экспортируемых функций, если механизм делали грамотно, то можно компилить хоть в Лазарусе, хоть на с++ писать. Но нет гарантий, что ты сам не косячишь в лазарусе.
PS. Фразы "алгоритм шифрации в общем уже понятен" и "по-видимому, принимает" плохо между собой уживаются.
С компиляцией разобрался, поставил делфи и взял готовый проект newxor из исходников.
Касаемо фраз - я написал сторонний скрипт на питоне, который перехватывает трафик при помощи scapy, реализовал под него стандартные функции newxor (траффик начал выглядеть нормально при подключении к серверу без шифрации), а потом дописал дешифровку конкретно под целевой сервер - и на нем тоже начал видеть ожидаемые пакеты. Но консольный скрипт на питоне - одно, а пакетхак - совсем другое)
Меня смущает то, что InitKey newxor.dll принимает, похоже, только первые 8 байт пакета с ключом. Этого достаточно для стандартной шифрации, но не для целевого сервера.
Сейчас пробую извлекать нужные мне данные из пакета KeyInit прямо в функции дешифрации (если первый байт пакета = 0, то...).
Добавлено через 13 часов 23 минуты
Все, разобрался с ситуацией, newxor.dll заработал.
Почитал исходники, в метод InitKey передаются не первые 8 байт, а все байты пакета KeyInit кроме первых двух.
Последний раз редактировалось pAladdin, 23.02.2020 в 17:29.
Причина: Добавлено сообщение
Здравствуйте. Пришлось пилить newxor.dll под один сервер, алгоритм шифрации в общем уже понятен.
Суть проблемы:
1. Сделал все по мануалу - создал проект dll, закинул в него newxor.lpr и coding.pas. Библиотека компилится, но пакетхак ее не цепляет, даже если исходники не менять. Может ли это быть из-за того, что компиляция не в Delphi, а в Lazarus IDE? (с установкой делфи проблемы)
2. Шифрация сервера использует второй xor-ключ, который прилетает в том же пакете KeyInit, но расположен в конце пакета. При этом функция InitKey, по-видимому, принимает не пакет Init целиком, а лишь выдранные из него 8-байт ключа. Как мне получить доступ из функции к содержимому всего пакета?
А что за мануал такой? Может подскажете, где взять сейчас актуальный исходный код newxor.dll?