• Я зарабатываю 100 000 RUB / месяц на этом сайте!

    А знаешь как? Я всего-лишь публикую (создаю темы), а админ мне платит. Трачу деньги на мороженое, робуксы и сервера в Minecraft. А ещё на паль из Китая. 

    Хочешь так же? Пиши и узнавай условия: https://t.me/alex_redact
    Реклама: https://t.me/yougame_official

Исходник Java Hooking

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
31 Май 2025
Сообщения
12
Реакции
0
Я не оригинальный автор проекта!
Наткнулся на него просто гуглив все возможные методы для хуков под джаву.

Как я понял либу можно использовать для любых программ/игр. Так что я думаю для Майнкрафта сойдёт 😈

Автор утверждает что это можно делать нативными способами из под Си. За минут 15 я склепал быстренько динамическую библиотеку под Майнкрафт для перехвата сообщений в чате - вроде все работает как надо.

гитхаб проекта:
Пожалуйста, авторизуйтесь для просмотра ссылки.

Пожалуйста, авторизуйтесь для просмотра ссылки.

это пример который я нашел со странички:
Expand Collapse Copy
JNIEXPORT jstring JNICALL readLine_hk(JNIEnv* env, jobject this) {
    jobject r;
    const char *r_s;

    // call the original and save its result
    CALL_ORIGINAL(readLine, {
      r = (*env)->CallObjectMethod(env, this, GET_HOOK_NAME_BY_IDX(readLine));
    });

    if(r == NULL) return r;

    r_s = (*env)->GetStringUTFChars(env, r, 0);
    jhook_logger_log(__func__,"readLine: %s", r_s);
    return r;
}
 
конечно же мы не будем думать о таких простых вещах, типа что-то вроде если версия джавы будет другой, отличающиеся от той, на которой работают эти хуки, не говоря уже о том что джава может быть изменена, ребилднута (как хотите это называйте): в кое-каком одном макросе прописать просто 0 а не 1 и вся эта конструкция упадет, ну или добавить ЭТО КОЕ-ЧТО прямо в строку с аргументами для компилирования жвм

в целом репозиторий неплохой, но только если автор клиента средний такой чел с югейма, который не знает никаких больше разделов кроме как раздел с майнкрафтом, то вполне думаю сработает, но если это реально так, то для чего тогда это нужно, если там не то что хуки можно сделать, так вообще загрузить свои классы спокойно, например?
 
Последнее редактирование:
конечно же мы не будем думать о таких простых вещах, типа что-то вроде если версия джавы будет другой, отличающиеся от той, на которой работают эти хуки, не говоря уже о том что джава может быть изменена, ребилднута (как хотите это называйте): в кое-каком одном макросе прописать просто 0 а не 1 и вся эта конструкция упадет, ну или добавить ЭТО КОЕ-ЧТО прямо в строку с аргументами для компилирования жвм

в целом репозиторий неплохой, но только если автор клиента средний такой чел с югейма, который не знает никаких больше разделов кроме как раздел с майнкрафтом, то вполне думаю сработает, но если это реально так, то для чего тогда это нужно, если там не то что хуки можно сделать, так вообще загрузить свои классы спокойно, например?
Проект не мой, но тут ты жёсткую базу выдал.
Кстати, а ты на винде смог проект завести?
 
А зачем собсна?
#include <jvmti.h> :facepalm:
 
Так у него же в репозитории написано про это
суть в том что, любые челы которые увидят это ничего не поймут и просто возьмут c+p код ничего не читая, а челы которые явно шарят в этом они и без этого репозитория эти хуки напишут
 
суть в том что, любые челы которые увидят это ничего не поймут и просто возьмут c+p код ничего не читая, а челы которые явно шарят в этом они и без этого репозитория эти хуки напишут
С позицией согласен. Однако я все ещё питаю надежды что не все подряд будут пастить. Из всего что я смог найти в открытом доступе это jnihook и ещё парочку библиотек, однако там нет возможности напрямую хукать методы из классов java.* Ибо в жвм вылетать будет ошибка. Если нужны пруфы, могу закинуть.
 
С позицией согласен. Однако я все ещё питаю надежды что не все подряд будут пастить. Из всего что я смог найти в открытом доступе это jnihook и ещё парочку библиотек, однако там нет возможности напрямую хукать методы из классов java.* Ибо в жвм вылетать будет ошибка. Если нужны пруфы, могу закинуть.
Опять же не понятно нахуя это нужно, если в реверсе от этого импакта 0. Щас у каждого дегенерата jvmti при билде отключен.
Щас приведу аналогию чтобы было понятно. Вот нам пришла идея написать Инстанс Класс Бампер. Идея сама по себе заебись! Вот мы взяли узнали смещения все. Нашли класс лоудер дата графф, там нашли класс лоудер дата, там получили метаспейс, и еще один шаг который останется в тайне, чтобы у каждого децла не было такой штуки. И вместо того чтобы использовать всю информацию из инстанса класса чтобы потихоньку полегоньку восстанавливать Класс Файл формат. Мы берем берем и получаем указатель на JVMTIChachedClassFileData, я думаю посыл все поняли :facepalm: .
 
Последнее редактирование:
Опять же не понятно нахуя это нужно, если в реверсе от этого импакта 0. Щас у каждого дегенерата jvmti при билде отключен.
Щас приведу аналогию чтобы было понятно. Вот нам пришла идея написать Инстанс Класс Бампер. Идея сама по себе заебись! Вот мы взяли узнали смещения все. Нашли класс лоудер дата графф, там нашли класс лоудер дата, там получили метаспейс, и еще один шаг который останется в тайне, чтобы у каждого децла не было такой штуки. И вместо того чтобы использовать всю информацию из инстанса класса чтобы потихоньку полегоньку восстанавливать Класс Файл формат. Мы берем берем и получаем указатель на JVMTIChachedClassFileData, я думаю посыл все поняли :facepalm: .
Ты кажется не понял зачем эта библиотека нужна. У меня в посте и у автора в репе нет упоминаний связанных с реверсом
 
Ты кажется не понял зачем эта библиотека нужна. У меня в посте и у автора в репе нет упоминаний связанных с реверсом
Так, просвяти-ка для чего еще нужно хукать Java функции? Для зощиты чтоле?
Пожалуйста, авторизуйтесь для просмотра ссылки.
(no ad) Вот типо нормальная реализация подобной идеи.
 
Так, просвяти-ка для чего еще нужно хукать Java функции? Для зощиты чтоле?
Пожалуйста, авторизуйтесь для просмотра ссылки.
(no ad) Вот типо нормальная реализация подобной идеи.
ну например у каждого "дегенерата", как ты сказал классы шифруются ну или есть какие-нибудь подписи, в общем загрузить класс свой не варик, ток если ты не ебейший реверсер, который имеет готовую тулзу, которая деобфусцирует виртуализированный код, тогда да - хуки нахуй не нужны, но, есть дохуя читов на разные проекты, которые сделаны не через классы, а через жни (причина понятна), вот поэтому хуки и нужны, чтобы например получить пакеты (да-да, ебаный хук на send/recv из сокетов, а потом берешь и вызываешь джава метод на тот самый случай если там они шифруются)
 
ну например у каждого "дегенерата", как ты сказал классы шифруются ну или есть какие-нибудь подписи, в общем загрузить класс свой не варик, ток если ты не ебейший реверсер, который имеет готовую тулзу, которая деобфусцирует виртуализированный код, тогда да - хуки нахуй не нужны, но, есть дохуя читов на разные проекты, которые сделаны не через классы, а через жни (причина понятна), вот поэтому хуки и нужны, чтобы например получить пакеты (да-да, ебаный хук на send/recv из сокетов, а потом берешь и вызываешь джава метод на тот самый случай если там они шифруются)
Блять, вот же кубические, как вы плохо формулируете свои мысли, я хуею. То что ты имел ввиду я понял лишь с 5 прочтения, когда уже почти дописал комментарий с текстом - "Типа, че сказал ваще сам-то понял?". А касательно твоего тейка про читы на лаунчеры, то как это отменяет мой предикат о том что у каждого дауна jvmti отключен. Щас у каждого лаунчера кастом JVM, держу в курсе.
 
Блять, вот же кубические, как вы плохо формулируете свои мысли, я хуею. То что ты имел ввиду я понял лишь с 5 прочтения, когда уже почти дописал комментарий с текстом - "Типа, че сказал ваще сам-то понял?". А касательно твоего тейка про читы на лаунчеры, то как это отменяет мой предикат о том что у каждого дауна jvmti отключен. Щас у каждого лаунчера кастом JVM, держу в курсе.
не понимаю почему ты на личности переходишь, но знаешь, если хочешь выразить недовольство своему собеседнику то напиши это вежливо. я понимаю всех раздражает раздел по майнкрафту и посты в виде просьбы помочь написать функцию какую-либо на базе экспы, но всё же. ты условно можешь зайти в профиль чела, увидеть что он никак не связан с каким-то подобным дерьмом и перестать вымещать злость на людях. я надеюсь с этим разобрались.

вообще, можешь и дальше держать в курсе этой информации, но, это реально как-то по глупому считать, что если вот проект стоит на каком-то лаунчере, то значит у них обязательно кастом жвм.

немного скопирую твой стиль речи, я надеюсь ты не против.
ДЕРЖУ В КУРСЕ, что модовые сервера (большинство из них) не имеют кастом жвм.
 
не понимаю почему ты на личности переходишь, но знаешь, если хочешь выразить недовольство своему собеседнику то напиши это вежливо, я понимаю всех раздражает раздел по майнкрафту и посты в виде просьбы помочь написать функцию какую-либо на базе экспы, но всё же, ты условно можешь зайти в профиль чела, увидеть что он никак не связан с каким-то подобным дерьмом и перестать вымещать злость на людях. я надеюсь с этим разобрались.

вообще, можешь и дальше держать в курсе этой информации, но, это реально как-то по глупому считать, что если вот проект стоит на каком-то лаунчере, то значит у них обязательно кастом жвм. немного скопирую твой стиль речи, я надеюсь ты не против, ДЕРЖУ В КУРСЕ, что модовые сервера (большинство из них) не имеют кастом жвм.
Примеры в студию, щас вангую Экскалибур будет)
 
Так, просвяти-ка для чего еще нужно хукать Java функции? Для зощиты чтоле?
Пожалуйста, авторизуйтесь для просмотра ссылки.
(no ad) Вот типо нормальная реализация подобной идеи.
ну в контексте майнкрафта можно использовать i2i & i2c хуки если ты софт нативный пишешь, как варик захукать ивенты
 
Примеры в студию, щас вангую Экскалибур будет)
я даже с этим проектом не знаком. как минимум я заходил на гравитикрафт, на лолиленд и на лавакрафт, а также на ещё несколько серверов (названия их, к сожалению, я не запомнил, поскольку меня они не заинтересовали в виду своего онлайна, а также очень похожего геймплея), возможно сейчас у них кастом жвм стоит, но я делал чит год назад для себя ради опытов и там не было такого.
 
ну в контексте майнкрафта можно использовать i2i & i2c хуки если ты софт нативный пишешь, как варик захукать ивенты
Бодя, ты брат?
я даже с этим проектом не знаком. как минимум я заходил на гравитикрафт и на лолиленд, а также на ещё несколько серверов (названия их, к сожалению, я не запомнил, поскольку меня они не заинтересовали в виду своего онлайна, а также очень похожего геймплея), возможно сейчас у них кастом жвм стоит, но я делал чит год назад для себя ради опытов и там не было такого.
Чувак, вот у меня вопрос назрел, а тебе лет-то сколько?
Бодя, ты брат?

Чувак, вот у меня вопрос назрел, а тебе лет-то сколько?
Вот просто я реально не пойму, тебе либо лет не много или я хз. Ну ты правда очень странно формулируешь мысли.
 
Чувак, вот у меня вопрос назрел, а тебе лет-то сколько?
какое это отношение имеет к нашей беседе? хотя это и беседой то не назвать, потому-что по твоему стилю общения видно, что ты посмотрел исходники жвм, узнал много чего и от этого у тебя чсв повысилось, ибо поверь мне, я не раз видел, что челы начинали общаться так, будто они цари этого мира, хотя что с вас взять, вы просто имеете чуть выше среднего айкью, что позволило вам изучить исходники, а также ИХ НАЙТИ на гитхабе, вот и всё. позор да и смех только
 
Последнее редактирование:
Назад
Сверху Снизу