motofan logo
22 страниц V « < 17 18 19 20 21 > »         
> 

Ковырнём Прошивку ..., Hex Workshop 4.0, Hiew etc...

wvitalik
сообщение 11.10.2005, 18:37


Мастер
****

Группа: Пользователи
Сообщений: 270
Регистрация: 2.9.2004
Из: Україна, Вінниця.
Пользователь №: 11 396
Модель телефона: C550->V635->A1000+E6
Прошивка: 54.08.20/02p

Рейтинг: 46



Тут промилькивала идея написать прошивку и она будет работать до первой перезагрузки телефона, может рискнем?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
BeZnOg
сообщение 12.10.2005, 5:52


Мастер
****

Группа: Пользователи
Сообщений: 230
Регистрация: 24.3.2005
Из: Москва
Пользователь №: 39 439
Модель телефона: Nokia 6233
Прошивка: 05.43

Рейтинг: 55



Vilko,
Пожалуйста поясни,вот я прошил не подписанную R373_1FR,тело как и ожидалось не запустилось,выпало в бланк,а дальше что делать?Где,и какие команды вводить?И еще вопрос,сконвертирует ли таким образом она ПДС?(Если всетаки в ней он 2 версии..) :) Спасибо.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 13.10.2005, 9:22


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



BeZnOg,
зппкскать - командой jump на точку входа(указатель на нее - dword по адресу 10080000)
но просто так ее не запустишь и сконвертить она ничего не сконвертит.
суть в том, что часть симов в pds шифрована. ти симы отвечают только за сим-лок. и еще сим с версией системы безопасности. тот самый, что сконвертить надо.
но при запуске из бланк-режима аппаратная система шифрования телефона не работает, и включить ее нельзя.
поэтому в прошивке надо отменить расшифровку/проверку этих симов, чтобы она нормально запустилась,а не вылетала с ошибкой "система криптования не работает". иначе - не запустить.
Osta
откуда? подписи-то никто не поломал.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
alo33
сообщение 13.10.2005, 9:53


Мастер
****

Группа: Пользователи
Сообщений: 233
Регистрация: 10.12.2004
Из: Ульяновск
Пользователь №: 26 053
Модель телефона: Defy+
Прошивка: 4.5.1-134_DFP-231

Рейтинг: 51



Vilko
Цитата(Vilko @ Четверг, 13 Октября 2005, 13:22)
Osta
откуда? подписи-то никто не поломал.
*


Он имел ввиду прошивку для этой
Цитата(wvitalik @ Вторник, 11 Октября 2005, 22:37)
Тут промилькивала идея написать прошивку и она будет работать до первой перезагрузки телефона, может рискнем?
*

ситуации
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 13.10.2005, 11:20


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



alo33,
Osta,
я - не делал.
если делал кто-то еще - не в курсе...
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
alo33
сообщение 13.10.2005, 11:52


Мастер
****

Группа: Пользователи
Сообщений: 233
Регистрация: 10.12.2004
Из: Ульяновск
Пользователь №: 26 053
Модель телефона: Defy+
Прошивка: 4.5.1-134_DFP-231

Рейтинг: 51



Vilko,
Допустим я изменил прошивку (например просто поменял номер прошивки в HEX-редакторе или поменял адреса в булоадере) то как я должен залить измененную прошиву (через P2KFlash или Ramldr?)
2) Как я понял тел в обычном режиме не включится -> я должен запустить его в флеш-моде и через Ramldr ввести команду jump на точку входа (указатель на нее - dword по адресу 10080000) я правильно понял?
Также меня интересует когда тело перезагружается то это происходит с помощью команды в прошиве (програмно) или кратковременным отключением питания (как reset в компе - апаратно)?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 13.10.2005, 20:06


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



alo33,
Цитата
как я должен залить измененную прошиву (через P2KFlash или Ramldr?)

как угодно
Цитата
Как я понял тел в обычном режиме не включится -> я должен запустить его в флеш-моде и через Ramldr ввести команду jump на точку входа (указатель на нее - dword по адресу 10080000) я правильно понял?

да. только просто изменить несколько байт недостаточно. нужно в процедуре чтения/записи симов из pds отключить шифрование тех симов,которыфе шифрованы - криптосистема не будет работать. сделать это несложно, поменять всего байт 10-15...
Цитата
Также меня интересует когда тело перезагружается то это происходит с помощью команды в прошиве (програмно) или кратковременным отключением питания (как reset в компе - апаратно)?

и так и так. как и в компе - есть и "горячий" рестарт, и "холодный". питание можно и выключить совсем, и заставить тело сгенерить аппаратный ресет процу.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
alo33
сообщение 14.10.2005, 18:24


Мастер
****

Группа: Пользователи
Сообщений: 233
Регистрация: 10.12.2004
Из: Ульяновск
Пользователь №: 26 053
Модель телефона: Defy+
Прошивка: 4.5.1-134_DFP-231

Рейтинг: 51



Цитата(Vilko @ Пятница, 14 Октября 2005, 0:06)
заставить тело сгенерить аппаратный ресет процу.
*


Тоесть при глюках тело перезагружается програмным способом?
Тогда может изменить код прошивки чтобы при перезагрузке тело не выключалось а просто выгружались все процессы и заново загружались в память (так сказать перезагрузка при которой тело не будет выключатся и следственно проверятся на RSA) хотя скорее всего это из области фантастики
Цитата(Vilko @ Пятница, 14 Октября 2005, 0:06)
да. только просто изменить несколько байт недостаточно. нужно в процедуре чтения/записи симов из pds отключить шифрование тех симов,которыфе шифрованы - криптосистема не будет работать. сделать это несложно, поменять всего байт 10-15...
*


это ты мне про случай с BeZnOg говоришь (с ковертацией pds) или при любом изменении прошивы?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 14.10.2005, 19:30


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



Цитата
чтобы при перезагрузке тело не выключалось а просто выгружались все процессы
вот и с виндами в теории так предполагалось. а на практике часто без ресета не обойтись lol.gif
Цитата
это ты мне про случай с BeZnOg говоришь (с ковертацией pds) или при любом изменении прошивы

практически при любом. есть способ залить измененный флеш так, чтобы криптосистема работала, но это долго и неудобно - нужна двойная перепрошивка для каждого запуска, в отличие от одной команды jump для случая с неработающей крипто.
и патчить прошивку на тему отмены использования криптосистемы - элементарно. можно даже не отменять, а встроить свою процедуру для 3des и сменить указатель на ее использование с встроенной прошивки на свой кусок кода.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
alo33
сообщение 15.10.2005, 9:44


Мастер
****

Группа: Пользователи
Сообщений: 233
Регистрация: 10.12.2004
Из: Ульяновск
Пользователь №: 26 053
Модель телефона: Defy+
Прошивка: 4.5.1-134_DFP-231

Рейтинг: 51



Vilko,
Еще одну вещь придумал только есть пара вопросов
Если залить измененный бутлоадер будет
1) так он не включится -> во флеш
2) но во флеш режиме он загрузится с измененным лоадером или вообще не запустится?
3) если запустится с измененным лоадером то что это нам дает (например можно ли через него сделать так чтобы при запуске *+#+выкл просто включался телефон?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 15.10.2005, 13:17


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



alo33,
на измененный бут тело отреагирует так-же, как и на измененный флеш - уйдет в бланк.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 16.10.2005, 23:43


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



люди, разбирающиеся в арм-асме достаточно для внесения осмысленных изменений оптимизаций в прошивку телефона - стучитесь мне в асю. есть тема на обсуждение...
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
PROFF
сообщение 23.10.2005, 12:55


Crazy People
*****

Группа: Почётные мотофаны
Сообщений: 318
Регистрация: 19.6.2004
Из: |__________|90 rus|
Пользователь №: 6 465
Модель телефона: HTC HD2 leo
Прошивка: Android MIUI

Рейтинг: 521.5



Vilko, на данный момент обладатели е398 имеют прошивку от roker ранней версии 373..1ER ( тестовая) с ней наше тело работает, но на сегодняшних рокерах стоит уже более новая прошивка.... дело не столько в прошивке, а в зоне pds, подробнее можно почитать
е398->рокер... возможна ли с вашей сторогы какая-то помощь?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Exebyte
сообщение 25.10.2005, 21:58


Интересующийся
**

Группа: Пользователи
Сообщений: 65
Регистрация: 11.6.2005
Пользователь №: 44 009
Модель телефона: Motorola E398=>E790
Прошивка: R373_G_0E.30.44R

Рейтинг: 34.5



Vilko, желающие-то есть, вот только знаний для этого дела пока недостаточно....


P.S. Начал собирать инфу по процу и т.д... Надо ещё RealView надыбать... а трафика минимум осталось... Попробую поискать на дисках.. :(
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Nick-85
сообщение 1.11.2005, 17:00


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 7.8.2005
Пользователь №: 48 017
Модель телефона: Motorola C380

Рейтинг: 5.5



Так...
Значит всё - таки можно jmpить код и даже, как я понял из вышележащих постов, модифицировать и создавать новые native java методы...
Вопрос:
На прошивках, подходящих для C380 такое возможно?
Если да, то я с удовольствием выслушаю ваши предложения по желаемому к созданию ARM коду.

Ниже OFFTOP:
P.S.: Системы требующие проектирования и Herbalife не предлагать ( а вот всяческие освещения, трансформации и растеризации... ммм... ).
P.S.S: Приложения использующие JSR - 184 используют числа типа float ( а вот переписать в быстрый native сверхмегатормозную реализацию стандартизованного Motorola 3D API... ).
P.S.S.S: Красивые, но тормозные "ручные" 3D API, написанные полностью на Java можно использовать, например, для создания очень красивых квестов, RPG, стратегий и любых др. типов приложений, в которых допустимо длительное время первоначальной загрузки картинки, а также для полноценного играбильного real-time отображения трёхмерных объектов в небольшой области экрана. Но j2me часто работает не так как мне бы хотелось ( читать - компилируемый JBuilder с microJBlend код иногда работает некорректно и приходиться заниматься созданием дополнительных участков кода, учитывающих подобные ошибки в реализациях этих продуктов/технологий ).
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 1.11.2005, 20:25


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



Nick-85,
да, запуск джампом прошивки возможен.
подробно описывать - "как" еще раз надо?
уточню один момент - надо "заглушить" процедуры шифрования симов - заставить их всегда отвечать "ок", поскольку криптосистема - это единственная часть железа, блокирующаяся при непрохождении подписи. используется только при криптовании нескольких симов в PDS, которые в свою очередь используются только при симлоке, так что невелика потеря :)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Exebyte
сообщение 1.11.2005, 21:47


Интересующийся
**

Группа: Пользователи
Сообщений: 65
Регистрация: 11.6.2005
Пользователь №: 44 009
Модель телефона: Motorola E398=>E790
Прошивка: R373_G_0E.30.44R

Рейтинг: 34.5



Да... Система команд довольно интересная, особенно понравились условные выполнения команд, по аналогии с конструкцией CCMOV на P6, но более продвинутая... Правда единственный софт, который у меня сейчас есть это IDA из старых "запасов"... Нынче создается впечатление, что люди торгующие дисками ни о чем кроме Delphi и C++ неслышали... у них тяжело найти ассемблер под PC, а про что-либо на ARM я вообще молчу... Смотреть "мертвый" код в IDA не очень эфективно... Нужен нормальный отладчик... может кто-нибудь посоветует что-нибудь не очень много "весящее"... :)

P.S. Продолжаю поиски RealView на дисках... :(
P.P.S. Vilko, можно что-нибудь придумать с залитием в тело бэкапа при бутлоатерах A0.XX?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Nick-85
сообщение 2.11.2005, 5:58


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 7.8.2005
Пользователь №: 48 017
Модель телефона: Motorola C380

Рейтинг: 5.5



Вопросы1:
Что-то такое SEEM?
Что-то такое PDA?

Вопросы2:
Какой конкретно ARM код вы хотели бы получить?

..."заглушить" процедуры шифрования симов - заставить их всегда отвечать "ок"...
Для того, чтобы написать в машинных ARM кодах jmp seg:offset "OK Code" вы хотите использовать отладчик?... почему не ручками в hex-редакторе?

Если у кого-то возникнет желание, то объясните мне научно-популярно, что сейчас является препятствием для получения возможности запуска своего native - кода?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Nick-85
сообщение 2.11.2005, 8:40


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 7.8.2005
Пользователь №: 48 017
Модель телефона: Motorola C380

Рейтинг: 5.5



To Vilko:
Какой конкретно ARM код вы хотели бы получить?
Vilko - смотря кто "вы" я так и сам могу любой нужный мне получить. нужно задачу ставить и реализовать ее, а не "код получать"...
Переформулирую вопрос: О каких, возможных к постановке, задачах идёт речь?

Если у кого-то возникнет желание, то объясните мне научно-популярно, что сейчас является препятствием для получения возможности запуска своего native - кода?
Vilko - да вобщем ничего, кроме объема перелопачиваемых данных. сырцов нету, а 12мегабайтный(в среднем) бинарник прошивки копать в одиночку.... надолго это.
Ответ не ясен, поэтому переформулирую вопрос:
Можно ли сейчас создать и запустить на исполнение свой native - метод или модифицировать уже существующий?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 2.11.2005, 8:48


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



Цитата
О каких, возможных к постановке, задачах идёт речь

задачи? гм, даже не знаю.
народ вон мечтает съемку видео во все модели, память увеличить за счет выкидывания всего лишнего, вибро+звонок и т.п.
пишущие java-приложения желают иметь возможность модифицировать имеющиеся/добавлять новые классы.
я вот например хочу научить два аппарата между собой связыватся минуя БС. ;)

Цитата
Можно ли сейчас создать и запустить на исполнение свой native - метод или модифицировать уже существующий?

можно. я об этом уже не помню сколько раз писал. :)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
GLuka
сообщение 2.11.2005, 11:10


Новичок
*

Группа: Пользователи
Сообщений: 17
Регистрация: 1.9.2005
Пользователь №: 50 281
Модель телефона: e398
Прошивка: 43R

Рейтинг: 0



По поводу запуска до первого выключения..
Я так понимаю, что запуск аппарата будет происходить с помощью компа путем посылки команды телу совершить переход на указанный адрес. Я думаю не так сложно будет сделать устройство, которое могла бы посылать команду перехода телу, чтобы не быть привязанным к компу(сразу скажу, что в электронике я не разбираюсь, но почему-то так кажется..). Схему эту можно будет либо запихнуть в тело, либо подключать снаружи как ключ..
Вот так вот. Если в чем не прав - ногами не бить.. Это просто мои мысли. <_<
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
TAL
сообщение 2.11.2005, 12:31


Ветеран
*****

Группа: Почётные мотофаны
Сообщений: 508
Регистрация: 25.5.2005
Из: Africa
Пользователь №: 43 105
Модель телефона: Lenovo P2
Прошивка: original

Рейтинг: 217



Цитата(GLuka @ Среда, 2 Ноября 2005, 13:10)
По поводу запуска до первого выключения..
Я так понимаю, что запуск аппарата будет происходить с помощью компа путем посылки команды телу совершить переход на указанный адрес. Я думаю не так сложно будет сделать устройство, которое могла бы посылать команду перехода телу, чтобы не быть привязанным к компу(сразу скажу, что в электронике я не разбираюсь, но почему-то так кажется..). Схему эту можно будет либо запихнуть в тело, либо подключать снаружи как ключ..
Вот так вот. Если в чем не прав - ногами не бить.. Это просто мои мысли. <_<

*



например ноутбук везде с собой таскать :D
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Nick-85
сообщение 2.11.2005, 13:23


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 7.8.2005
Пользователь №: 48 017
Модель телефона: Motorola C380

Рейтинг: 5.5



To Vilko:
О каких, возможных к постановке, задачах идёт речь

Vilko - задачи? гм, даже не знаю.
народ вон мечтает съемку видео во все модели, память увеличить за счет выкидывания всего лишнего, вибро+звонок и т.п.
пишущие java-приложения желают иметь возможность модифицировать имеющиеся/добавлять новые классы.
я вот например хочу научить два аппарата между собой связыватся минуя БС.

1) к съёмке видео у меня интереса немного :)
2) на нехватку встроенной памяти не жалуюсь, а вот флэшку подключить - через микрофон / динамик + электронный преобразователь, либо через USB + электронный преобразователь, либо телефон исп. как сервер для дозвона + тариф с "входящие бесплатно" это... ммм... особенно последнее самое простое к исполнению и наиболее желаемое мной к дальнейшему использованию.
3) вибро + звонок... зачем?
4) одним из первых, что я хотел бы реализовать, является возможность модифицировать имеющиеся / добавлять новые классы с использованием "стандартизованных" механизмов...
5) если будем писать сервер для дозвона, то можем попутно написать классы и для связи минуя БС.

Итак то, что я сейчас хочу:
1) заменить встроенный пакет j3d полностью;
2) получить возможность исп. телефон как сервер для входящих вызовов ( + связь минуя БС );
3) подключить через mini - usb или любой другой интерфейс клавиатуру без использования внешнего электронного преобразователя.

Мысли по поводу "стандартизации":
1) В Java коде создаётся буфер и в него заносятся машинные комманды для ARM процессора;
2) Вызывается предварительно написанный на ARM коде метод, который принимает в качестве первого параметра полное имя создаваемого / заменяемого метода, в качестве второго параметра выступает вышеуказанный буфер и в качестве третьего параметра указывается следует ли заменять уже существующий метод ( если таковой имеется ) и является ли создаваемый метод ( если он именно создаваемый ) временным. Поддержку временных методов и возможность загрузки целых пакетов внесём позднее. Можно подумать также насчёт небольшой поддержки буфера с данными типа "ARM ассемблер" ( для справки: ассемблер - символьное представление машинного языка ).

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

Так что сейчас предлагаю всем сосредоточить свои силы именно на реализации подобной "стандартизации" для Java приложений.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 2.11.2005, 13:28


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



Nick-85,
не проще сделать API среды и установку/подгрузку бинарных программ аналогично ява-программам?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Inlined
сообщение 2.11.2005, 14:44


Интересующийся
**

Группа: Пользователи
Сообщений: 91
Регистрация: 5.9.2005
Из: Санкт-Петербург
Пользователь №: 50 635
Модель телефона: E398, DEFY

Рейтинг: 73.5



Vilko,
как ты думаешь, легко ли сложно ли будет найти способ управляемо запускать свой arm-код на телефоне без компьютера?
если сейчас нельзя (нельзя ведь, да??), то остается искать какие-то ошибки в прошивке (например, переполнение стека), которые позволять его запускать. у тебя есть что-то такое на примете? ;-)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Nick-85
сообщение 2.11.2005, 14:53


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 7.8.2005
Пользователь №: 48 017
Модель телефона: Motorola C380

Рейтинг: 5.5



To Vilko:
Только если загрузку кода и данных в память можно "взвалить" на API функции прошивки, иначе нет. То же с динамическим выделением памяти. Написать-то можно сколь угодно много ARM кода, но вот отлаживать...
Впрочем меня устраивает любой вариант позволяющий запускать ARM код на mobile.

Мысли по поводу сделать API среды и установку/подгрузку бинарных программ аналогично ява-программам:
Изменять основной интерфейс сотового у меня желания нуль...
А вот пользовательское приложение, для обеспечения загрузки в память и выполнения исполняемых программ, на Java, кот. использует native - методы выглядит более привлекательным для меня сейчас...

В любом случае:
Какой формат исполняемых файлов с ARM кодом вы хотите использовать? ( желательна ссылка )
Какие методы прошивки допустимо использовать для обеспечения загрузки в память и выполнения исполняемых программ?
Компиляторы, отладчики под ARM процессоры уже есть? ( желательны ссылки )
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 2.11.2005, 15:10


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



Nick-85,
Цитата
Какой формат исполняемых файлов с ARM кодом вы хотите использовать? ( желательна ссылка )

желательно конечно .elf - но это уже линух из прошивки делать надо :))

Цитата
Какие методы прошивки допустимо использовать для обеспечения загрузки в память и выполнения исполняемых программ?

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

есть.
например http://www.lauterbach.com/frames.html
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
hobbit19
сообщение 2.11.2005, 16:20


квант истории
******

Группа: Пользователи
Сообщений: 1 043
Регистрация: 1.4.2005
Из: Рязань
Пользователь №: 39 980
Модель телефона: (M)oTorola
Прошивка: testing/unstable
Победитель конкурса 2008

Рейтинг: 739.5



Цитата(Inlined @ Среда, 2 Ноября 2005, 17:44)
Vilko,
как ты думаешь, легко ли сложно ли будет найти способ управляемо запускать свой arm-код на телефоне без компьютера?
если сейчас нельзя (нельзя ведь, да??), то остается искать какие-то ошибки в прошивке (например, переполнение стека), которые позволять его запускать. у тебя есть что-то такое на примете? ;-)
*


Nick-85
да а если поискать и вправду ошибки на переполнение?))
например если ты всеравно будешь копать ява обработчик может обнаружишь в нем ошибки
они я думаю должны быть ведь ява обработчик отличаеться сидя по производительности в
364 365 366 368 сериях)) и при работе с явой в 364 серии перезагрузка тела была чаще
например для сименсов отрыл мидлет посволяющий при помощи вызова переполнения менять чето у них чего конкретно не столь важно но принцып думаю тотже))
Прикрепленный файл pm55amd.rar   ( 4.45 килобайт ) Кол-во скачиваний: 83
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Nick-85
сообщение 3.11.2005, 9:07


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 7.8.2005
Пользователь №: 48 017
Модель телефона: Motorola C380

Рейтинг: 5.5



To Vilko:
Vilko - желательно конечно .elf - но это уже линух из прошивки делать надо )
У формата исполняемых файлов, кот. поддерживает прошивка название есть?
Что такое flex?
Vilko - ну буквально в память-то грузить их не надо - флешка и так является частью память.
Vilko - нужно только определять адрес программы в флексе и передавать ей управление.
Vilko - для выделения оперативки и работы с флексами есть стандартное апи операционки телефона.
А зачем тебе явно память выделять загрузчиком исполняемых файлов, если ты передаёшь управление программе, кот. сама может использовать стандартное апи операционки телефона?
Весь загрузчик исполняемых файлов мне сейчас видится так:
mov reg01, param1
mov reg02, param2
mov reg..., param...
call seg:offset "функция получения адреса в flex загружаемой программы "
call reg01 ;reg01 = seg:offset "функция получения адреса в flex загружаемой программы "
при достаточном желании можно даже ручками в машинных кодах...
Почему сам не напишешь?

Какой конкретно ARM код вы хотели бы получить?
Vilko - смотря кто "вы" я так и сам могу любой нужный мне получить. нужно задачу ставить и реализовать ее, а не "код получать"...

Тогда ставим задачу так: Vilko, предлагаю тебе составить на ARM - ассемблере или любом псевдо языке код мини загрузчика с обязательным указанием всех задействованных адресов. Если полученный код по объёму будет приближен к рассмотренному псевдо коду, то можно будет собрать машинный код и ручками.

To hobbit19:
Для всех Java приложений проверяются проверки выход индекса за границу массива, проверки на возможность переполнение стека и т.п. Так что, если и можно устроить переполнение, то только общее для телефона :), а предугадать при нём передачу управления на твой буфер с ARM кодом очень сложно. Да это сейчас и не требуется - исполняемый код и так уже можно пытаться запустить ( да Vilko :) ? ).
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 3.11.2005, 9:15


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



Цитата(Nick-85 @ Четверг, 3 Ноября 2005, 13:07)
У формата исполняемых файлов, кот. поддерживает прошивка название есть?
*


прошивка пока не поддерживает никаких исполнимых файлов, о чем ты?
Цитата
А зачем тебе явно память выделять загрузчиком исполняемых файлов, если ты передаёшь управление программе, кот. сама может использовать стандартное апи операционки телефона?

я это и имел ввиду.

по поводу написания кода - это-то сделать недолго. надо составить полное описание апи для определенной версии прошивки,ибо увы точки входа меняются.
и для написания своих запускаемых программ придется делать перемещаемый код или систему fixup'ов по типу той что в PE реализована.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Nick-85
сообщение 3.11.2005, 14:03


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 7.8.2005
Пользователь №: 48 017
Модель телефона: Motorola C380

Рейтинг: 5.5



To Vilko:
Vilko - по поводу написания кода - это-то сделать недолго. надо составить полное описание апи для определенной версии прошивки,ибо увы точки входа меняются. и для написания своих запускаемых программ придется делать перемещаемый код или систему fixup'ов по типу той что в PE реализована.

А просто проверить точки входа на наличие требуемого в них ARM кода? Или в зависимости от версии прошивки заполнять непосредственными адресами указатели на API функции прошивки? Для начала предлагаю просто реализовать возможность запуска ARM кода с обеспечением возможности доступа из него к клавиатуре и видеобуферу :)...

Переменные - указатели на API функции прошивки можно разместить в динамической памяти, тем самым обеспечив предположительно безболезненную расширяемость "безопасно" доступных ARM коду API функций прошивки... и лет эдак через 100 получим "полное описание апи для определенной версии прошивки". В начале подобного блока памяти можно указать: идентификатор "безопасной" оболочки для API функций прошивки, её версия, число поддерживаемых фунций, смещение от начала блока непосредственно данных с указателями на API функции прошивки... для любителям геморра тоже раздолье - они могут добавить туда символьные массивы с названием поддерживаемых API функций прошивки, символьные массивы с названием поддерживаемых прошивок. Естественно, перед непосредственной передачей управления на ваш ARM код, выполняется инициализация всего этого "добра". Всё это к тому, что "добро" это и код его инициализации можно компоновать и с основным ARM кодом.
Если всё это реализует загрузчик, то просто передадим через ригистр основному ARM коду адрес подобного блока.

Итак, стандартизуем блок данных с указателями на API функции прошивки.
struct DATA_BLOCK{
// sizeof( int ) = 4 байта
int identifier;
int os_version;
int num_API_functions; // количество указателей на API функции прошивки
int offset; // смещение относительно начала блока данных данных с указателями на API функции прошивки
// кто что ещё хочет добавить или изменить?
};

в OS Code:
mov reg01, seg DATA_BLOCK
mov reg02, offset DATA_BLOCK

непосредственно в желаемом к исполнению ARM коде:
mov seg_DATA_BLOCK, reg01 // сохраняем сегмент адреса
mov offset_DATA_BLOCK, reg02 // сохраняем смещение адреса

Для начала предлагаю реализовать возможность доступа к клавиатуре mobile и возможность прямого доступа к видеобуферу ( последнее также предлагаю записать в указанном ранее блоке - seg:offset ).

Что скажешь, Vilko?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 3.11.2005, 14:07


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



Nick-85,
вполне реально. можешь начинать.
только забудь слово seg ;)

теперь нужно брать дизасм - и искать эти самые АПИ :)
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Nick-85
сообщение 3.11.2005, 18:11


Интересующийся
**

Группа: Пользователи
Сообщений: 60
Регистрация: 7.8.2005
Пользователь №: 48 017
Модель телефона: Motorola C380

Рейтинг: 5.5



To Vilko:
И параллельно пишем каркас API miniOS на ARM - ассемблере.
А нельзя ли всё требуемое для поиска адресов желаемых к исполнению функций API прошивки прямыми www - ссылками ?
Как я понял для решения поставленной задачи оптимально использовать ARM дизассемблер RealView ?
Какую версию прошивки будем пытать ?
С каких адресов, с твоей точки зрения, целесообразно начать поиск адресов функций API прошивки для работы с клавиатурой ?
Известно тебе что-либо о наличии в прошивках изначально общедоступного клавиатурного буфера ?
Если производить анализ кода native - методов, то можно ли сейчас найти их конкретные адреса или потребуется "перелопачивать" их все "скопом" ?
Ты говорил, что знаешь адрес функции прошивки которая, отвечает за шифрование данных в случае троекратного неверного введения sim - кода ?
Если произвести поиск от начала прошивки по команде перехода на этот адрес, то можно выйти на функцию обеспечивающую получение данных от пользователя ( именно номер sim карты ). В идеале она будет практически в начале небольшого цикла практически "ровно" перед командами cmp, либо перед вызовом функции и одной командой cmp - если корректность введённых данных проверяет др. подпрограмма.
Вообщем, ссылочку на RealView ( если это подходящий ARM дизассмеблер ) можно ?
И желательно прямую ссылочку на желаемую к "разбору" прошивку.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Oktan
сообщение 3.11.2005, 21:41


МотоПисака
*****

Группа: Пользователи
Сообщений: 420
Регистрация: 2.4.2004
Из: Краснодар
Пользователь №: 2 916
Модель телефона: L7

Рейтинг: 197



Vilko,
Пишу бред, потому что хочу спать.
Итак.
Имеем: возможность запускать что_угодно на телефоне минуя криптозащиту, до перезугрузки.
Требуется: хотя бы отвязаться от компа.
Мысль: Насколько я понимаю, снала стартует бутлоадер. Потом компот и требуха. После всякой, нам совершенно ненужной, фигни стартует прошивка. Может стоит ковырять бутлоадер на пердмет ПЕРЕНАПИСАНИЯ оного, чтобы бут сразу без лишних вопросов ЗАПУСКАЛ прошивку, минуя проверку чексумов и ключей? Ведь нужно просто повесить в нужном месте бута JUMP, который отсылал в начало прошивки.
Возможные варианты ответа: 1) Бред, 2) Актан, иди спать! 3) Дай и мне затянуться... 4) А мотом Мараваны захватят мир!
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Oktan
сообщение 3.11.2005, 22:08


МотоПисака
*****

Группа: Пользователи
Сообщений: 420
Регистрация: 2.4.2004
Из: Краснодар
Пользователь №: 2 916
Модель телефона: L7

Рейтинг: 197



Vilko,
Хм. А вот не пойду спать!
Вот еще пакетик бреда. Сам насобирал.
На каком уровне реализована проверка RSA? На аппаратном? Если да, то это - false, если нет, то - trueъ.
Опять же можно попытаться наставить джампов по всему процессу загрузки телефона, перепрыгивая проверку на вшивость, оставляя важные операции.
Идем дальше. Проверяется ли бут на вшивость, т.е. на какую-либо "оригинальность"? т.е. допускается ли хирургическое вмешательство? Насколько я продолжаю понимать, бут запускается без проверок и уже сам запускают эту проверку разных областей и, собственно, прошивки.
Если это так, то бут - ключик к решению всех проблем. Если же нет, то вообще все фигня, и надо все же идти спать!
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Vilko
сообщение 3.11.2005, 22:58


Мотокодер
******

Группа: Легенды MotoFan.Ru
Сообщений: 1 331
Регистрация: 23.6.2003
Из: Москва
Пользователь №: 71
Модель телефона: E398+, Е1000, ...

Рейтинг: 1116



Эх, Oktan, иди все-же спать... :)))
это уже описывалось не раз.
проверку подписи делает irom - встроенный в процессор ROM, с конорого начинается загрузка проца. что-то типа БИОС.
он неперепрошиваем, прошивка/бут получат управление только после успешной проверки подписи.
бут тоже подписан, следовательно неизменяем.
и, кстати, бут стартует либо если прошивки вообще нет, либо после прошивки, когда она обнаружила при включении *# или в дальнейшем - тест-команду FLASH
т.е., не смотря на свое название, ДО прошивки он не запускается...
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Oktan
сообщение 4.11.2005, 15:48


МотоПисака
*****

Группа: Пользователи
Сообщений: 420
Регистрация: 2.4.2004
Из: Краснодар
Пользователь №: 2 916
Модель телефона: L7

Рейтинг: 197



Vilko,
Т.е. без взлома подписи прошивки ничего противоестественного сделать нельзя, т.к. секурити обеспечена на железном уровне?
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
dion
сообщение 4.11.2005, 16:12


/dev/null
Group Icon

Группа: System Administrators
Сообщений: 528
Регистрация: 21.12.2004
Из: Kiev, Ukraine
Пользователь №: 28 801
Модель телефона: E680i, C380

Рейтинг: 70



Цитата(Oktan @ Пятница, 4 Ноября 2005, 18:48)
Т.е. без взлома подписи прошивки ничего противоестественного сделать нельзя, т.к. секурити обеспечена на железном уровне?
*


Да. Кроме случая, если тел пускается из FLASH Mode. (До первой перезагрузки/выключения :) )
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Osta
сообщение 4.11.2005, 16:44


Freestyler
********

Группа: Легенды MotoFan.Ru
Сообщений: 10 329
Регистрация: 20.7.2004
Пользователь №: 8 235
Модель телефона: Moto
Прошивка: *#9999#


Настроение:
Все невыспавшиеся в следующей жизни будут котами



Рейтинг: 4362



[OFF]Нет, я всё-таки скажу.[/OFF]
Может новую тему сделаем ? Чётко под перелопачивание определённой прошивки?
Тут вертиться вокруг одного всё время.
У Nick-85 С380 , у Vilko тоже С650 где-то есть.
Берём прошивку например R364_G_0B.D1.0BR.
Там была функция fullscreen фотоcall при входящем звонке.
Сравните эту прошивку со следующей где нет фулла. Говорят Моторола вносит порядка 15-20 изменений
в релизы прошивок. Найти не сложно, по-идее, где изменили. А чтобы все убедились, что возможно
поставить правленную прошивку, соберите такую просто изменив хотя бы один номер экстренного
вызова (их в прошивке видно невооруженным глазом) 911 и прочее. Без карточки и проверю.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Oktan
сообщение 5.11.2005, 8:06


МотоПисака
*****

Группа: Пользователи
Сообщений: 420
Регистрация: 2.4.2004
Из: Краснодар
Пользователь №: 2 916
Модель телефона: L7

Рейтинг: 197



Цитата(dion @ Пятница, 4 Ноября 2005, 20:12)
Кроме случая, если тел пускается из FLASH Mode. (До первой перезагрузки/выключения  )
*


Ну, допустим, UpTime моего телефона - в среднем 1-2 недели. может доходить до 2 месяцев. Так что мне это вариант подходит.
Юзер вышелВ друзьяВизиткаП/Я
К началу страницы
+Ответить
Ковырнём Прошивку ..., Hex Workshop 4.0, Hiew etc... · Патчи и всё для них · Forum
 

22 страниц V « < 17 18 19 20 21 > » 
Ответ в темуСоздание новой темы
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 6.8.2025, 9:46

Форум живёт: