Урок 11 - Взлом программы TinySheet

  1. TinySheet
  2. Взлом

TinySheet

TinySheet - это электронные таблицы для Palm'а.

Взлом

Находим нужные ресурсы.

Talt044c.bin	"Sorry, a problem has occurred:"	
tSTR13be.bin	"Invalid License"			1217c	L2222

tFRM61a8.bin	"Thank you for your purchase"		1220e	L2227

Ищем $44c. Этот фрагмент встречается очень часто. Наиболее многообещающие места

8d76	L1040
116cc	L2147

Тем не менее, с "плохой" надписью все-таки непонятно, как именно она происходит. Будем тогда смотреть на хорошую. Идем назад от L2227

Первый шаг:

000121dc   6f0e                                 BLE     L2227
000121de   3f3c1776                             MOVE.W  #6006!$1776,-(A7)

Это проверка - лицензия на старую версию или новую. Нужен BRA переход на 2227

То же самое:

000121c4   670e                                 BEQ     L2226
000121c6   3f3c1776                             MOVE.W  #6006!$1776,-(A7)

Снова проверка - лицензия на старую версию или новую. Нужен BRA переход на 2226

Идем дальше:

000121ac   670e                                 BEQ     L2225
000121ae   3f3c1775                             MOVE.W  #6005!$1775,-(A7)

Это проверка - лицензия на версию для другой платформы (WinCE?). Нужен BRA переход на 2225

Продолжаем:

00012194   6710                                 BEQ     L2224
00012196   3f3c1774                             MOVE.W  #6004!$1774,-(A7)

Это проверка - лицензия на другой продукт. Нужен BRA переход на 2224

Едем дальше, видим мост:

0001217a   6610                                 BNE     L2223
0001217c   3f3c13be                             MOVE.W  #5054!$13be,-(A7)

Это проверка - лицензия вообще неправильная. Нужен BRA переход на 2223

Обратите внимание, что здесь можно немного подумать и разобраться в том, как iambic Software генерирует лицензии для своих программ. Похоже, что это должно быть очень просто. Если бы не консультация перед экзаменом завтра, я бы попробовал разобраться. Если кто-то разберется, присылайте результаты.

Ну а я сделаю проще. Поскольку при обычной регистрации (с неправильным сериалом) TinySheet выдает именно сообщение "Invalid Licence" с 0001217c, то отсюда и надо патчить. Можно сразу сделать прыжок на L2227, а можно просто пропатчить все найденные выше переходы на BRA.

Сделал. Не работает. Смотрю. Думаю. Вот где собака порылась.

000121fe   662a                                 BNE     L2228

Переход вместо вожделенного 1220e на L2228. Убиваем 4e71.

Ура, ура!

Урок 10 - MobileDB Урок 12 - Strategic Commander
TopList

Copyright © PalmPot.
Последнее обновление 03.02.2001.