Боремося з платними jar-архівами, доступне для всіх програмування

Боремося з платними jar-архівами, доступне для всіх програмування
Боремося з платними jar-архівами, доступне для всіх програмування
Боремося з платними jar-архівами, доступне для всіх програмування

Мій молодший двоюрідний брат одного разу скачав з мережі іграшку під назвою God of War 2. При установці вона зажадала відправити СМС на короткий номер. Як програміста, мене зацікавив спосіб запаковування.

Отже, що таке jar? Це всього лише архів, в який збираються всі компоненти java додатки. І відкрити його можна через WinRar або 7zip.

Боремося з платними jar-архівами, доступне для всіх програмування

Так виглядають нутрощі jar-файлу

Ми бачимо набір різних файлів. Нас цікавить файл aplicationc.class. У ньому і знаходиться алгоритм порівняння введеного коду. Але залишимо його поки на потім. На скріншоті явно кидається в очі текстовий файл p.txt. Не замислюючись, відкриємо його.

У ньому виявляється всього один рядок, що містить набір ціфр- 43122. Судячи з усього, це і є наш пароль від архіву. Чому я так вирішив? Пароль повинен призначатися людиною, який розмістив платний архів. Даний архіватор дуже примітивний і зчитує вміст даного пароля з текстового файлу.

Але не будемо ризикувати. Замість цього використовуємо утиліту jad. Для любителів віконець скажу відразу, що вона консольная. Але використовувати її вкрай просто.

Що робить ця програма? Вона відновлює вихідний код java class. Тобто ми будемо мати вихідний код самої програми.

Давайте закинемо jad в директорію з розпакованої грою. Тепер натиснемо клавіші Win + R, що спричинить за собою запуск вікна виконати (Run). Заб'ем в його поле CMD і натиснемо Enter. Повинна з'явитися консоль з командним рядком.

Введіть там команду CD шлях з архівом.

Тепер зробіть приблизно те ж, що і на моєму скріншоті:

Боремося з платними jar-архівами, доступне для всіх програмування

Боремося з платними jar-архівами, доступне для всіх програмування

Як бачите, в 38 рядку є оператор if, що порівнює пароль і встановлює true (істину) з додатком. Кажучи російською мовою, це означає, що програмі подобається наш пароль.

Файлу з паролем може і не бути. Даний архіватор просто дуже слабенький. У цьому випадку нам допоможе jad і класи джава з архіву. Там шукаємо оператори порівняння.

З найкращими побажаннями,

Схожі статті