DataLife Engine > Статьи > Взлом защиты s60v3 Программный взлом, никаких вмешательств в прошивку

Взлом защиты s60v3 Программный взлом, никаких вмешательств в прошивку


6 апреля 2008. Разместил: shurik

1. Подготовка к работе:
1) Собственно телефон на 9-ке, кабель для подключения к компу (с блютузом по идее тоже может работать)
2)
Этот архив  (тут необходимые программки) (77 кб) (ВНИМАНИЕ ЕСТЬ У ВАС 9.2: в этом архиве содержится .sis файл TRK для 9.1, для 9.2 надо будет ставить вот отсюда; Там же в архиве скрипт для 9.1, для 9.2 нужен ЭТОТ; везде в программе надо будет использовать именно эти, вместо тех что в дальнейшем описании)
3)
Python (для компа) (11 мб)
4)
pyserial к питону (79 кб)
5)
win32 к питону (4,3 мб)
6) Установленные дрова для кабеля телефона (входят в состав PC Suite, НО я советую удалить PC Suite вообще и поставить дрова
отсюда)

2. Устанавливаем питон, ставим к нему модули (win32 и serial)
3. Подключаем телефон к компьютеру в режиме PC Suite
4. Заходим в Панель управления -- Система -- Оборудование -- Диспетчер устройств -- Порты (Ports), там находим свой телефон и запоминаем цифру порта (у меня Nokia E50 USB (COM4)) (ВНИМАНИЕ не путайте с портом модема !!)
5. Ставим в телефон программу из архива по первой ссылке (для 9.1 - s60_3_0_app_trk_2_7.sisx, для 9.2 - s60_3_1_app_trk_2_7.sisx)
6. (для 9.2 не нужно) Ставим hellocarbide.sis из первого архива
7. Выключаем на компьютере PC Suite (если включен)
8. Запускаем TRK, спросит включить ли блютуз - жмем Нет. Идем в настройки, указываем Connection=USB Port=1 Baud Rate=115200
9. Выходим из настроек, жмем Connect, должно появиться следующее:
Status: Connected
PDD: NONE
LDD: EUSBC
CSY: ECACM
Port Number: 1
Baud rate: 115200
Если появится Failed to open port.Error Code: -21 -- значит телефон не может обнаружить компьютер. И наоборот:)

10. (для 9.2 не нужно) На СМАРТЕ (и используя смарт) скидываем в корень диска С: файл HelloCarbide.exe из архива по первой ссылке

11. Жмем правой кнопкой по hack_perms_s60v3.py(для 9.2 - hack_perms_s60v3_FP1.py), Edit with IDLE, появятся два окошка, работаем в окошке с названием hack_perms_s60v3
Ищем строку с портом ser = serial.Serial(5) , изменяем цифру как нам надо - номер порта, указанный в системе (у меня был 4) минус 1 (в моем случае получается 3), т.е. в итоге изменяем на ser = serial.Serial(3)
12. Жмем F5, скрипт запустится и начнет свою деятельность. Ждем ~40 секунд для 9.1, намного меньше - для 9.2.

ВНИМАНИЕ!:
Если в вашем логе ЕСТЬ строчки по типу (для 9.1):
<!-- QuoteBegin -->

undefined<!-- undefinedQuoteEBegin undefined--> undefinedWrite Memory 60000148
write Memory at 60000148=60 00 01 48
<!-- QuoteEnd -->

undefined<!-- undefinedQuoteEEnd undefined--> undefined(для 9.2): undefined<!-- undefinedQuoteBegin undefined--> undefined

undefined<!-- undefinedQuoteEBegin undefined--> undefined!!!!!!!!!!!!!!candidate!!!!!!!!!!!!!!! undefined<!-- undefinedQuoteEnd undefined--> undefined

undefined<!-- undefinedQuoteEEnd undefined--> undefined, то мои поздравления. Если нет, то процесс прошел неудачно. В этом случае опускаем глаза вниз и читаем что написано в конце этого поста

Если появится serial.serialutil.SerialException: could not open port: ... Значит указанного порта не существует, система его найти не может или какая-то программа уже использует порт. Можно использовать свой порт плюс 1 (вместо COM4 использовать COM5 для примера, в .py файле надо будет соответственно вместо 3 указать 4).

если возникают проблемы то читайте самый низ поста

13. Можете выключать командную строку на компьютере, выключать TRK на телефоне (если я не делал второе - у меня телефон после отключения вис) и отключить телефон от компьютера..

Побочные эффекты:
* Вылетает SmartComGPS через несколько секунд после запуска при включенном хаке.

У вас в телефоне теперь есть доступ ко всем capability для ВСЕХ программ (любая программа может теперь по системным папкам лазать например). Но это только до первой перезагрузки. Читаем дальше

Как заставить X-Plore и Modo иметь доступ после перезагрузок:
<!-- QuoteBegin Santehnik -->

Цитата: Santehnik
undefined<!-- undefinedQuoteEBegin undefined--> undefinedМануал по получению доступа после перегруза (доступ частичный, чуть пожже выложу Modo переделаный для полного)
Итак 1) Ставим X-plore 1.21 на диск C:
2) Проворачиваем эту всю хрень
3) качаем прикрепленный файл и скидываем в корень диска C:
4) Перегружаемся
5) Радуемся :)))
Прикрепленный файл:
sys.zip (4.04 кб)
з.ы спасибо Электромастеру за любезно предоставленые файлы для экспериментов:)

А вот и модо:)
Прикрепленный файл:
modo.zip (45.81 кб) undefined<!-- undefinedQuoteEnd undefined--> undefined

undefined<!-- undefinedQuoteEEnd undefined--> undefined
Как возобновить работу хака после перезагрузки (для всех программ):
<!-- QuoteBegin morfeg -->

Цитата: morfeg
undefined<!-- undefinedQuoteEBegin undefined--> undefined1. Качаем архив, распаковываем нужную папку (FP1 для 9.2 и PreFP1 для 9.1)
2. Выполняем хак
3. Копируем CProfDriver_SISX.ldd в C:/sys/bin
4. Ставим CapsOn.sisx
5. Ставим CapsOff.sisx

Можно просто добавить CapsOff в программу PowerBoot.
CapnOs - для отключения хака
CapsOff - для включения хака

Прикрепленный файл:
capsonoff.rar (88.55 кб) undefined<!-- undefinedQuoteEnd undefined--> undefined

undefined<!-- undefinedQuoteEEnd undefined--> undefined

После этих действий можно удалить TRK и HelloCarbide, без них хак будет восстанавливаться без проблем

Всё это придумал испанец с ником FCA00000!
ЗА ВСЕ ЧТО ВЫ ДЕЛАЕТЕ Я ОТВЕТСТВЕННОСТИ НЕ НЕСУ! Хотя напортачить тут сложно (по сути - невозможно) :)


Возможные проблемы, точнее пути их решения
если скрипт выдает какую-либо ошибку или всё проходит но доступа всё равно нет - то, что я почти всем отвечаю в личку

<!-- QuoteBegin -->

undefined<!-- undefinedQuoteEBegin undefined--> undefinedмогу посоветовать снести всё, связанное с нокией (нсу, пк сюит, дрова) и поставить дрова с оф сайта http://nds1.nokia.com/files/support/global...85_10_0_rus.msi

после установки дров может смениться порт !
потом рассчитать порт (как в системе, минус 1), поставить его, если не проканает то ставить порт тот же что и в системе (без минус 1).

Если не сработает то заменить строчки в коде
ProcessIDh=myBytes[5]
ProcessIDl=myBytes[6]
ThreadIDh=myBytes[9]
ThreadIDl=myBytes[10]
на
ProcessIDh=0
ProcessIDl=1
ThreadIDh=0
ThreadIDl=1

тоже оба порта проверить. если снова не сработает то поставить
ThreadIDl=2

Также может не работать с вистой

Если уж совсем никак то с другого компа попробовать.

Если и с других компьютеров не работает, может помочь формат телефона (а также повышение внимательности..) <!-- QuoteEnd -->

undefined<!-- undefinedQuoteEEnd undefined--> undefined