Гайд Гайд по деофускации кода на ЯП Java.

read only ambassador
Пользователь
Статус
Онлайн
Регистрация
28 Июн 2022
Сообщения
561
Реакции[?]
79
Поинты[?]
10K
(НА ВСЯКИЕ НЕТОЧНОСТИ УКАЗЫВАЙТЕ, БУДУ ИСПРАВЛЯТЬ)
Гайд по деобфускации кода на ЯП Java.

Введение.

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

Для того, что бы приступить к деобфускации какого-то кода, нужно понять, что такое обфускация, и я обьясню это простыми словами.

Обфускация - изменение, запутывание кода с целью скрыть алгоритмы работы программы, её исходный код.
Соответственно деобфускация - процесс, обратный обфускации, попытка восстановления исходного кода программы из её запутанного варианта.

Под определение обфускации не попадает такой софт, как например ProGuard, которые многие кубоголовые по ошибке называют обфускатором, хотя он является ремаппером.


С водой закончили, наступило время практики.

Практическая часть.
Для начала нужно понять, какой же обфускатор накладывали на данный джарник, однако тут вы уже как-то сами, ведь для деобфускации и работы с байткодом НУЖНЫ ЗНАНИЯ ДЖАВЫ!

Для примера я выбрал такую пасту, как "NeKstClient 4.0", деобфускацию которого я уже выкладывал. На нём стоит обфускатор от блауберии (
Пожалуйста, авторизуйтесь для просмотра ссылки.
).

Лично я использую деобфускатор от наруми, но вы можете использовать любой другой, или же самописный, в этой статье я покажу пример работы с данным деобфускатором.

Список поддерживаемых им обфускаторов тут:
1677695129847.png
Для работы с ним нам нужны:
  1. Любая иде для работы с джава кодом с поддержкой джавы 11 или младше версий.
  2. Сам деобфускатор (
    Пожалуйста, авторизуйтесь для просмотра ссылки.
    ).
  3. Git (необязательно, можно просто архив с кодом деобфускатора скачать и распаковать).
Итак, сам процесс:
  1. (если скачали гит) открываем консоль в любом удобном вам месте и пишем git clone
    Пожалуйста, авторизуйтесь для просмотра ссылки.
    (если нет, нужно архив с кодом деобфускатора скачать и распаковать в любое удобное место)1677694060098.png
  2. Открываем проект в иде (в моём случае это Intellij Idea)
  3. Переходим по пути /src/main/java/ и открываем класс Loader (стандартный его вид приведён ниже)1677695279324.png
  4. Закидываем нашу джарку по пути <PATH TO GRADLE>/test/
  5. В 11 строчке меняем Arrows.jar на название джарника (в 12 пишем что угодно, это будет название джарника после деобфускации)
  6. В моём случае обфускация от блауберии, поэтому в 14 строчке вместо
    default:
    new CaesiumTransformer()
    я пишу
    changed:
    new SuperblaubeereTransformer(true)
    вы меняете на тот обфускатор который был использован в вашем случае (пути до классов - uwu.narumi.deobfuscator.transformer.composed)
  7. Запускаем Loader джавой больше 11 (обязательно)
После всего этого ждёте до завершения программы и в папке <PATH TO GRADLE>/test/ должен появится джарник с названием, которое вы указали в 12 строчке.
Если что то будет неправильно - обновлю статью.

Всем спасибо за внимание, всех люблю, всем добра и хорошего дня.
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
3 Сен 2022
Сообщения
79
Реакции[?]
0
Поинты[?]
0
жоски
тольк ты пастерам не объяснил как деобфнуть колонию😭😭
 
read only ambassador
Пользователь
Статус
Онлайн
Регистрация
28 Июн 2022
Сообщения
561
Реакции[?]
79
Поинты[?]
10K
жоски
тольк ты пастерам не объяснил как деобфнуть колонию😭😭
Ну там есть трансформеры под флоу и намбер, но не более. Тут либо писать эти трансформеры самому, либо сидеть и ждать, пока их кто то напишет.
 
Забаненный
Статус
Оффлайн
Регистрация
21 Дек 2020
Сообщения
169
Реакции[?]
5
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Спасибо за лучший в мире гайд !!!! Пойду сейчас деобфить цесеум клиент!!!
 
BLTN
Участник
Статус
Оффлайн
Регистрация
23 Апр 2022
Сообщения
659
Реакции[?]
301
Поинты[?]
32K
Спасибо, спастил себе тх в свой минцед :goplol:
 
эксперт в майнкрафт апи
Read Only
Статус
Оффлайн
Регистрация
25 Янв 2023
Сообщения
677
Реакции[?]
281
Поинты[?]
53K
аоэээ ээээ ммммм кароч обфускация это... ээээ нууу ааа ну короче в интернете загуглите тоже самое найдете на первой же строке ээээ нууу а деобфускация ну типа это ээээ ну типа тоже самое но эээээ наоборот кстати ээээ если вы не осилили загуглить думаю вам будет интересно узнать чем я пользуюсь ээээ ну вот вам деобфускатор который также гуглится первой строчкой в ответах ээээ

и да, proguard = обфускатор
 
read only ambassador
Пользователь
Статус
Онлайн
Регистрация
28 Июн 2022
Сообщения
561
Реакции[?]
79
Поинты[?]
10K
аоэээ ээээ ммммм кароч обфускация это... ээээ нууу ааа ну короче в интернете загуглите тоже самое найдете на первой же строке ээээ нууу а деобфускация ну типа это ээээ ну типа тоже самое но эээээ наоборот кстати ээээ если вы не осилили загуглить думаю вам будет интересно узнать чем я пользуюсь ээээ ну вот вам деобфускатор который также гуглится первой строчкой в ответах ээээ

и да, proguard = обфускатор
Многие заблуждаются на счет ProGuard, ошибочно полагая, что это обфускатор, коим он не является по нескольким причинам:


  • Он не перемешивает код
  • Он не шифрует код

Главная задача ProGuard — поменять имена объектов, классов, методов, тем самым затрудняя анализ кода для реверс-инженера. Помимо этого он еще и оптимизирует код, удаляя неиспользуемые в программе ресурсы. Но, в конечном итоге, в классическом понимании обфускатором его назвать нельзя.
 
Сверху Снизу