Гайд Гайд как сделать свою защиту для чита

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
14 Окт 2024
Сообщения
25
Реакции
5

Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:

  • бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
  • маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
  • приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
  • обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.

Спасибо!

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

1. Класс-файл парсер (ClassFileParser)
Суть: Чтобы усложнить анализ твоего говна .jar/.class.
Изменить структуру .class-файлов (например, поменять порядок констант в пуле).
Добавить мусорные байты, чтобы декомпиляторы (например, CFR, FernFlower) ломались.

Пример как поднасрать пастерам:

Java:
Expand Collapse Copy
// Вместо нормального класса:
public class Main {
    public static void enable() { ... }
}

// Создаёшь битый class-файл с лишними байтами:
CA FE BA BE 00 00 00 34 ← стандартный заголовок 
00 00 00 FF FF FF FF ← мусорные данные (декомпилятор ломается)

2. Класс-файл стрим (ClassFileStream)
Суть: Чтобы затруднить загрузку всякой хуйни в память JVM (если кто-то попытается проанализировать в runtime).
Шифровать .class-файлы и расшифровывать их только перед загрузкой.
Использовать кастомный ClassLoader, который проверяет хеш перед загрузкой.

Пример:
Java:
Expand Collapse Copy
public class CustomClassLoader extends ClassLoader {
    @Override
    protected Class<?> findClass(String name) {
        byte[] encrypted = loadEncryptedClass(name);
        byte[] decrypted = decrypt(encrypted, SECRET_KEY);
        return defineClass(name, decrypted, 0, decrypted.length);
    }
}


3. Вырезать jvmti (JVM Tool Interface)
Чтобы запретить отладку (читеры не смогут подключиться к JVM через jdb, JVMTI или ASM).
Собрать кастомную JVM без поддержки jvmti.dll.
Патчить libjvm.so, чтобы он игнорировал запросы отладчика.

Эффект:

jstack, jmap не смогут получить дампы памяти.

Код сложнее анализировать в runtime.

4. Менять сдвиги таблицы JNI (Java Native Interface)
Суть: Чтобы замести следы нативных вызовов (если твой чит использует JNI).
Перемешать JNIEnv-таблицу (чтобы реверсеры не могли найти CallStaticVoidMethod и т.д.).
Динамически вычислять оффсеты функций (а не страдать хуйней).

Пример:
Java:
Expand Collapse Copy
// Вместо:
(*env)->CallStaticVoidMethod(env, cls, mid);

// Делаешь:
void* jniFunc = (void*)((uintptr_t)env + RANDOM_OFFSET);
((JNICALL)jniFunc)(env, cls, mid); // Обычный пастер не поймет что это вызов.



5. Скриптить константы отдельно
Суть: Чтобы запутать сигнатуры (строки, числа, хеши), которые реверсеры ищут в бинарнике.


Разбивать строки:

Java:
Expand Collapse Copy
// Вместо:
String key = "SECRET_CHEAT_KEY";

// Делаешь:
String key = "SEC" + "RET" + "_CH" + "EAT" + "_KE" + "Y";
Динамически генерировать важные значения (например, XOR-шифрование строк).


6. Сменить структуру InstanceClass
Суть: Чтобы нассать в памяти и сломать декомпиляторы (например, jd gui).
Патчить HotSpot JVM, чтобы она меняла порядок полей в рантайме.
Добавлять fake-поля в классы.

Эффект:

Dump памяти будет выглядеть как мусор.

Рефлексия (getDeclaredFields) вернёт бессмысленные данные.

7. Нативная защита
Суть: Усложнить реверс (анализировать нативный код сложнее, чем Java).
Скрыть критическую логику (например, критически важных классов чтобы не вьебали как дусю ебаную).
Обфусцировать нативный код (OLLVM, Tigress).

Анти-отладка:

Детект Cheat Engine / x64dbg например по хешу иконок.

8. Крипта (кфс/кфп)

кфс (Key-Flow Crypt)
Суть: Динамическое шифрование кода так, чтобы:
В памяти всегда лежала только расшифрованная часть, которая сейчас выполняется.
Остальное — зашифрованный мусор, который расшифровывается только перед исполнением.

Как делается:

Делим код на куски (например, по методам).
Каждый кусок шифруем AES-256 + свой ключ.
Перед вызовом метода — расшифровываем, выполняем, сразу затираем.

Java:
Expand Collapse Copy
// Пример псевдокода для кфс
void encryptedMethod() {
    byte[] encryptedCode = loadFromFile("method1.enc"); 
    byte[] code = decrypt(encryptedCode, dynamicKey); 
    executeInMemory(code);  // выполнить 
    Arrays.fill(code, 0);   // затереть 
}

Ключи генерируются в рантайме (например, из хеша системного времени).
Можно зашифровать даже строки (String → byte[] → XOR → мусор в декомпиляторе).

кфп (Key-Flow Packer)
Суть: Упаковка .class-файлов так, чтобы:
Dump памяти был бесполезен.
Декомпиляторы (JD-GUI, FernFlower) падали с ошибками.

Как делается:

Ломаем структуру .class-файла:
Меняем magic bytes (CA FE BA BE → DE AD BE EF).
Добавляем фейковые секции в константный пул.

Динамическая реконструкция:

При загрузке исправляем битый .class в памяти перед передачей в ClassLoader.

Java:
Expand Collapse Copy
// Пример: подмена magic bytes 
byte[] brokenClass = Files.readAllBytes("Main.class"); 
brokenClass[0] = 0xDE;  // CA → DE 
brokenClass[1] = 0xAD;  // FE → AD

CFR и другие декомпиляторы не понимают битые файлы.
Reflection тоже ломается — getDeclaredMethods() вернёт хуйню.

Шифровать .class-файлы (AES + кастомный загрузчик).
Динамическая расшифровка кода перед выполнением.

Вывод:

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

1. Класс-файл парсер (ClassFileParser)
Суть: Чтобы усложнить анализ твоего говна .jar/.class.
Изменить структуру .class-файлов (например, поменять порядок констант в пуле).
Добавить мусорные байты, чтобы декомпиляторы (например, CFR, FernFlower) ломались.

Пример как поднасрать пастерам:

Java:
Expand Collapse Copy
// Вместо нормального класса:
public class Main {
    public static void enable() { ... }
}

// Создаёшь битый class-файл с лишними байтами:
CA FE BA BE 00 00 00 34 ← стандартный заголовок
00 00 00 FF FF FF FF ← мусорные данные (декомпилятор ломается)

2. Класс-файл стрим (ClassFileStream)
Суть: Чтобы затруднить загрузку всякой хуйни в память JVM (если кто-то попытается проанализировать в runtime).
Шифровать .class-файлы и расшифровывать их только перед загрузкой.
Использовать кастомный ClassLoader, который проверяет хеш перед загрузкой.

Пример:
Java:
Expand Collapse Copy
public class CustomClassLoader extends ClassLoader {
    @Override
    protected Class<?> findClass(String name) {
        byte[] encrypted = loadEncryptedClass(name);
        byte[] decrypted = decrypt(encrypted, SECRET_KEY);
        return defineClass(name, decrypted, 0, decrypted.length);
    }
}


3. Вырезать jvmti (JVM Tool Interface)
Чтобы запретить отладку (читеры не смогут подключиться к JVM через jdb, JVMTI или ASM).
Собрать кастомную JVM без поддержки jvmti.dll.
Патчить libjvm.so, чтобы он игнорировал запросы отладчика.

Эффект:

jstack, jmap не смогут получить дампы памяти.

Код сложнее анализировать в runtime.

4. Менять сдвиги таблицы JNI (Java Native Interface)
Суть: Чтобы замести следы нативных вызовов (если твой чит использует JNI).
Перемешать JNIEnv-таблицу (чтобы реверсеры не могли найти CallStaticVoidMethod и т.д.).
Динамически вычислять оффсеты функций (а не страдать хуйней).

Пример:
Java:
Expand Collapse Copy
// Вместо:
(*env)->CallStaticVoidMethod(env, cls, mid);

// Делаешь:
void* jniFunc = (void*)((uintptr_t)env + RANDOM_OFFSET);
((JNICALL)jniFunc)(env, cls, mid); // Обычный пастер не поймет что это вызов.



5. Скриптить константы отдельно
Суть: Чтобы запутать сигнатуры (строки, числа, хеши), которые реверсеры ищут в бинарнике.


Разбивать строки:

Java:
Expand Collapse Copy
// Вместо:
String key = "SECRET_CHEAT_KEY";

// Делаешь:
String key = "SEC" + "RET" + "_CH" + "EAT" + "_KE" + "Y";
Динамически генерировать важные значения (например, XOR-шифрование строк).


6. Сменить структуру InstanceClass
Суть: Чтобы нассать в памяти и сломать декомпиляторы (например, jd gui).
Патчить HotSpot JVM, чтобы она меняла порядок полей в рантайме.
Добавлять fake-поля в классы.

Эффект:

Dump памяти будет выглядеть как мусор.

Рефлексия (getDeclaredFields) вернёт бессмысленные данные.

7. Нативная защита
Суть: Усложнить реверс (анализировать нативный код сложнее, чем Java).
Скрыть критическую логику (например, критически важных классов чтобы не вьебали как дусю ебаную).
Обфусцировать нативный код (OLLVM, Tigress).

Анти-отладка:

Детект Cheat Engine / x64dbg например по хешу иконок.

8. Крипта (кфс/кфп)

кфс (Key-Flow Crypt)
Суть: Динамическое шифрование кода так, чтобы:
В памяти всегда лежала только расшифрованная часть, которая сейчас выполняется.
Остальное — зашифрованный мусор, который расшифровывается только перед исполнением.

Как делается:

Делим код на куски (например, по методам).
Каждый кусок шифруем AES-256 + свой ключ.
Перед вызовом метода — расшифровываем, выполняем, сразу затираем.

Java:
Expand Collapse Copy
// Пример псевдокода для кфс
void encryptedMethod() {
    byte[] encryptedCode = loadFromFile("method1.enc");
    byte[] code = decrypt(encryptedCode, dynamicKey);
    executeInMemory(code);  // выполнить
    Arrays.fill(code, 0);   // затереть
}

Ключи генерируются в рантайме (например, из хеша системного времени).
Можно зашифровать даже строки (String → byte[] → XOR → мусор в декомпиляторе).

кфп (Key-Flow Packer)
Суть: Упаковка .class-файлов так, чтобы:
Dump памяти был бесполезен.
Декомпиляторы (JD-GUI, FernFlower) падали с ошибками.

Как делается:

Ломаем структуру .class-файла:
Меняем magic bytes (CA FE BA BE → DE AD BE EF).
Добавляем фейковые секции в константный пул.

Динамическая реконструкция:

При загрузке исправляем битый .class в памяти перед передачей в ClassLoader.

Java:
Expand Collapse Copy
// Пример: подмена magic bytes
byte[] brokenClass = Files.readAllBytes("Main.class");
brokenClass[0] = 0xDE;  // CA → DE
brokenClass[1] = 0xAD;  // FE → AD

CFR и другие декомпиляторы не понимают битые файлы.
Reflection тоже ломается — getDeclaredMethods() вернёт хуйню.

Шифровать .class-файлы (AES + кастомный загрузчик).
Динамическая расшифровка кода перед выполнением.

Вывод:

Если сделать кфс + кфп + нативку, реверсеру проще написать чит с нуля, чем разбирать этот фарши

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

1. Класс-файл парсер (ClassFileParser)
Суть: Чтобы усложнить анализ твоего говна .jar/.class.
Изменить структуру .class-файлов (например, поменять порядок констант в пуле).
Добавить мусорные байты, чтобы декомпиляторы (например, CFR, FernFlower) ломались.

Пример как поднасрать пастерам:

Java:
Expand Collapse Copy
// Вместо нормального класса:
public class Main {
    public static void enable() { ... }
}

// Создаёшь битый class-файл с лишними байтами:
CA FE BA BE 00 00 00 34 ← стандартный заголовок
00 00 00 FF FF FF FF ← мусорные данные (декомпилятор ломается)

2. Класс-файл стрим (ClassFileStream)
Суть: Чтобы затруднить загрузку всякой хуйни в память JVM (если кто-то попытается проанализировать в runtime).
Шифровать .class-файлы и расшифровывать их только перед загрузкой.
Использовать кастомный ClassLoader, который проверяет хеш перед загрузкой.

Пример:
Java:
Expand Collapse Copy
public class CustomClassLoader extends ClassLoader {
    @Override
    protected Class<?> findClass(String name) {
        byte[] encrypted = loadEncryptedClass(name);
        byte[] decrypted = decrypt(encrypted, SECRET_KEY);
        return defineClass(name, decrypted, 0, decrypted.length);
    }
}


3. Вырезать jvmti (JVM Tool Interface)
Чтобы запретить отладку (читеры не смогут подключиться к JVM через jdb, JVMTI или ASM).
Собрать кастомную JVM без поддержки jvmti.dll.
Патчить libjvm.so, чтобы он игнорировал запросы отладчика.

Эффект:

jstack, jmap не смогут получить дампы памяти.

Код сложнее анализировать в runtime.

4. Менять сдвиги таблицы JNI (Java Native Interface)
Суть: Чтобы замести следы нативных вызовов (если твой чит использует JNI).
Перемешать JNIEnv-таблицу (чтобы реверсеры не могли найти CallStaticVoidMethod и т.д.).
Динамически вычислять оффсеты функций (а не страдать хуйней).

Пример:
Java:
Expand Collapse Copy
// Вместо:
(*env)->CallStaticVoidMethod(env, cls, mid);

// Делаешь:
void* jniFunc = (void*)((uintptr_t)env + RANDOM_OFFSET);
((JNICALL)jniFunc)(env, cls, mid); // Обычный пастер не поймет что это вызов.



5. Скриптить константы отдельно
Суть: Чтобы запутать сигнатуры (строки, числа, хеши), которые реверсеры ищут в бинарнике.


Разбивать строки:

Java:
Expand Collapse Copy
// Вместо:
String key = "SECRET_CHEAT_KEY";

// Делаешь:
String key = "SEC" + "RET" + "_CH" + "EAT" + "_KE" + "Y";
Динамически генерировать важные значения (например, XOR-шифрование строк).


6. Сменить структуру InstanceClass
Суть: Чтобы нассать в памяти и сломать декомпиляторы (например, jd gui).
Патчить HotSpot JVM, чтобы она меняла порядок полей в рантайме.
Добавлять fake-поля в классы.

Эффект:

Dump памяти будет выглядеть как мусор.

Рефлексия (getDeclaredFields) вернёт бессмысленные данные.

7. Нативная защита
Суть: Усложнить реверс (анализировать нативный код сложнее, чем Java).
Скрыть критическую логику (например, критически важных классов чтобы не вьебали как дусю ебаную).
Обфусцировать нативный код (OLLVM, Tigress).

Анти-отладка:

Детект Cheat Engine / x64dbg например по хешу иконок.

8. Крипта (кфс/кфп)

кфс (Key-Flow Crypt)
Суть: Динамическое шифрование кода так, чтобы:
В памяти всегда лежала только расшифрованная часть, которая сейчас выполняется.
Остальное — зашифрованный мусор, который расшифровывается только перед исполнением.

Как делается:

Делим код на куски (например, по методам).
Каждый кусок шифруем AES-256 + свой ключ.
Перед вызовом метода — расшифровываем, выполняем, сразу затираем.

Java:
Expand Collapse Copy
// Пример псевдокода для кфс
void encryptedMethod() {
    byte[] encryptedCode = loadFromFile("method1.enc");
    byte[] code = decrypt(encryptedCode, dynamicKey);
    executeInMemory(code);  // выполнить
    Arrays.fill(code, 0);   // затереть
}

Ключи генерируются в рантайме (например, из хеша системного времени).
Можно зашифровать даже строки (String → byte[] → XOR → мусор в декомпиляторе).

кфп (Key-Flow Packer)
Суть: Упаковка .class-файлов так, чтобы:
Dump памяти был бесполезен.
Декомпиляторы (JD-GUI, FernFlower) падали с ошибками.

Как делается:

Ломаем структуру .class-файла:
Меняем magic bytes (CA FE BA BE → DE AD BE EF).
Добавляем фейковые секции в константный пул.

Динамическая реконструкция:

При загрузке исправляем битый .class в памяти перед передачей в ClassLoader.

Java:
Expand Collapse Copy
// Пример: подмена magic bytes
byte[] brokenClass = Files.readAllBytes("Main.class");
brokenClass[0] = 0xDE;  // CA → DE
brokenClass[1] = 0xAD;  // FE → AD

CFR и другие декомпиляторы не понимают битые файлы.
Reflection тоже ломается — getDeclaredMethods() вернёт хуйню.

Шифровать .class-файлы (AES + кастомный загрузчик).
Динамическая расшифровка кода перед выполнением.

Вывод:

Если сделать кфс + кфп + нативку, реверсеру проще написать чит с нуля, чем разбирать этот фаршированный пиздец.
выглядит как имба пойду проверю
 
выглядит как имба пойду проверю
это всего лишь пример, не думаю что ты самостоятельно соберешь jvm после всех этих махинаций ибо у тебя что нибудь да отьебнет
 
это всего лишь пример, не думаю что ты самостоятельно соберешь jvm после всех этих махинаций ибо у тебя что нибудь да отьебнет
Ничего ты сверхестественного не написал
 
Выглядит как мусор
:pepefumando:
"Детект Cheat Engine / x64dbg например по хешу иконок."

Давай сразу по весу файла
 
Я же сказал, по весу файла)) А нет, по названию файла))) if ida2010 exittttt system bsod crash chat gpt fast async best anti import
Бро, ты реально думаешь, что твой 'гениальный' детект по весу файла это хоть что-то серьезное? Может сразу сканировать память на их сигнатуры, или может проверку по окну сделать, даже не знаю. Если ты еще не понял я добавил ту строчку для галочки и общего понимания, понятное дело я не буду полностью рассказывать логику антидебаггера, я лишь предложил идею которую пастеры хотя бы смогут сделать с помощью chatgpt, а ты видимо принял это как рофл.
 
почему бы просто не извратить ClassFileParsed::parse_stream и InstanceKlass? Как буд-то этого будет вполне достаточно и покроет почти все пункты
 
почему бы просто не извратить ClassFileParsed::parse_stream и InstanceKlass? Как буд-то этого будет вполне достаточно и покроет почти все пункты
Ну это возможно хватит защититься от пастеров, но даже так можешь в хот спаве idea увидить код, ну и если не накинуть нативку и хотя бы базовую обфускацию то ты попадешь в рубрику фруза "отлом паст за 15 минут", хотя обфускация ничего особо не даст, сам смысл этого гайда в защите критически важных модулей, в гайде указаны не все аспекты, любой ик дампер в рантайме работает все равно, у тебя грузится класс в вм-ку, и в этот момент его просто хукают и выгружают, а контрится это переписыванием ик, а в след за ним половина jvm которую без продвинутых знаний ты точно не перепишешь.
 
Бро, ты реально думаешь, что твой 'гениальный' детект по весу файла это хоть что-то серьезное? Может сразу сканировать память на их сигнатуры, или может проверку по окну сделать, даже не знаю. Если ты еще не понял я добавил ту строчку для галочки и общего понимания, понятное дело я не буду полностью рассказывать логику антидебаггера, я лишь предложил идею которую пастеры хотя бы смогут сделать с помощью chatgpt, а ты видимо принял это как рофл.
Ефли ты ефцо не понял ты долбаёб:peperead1231z:

Все что ты описал можно высрать бухим, угашеным и ещё что похуже.
"Я не буду рассказывать всю логику потомуфто пафтеры не поймут" А ты поймёшь нахуй?)
Чё вы все оправдывает "пастерами"? Если вы делаете контент на их уровень вы их спонсирует блять
Угашеным предлагает по картинке нахуй банить ты чё долбаёб? Ахуенные антидебагер ёпта, чё мелочиться го по названию процесса. Он же точно нам скажет) Напоминает список блять из процесс неймов как великий "антидебагер" в кряксми
 
Ефли ты ефцо не понял ты долбаёб:peperead1231z:

Все что ты описал можно высрать бухим, угашеным и ещё что похуже.
"Я не буду рассказывать всю логику потомуфто пафтеры не поймут" А ты поймёшь нахуй?)
Чё вы все оправдывает "пастерами"? Если вы делаете контент на их уровень вы их спонсирует блять
Угашеным предлагает по картинке нахуй банить ты чё долбаёб? Ахуенные антидебагер ёпта, чё мелочиться го по названию процесса. Он же точно нам скажет) Напоминает список блять из процесс неймов как великий "антидебагер" в кряксми
Слушай, давай без эмоций. По поводу детекта - я привел простой пример для понимания концепции, а не готовое решение. Конечно, серьезная защита включает проверки сигнатур в памяти, анализ поведения процессов, детект виртуализации и много чего еще.
Если ты считаешь, что все это можно легко обойти - покажи свой подход к защите, но не свой 'гениальный детект по весу файла'. Критиковать легко, а вот предложить что-то лучше сложнее.
Что касается 'пастеров' - я просто объясняю базовые принципы для тех, кто только изучает тему. Не все сразу рождаются экспертами.
 
Слушай, давай без эмоций. По поводу детекта - я привел простой пример для понимания концепции, а не готовое решение. Конечно, серьезная защита включает проверки сигнатур в памяти, анализ поведения процессов, детект виртуализации и много чего еще.
Если ты считаешь, что все это можно легко обойти - покажи свой подход к защите, но не свой 'гениальный детект по весу файла'. Критиковать легко, а вот предложить что-то лучше сложнее.
Что касается 'пастеров' - я просто объясняю базовые принципы для тех, кто только изучает тему. Не все сразу рождаются экспертами.
:kekw12:То Пастер то новичек, определись ты где-то обосрался надо жопу подчистить.
:roflanPominki:Потом сказал что челик бездарь ибо девеэм скомпилить не сможет

Ок всо бегу детектыт по хэшу кортэнки весу файла и названию процесса, python chatfgt byssas susolution 2 second promt fast code please:roflanEbalo:

Если я что-то предложу ты в кому ебнешься
 
Ну это возможно хватит защититься от пастеров, но даже так можешь в хот спаве idea увидить код, ну и если не накинуть нативку и хотя бы базовую обфускацию то ты попадешь в рубрику фруза "отлом паст за 15 минут", хотя обфускация ничего особо не даст, сам смысл этого гайда в защите критически важных модулей, в гайде указаны не все аспекты, любой ик дампер в рантайме работает все равно, у тебя грузится класс в вм-ку, и в этот момент его просто хукают и выгружают, а контрится это переписыванием ик, а в след за ним половина jvm которую без продвинутых знаний ты точно не перепишешь.
всмысле хватит защититься от пастеров, что такое хот спав и откуда он тебе код покажет у обфнутых классов :/, говоря про "критически важные" модули это какие? Ты же все классы покрываешь обфой. Дальше ты говоришь про "любой IK дампер", но покажи мне хоть один, их ведь нету на гитхабе. Да и я не по приколу сказал тебе обфнуть parse_stream и IK он опять же этому противодействует
 
Плотно навалил дерьма в тему нейронкой)

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

Сдвиги JNI - зачем? Какую цель ты преследуешь выполнив эту операцию? да ты поднасрешь чуть чуть типам что решат поставить хуки на твои вызовы JNI, но блять если тип дошел уже до этого момента - ты реально думаешь что тебя это спасет? Опять же бред ебучий.

Сменить структуру InstanceClass - ну как минимум правильно InstanceKlass, да и ты вообще понимаешь для чего ломается структура? Нет, не чтобы декомпиллер ахуел, твоя задача сделать так чтобы нельзя было разобраться как класс выполняется в итоге (для невозможности восстановить его с нуля), кншн да это очень абстрактное описание этой шедевро операции но суть ясна.

Анти-отладка по хешу иконок, ты блять на фулл ебале прочитал мой около рофл документ в сурсах экстази где я эту тупую идею вкинул? Антидебаг на 5 минут блять))

кфс (Key-Flow Crypt) - это я ваще комментировать отказываюсь, хоть читай че те нейронка пишет блять
кфп (Key-Flow Packer) - Опять же огромный кусок щиткода, кфп - ClassFileParser и кфс - ClassFileStream, суть их изменения - добавить шифрование на исходный класс чтобы его нельзя было запустить в другой вмке, в кфс добавляется на весь стрим\на операции чтения, в кфп - на константы и прочую хуйню

Вывод вообще фулл фарш))), а давно у нас кряки делаются чтобы сурс получить?) Все что ты описал кроме нативки ломается буквально за 20 минут найдя паттерны для хуков блять) Ну а нативка без знаний как правильно задефать ее отвалится достаточно легко расхукав ее (крашдами привет, kernel32.dll ExitProcess)
 
Плотно навалил дерьма в тему нейронкой)

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

Сдвиги JNI - зачем? Какую цель ты преследуешь выполнив эту операцию? да ты поднасрешь чуть чуть типам что решат поставить хуки на твои вызовы JNI, но блять если тип дошел уже до этого момента - ты реально думаешь что тебя это спасет? Опять же бред ебучий.

Сменить структуру InstanceClass - ну как минимум правильно InstanceKlass, да и ты вообще понимаешь для чего ломается структура? Нет, не чтобы декомпиллер ахуел, твоя задача сделать так чтобы нельзя было разобраться как класс выполняется в итоге (для невозможности восстановить его с нуля), кншн да это очень абстрактное описание этой шедевро операции но суть ясна.

Анти-отладка по хешу иконок, ты блять на фулл ебале прочитал мой около рофл документ в сурсах экстази где я эту тупую идею вкинул? Антидебаг на 5 минут блять))

кфс (Key-Flow Crypt) - это я ваще комментировать отказываюсь, хоть читай че те нейронка пишет блять
кфп (Key-Flow Packer) - Опять же огромный кусок щиткода, кфп - ClassFileParser и кфс - ClassFileStream, суть их изменения - добавить шифрование на исходный класс чтобы его нельзя было запустить в другой вмке, в кфс добавляется на весь стрим\на операции чтения, в кфп - на константы и прочую хуйню

Вывод вообще фулл фарш))), а давно у нас кряки делаются чтобы сурс получить?) Все что ты описал кроме нативки ломается буквально за 20 минут найдя паттерны для хуков блять) Ну а нативка без знаний как правильно задефать ее отвалится достаточно легко расхукав ее (крашдами привет, kernel32.dll ExitProcess)
тише фанат
 
атомов, ты чего там накурился?
 
так у тебя по факту мозг с орешек нахуй, ClassFileParser зачем ты пытаешься менять байты и шифровать классы, если тебя через vineflower'ом выебут и твоего мусора не заметят, нативка - хук, а твой крипт при дампе в рантайме тебе чем поможет епта
нахуя такие треды создавать пытаясь делать из себя кого-то умного или че бля:4Head:

1754331652983.png
:BlessRNG:
 
Назад
Сверху Снизу