Туториал: как крякать скрипты луа?

Frozyy

Mercury.lua <3
Registered
Регистрация
1 Авг 2022
Сообщения
87
Перейдя в наш телеграмм канал вы сможете научится крякать различные луа скрипты

Пример:

Tutorial №2: Отключение вызовов функций [ CALL ] | LuaJIT 2.0 / 2.1

Добрый день.
Сегодня разберем как можно отключать функции в луа скриптах через тот-же HEX.
Проще некуда
Исходный код примерно такой:

local function is_license(nick)
http.get('link', response)
if nick == response then -- относительный пример
print('welcome back!')
else
print('u dont have license')
unload_script()
end
end
is_license(get_nick())

1. Повторю еще раз, что нам понадобится - https://disk.yandex.com/d/XBYT5Rn5ymS2oA , скачиваем, распаковываем, закидываем файл с луаджитом (бинарный) на compile.bat, получаем asm.
2. Далее запоминаем:
Чтобы отключить функцию, мы должны убрать ее вызов.
CALL - вызов - HEX: 3E (в luajit 2.1 - 42)

В asm выглядит так:
00000036 | 0028 3E: (CALL ) 1 1 2

Прошу заметить, что этот вызов придется искать, ведь у нас еще есть вызовы [unload_script(), get_nick() ...]

Видим два CALL, CALLM, патчить нужно оба.
Второй CALLM вызывает саму is_license(), заменяем на hexed.it на 54 00 00 00 (luajit 2.0) 58 00 00 80 (luajit 2.1), ищем опкод по офсету.


by mercury staff
 
попробовал крякнуть свит луа, не получилось, пришлось идти в церковь и молиться.
Итог: ну пойдет
 
Назад
Сверху