История изменений
Исправление EXL, (текущая версия) :
i-rinat
@bugfixer
В общем, спасибо за помощь, не знал о такой особенности в древних ARM’ах с этим выравниванием адресов. По итогу получилось сделать то, что я хотел – снятие скриншотов экрана с подобных мобилок в удобоваримый формат:
- https://baat.exlmoto.ru/~exl_lab/screens/E398_1.gif
- https://baat.exlmoto.ru/~exl_lab/screens/E398_2.png
- https://baat.exlmoto.ru/~exl_lab/screens/L6_1.png
- https://baat.exlmoto.ru/~exl_lab/screens/L6_2.png
Теперь можно перейти к написанию чего-нибудь интересненького, благодаря тому что можно дёргать функции прошивки платка телефона по сути превращается в полноценный GSM/GPRS-модуль для различных самоделок и т. д.
Если кому интересно – грязный и пока ещё неотрефакторенный код:
https://github.com/EXL/P2kElfs/blob/master/Screenshot/Screenshot.c
Там довольно интересный фреймворк для приложений и псевдомногозадачности используется, похожий на State Machine подвязанный на Event’ы, а прямая адресация без всякой защиты позволяет делать очень интересные вещи, к примеру, читать куски самой прошивки, а ещё уникальные для каждого устройства калибровки NVRAM (PDS) просто выполнив какой-нибудь fread(void *) 0x10010000, 0xFFFF, 1, dump_file)
, ну и оперативку точно так же можно сдампить.
С калибровками отдельная тема, так как там хранится информация о SIM-Lock, эту область очень сильно защищают, к примеру прошивальщики не могут оттуда ничего читать и писать, а SOC-чип вообще шифрует некоторые ячейки данных 3DES и своим серийным номером. В общем, так просто не прочитать и не изменить их извне, но с помощью функций прошивки и прямой адресации – пожалуйста.
Исправление EXL, :
i-rinat
@bugfixer
В общем, спасибо за помощь, не знал о такой особенности в древних ARM’ах с этим выравниванием адресов. По итогу получилось сделать то, что я хотел – снятие скриншотов экрана с подобных мобилок в удобоваримый формат:
- https://baat.exlmoto.ru/~exl_lab/screens/E398_1.gif
- https://baat.exlmoto.ru/~exl_lab/screens/E398_2.png
- https://baat.exlmoto.ru/~exl_lab/screens/L6_1.png
- https://baat.exlmoto.ru/~exl_lab/screens/L6_2.png
Теперь можно перейти к написанию чего-нибудь интересненького, благодаря тому что можно дёргать функции прошивки платка телефона по сути превращается в полноценный GSM/GPRS-модуль для различных самоделок и т. д.
Если кому интересно – грязный и пока ещё неотрефакторенный код:
https://github.com/EXL/P2kElfs/blob/master/Screenshot/Screenshot.c
Там довольно интересный фреймворк для приложений и псевдомногозадачности используется, похожий на State Machine подвязанный на Event’ы, а прямая адресация без всякой защиты позволяет делать очень интересные вещи, к примеру, читать куски самой прошивки, а ещё уникальные для каждого устройства калибровки NVRAM (PDS) просто выполнив какой-нибудь fread(void *) 0x10010000, 0xFFFF, 1, dump_file)
, ну и оперативку точно так же можно сдампить.
Исправление EXL, :
i-rinat
@bugfixer
В общем, спасибо за помощь, не знал о такой особенности в древних ARM’ах с этим выравниванием адресов. По итогу получилось сделать то, что я хотел – снятие скриншотов экрана с подобных мобилок в удобоваримый формат:
- https://baat.exlmoto.ru/~exl_lab/screens/E398_1.gif
- https://baat.exlmoto.ru/~exl_lab/screens/E398_2.png
- https://baat.exlmoto.ru/~exl_lab/screens/L6_1.png
- https://baat.exlmoto.ru/~exl_lab/screens/L6_2.png
Теперь можно перейти к написанию чего-нибудь интересненького, благодаря тому что можно дёргать функции прошивки платка телефона по сути превращается в полноценный GSM/GPRS-модуль для различных самоделок и т. д.
Если кому интересно – грязный и пока ещё неотрефакторенный код:
https://github.com/EXL/P2kElfs/blob/master/Screenshot/Screenshot.c
Там довольно интересный фреймворк для приложений и псевдомногозадачности используется похожий на State Machine подвязанный на Event’ы, а прямая адресация без всякой защиты позволяет делать очень интересные вещи, к примеру, читать куски самой прошивки, а ещё уникальные для каждого устройства калибровки NVRAM (PDS) просто выполнив какой-нибудь fread(void *) 0x10010000, 0xFFFF, 1, dump_file)
, ну и оперативку точно так же можно сдампить.
Исходная версия EXL, :
i-rinat
@bugfixer
В общем, спасибо за помощь, не знал о такой особенности в древних ARM’ах с этим выравниванием адресов. По итогу получилось сделать то, что я хотел – снятие скриншотов экрана с подобных мобилок в удобоваримый формат:
- https://baat.exlmoto.ru/~exl_lab/screens/E398_1.gif
- https://baat.exlmoto.ru/~exl_lab/screens/E398_2.png
- https://baat.exlmoto.ru/~exl_lab/screens/L6_1.png
- https://baat.exlmoto.ru/~exl_lab/screens/L6_2.png
Теперь можно перейти к написанию чего-нибудь интересненького, благодаря тому что можно дёргать функции прошивки платка телефона по сути превращается в полноценный GSM/GPRS-модуль для различных самоделок и т. д.
Если кому интересно – грязный и пока ещё неотрефакторенный код:
https://github.com/EXL/P2kElfs/blob/master/Screenshot/Screenshot.c
Там похоже довольно интересный фреймворк для приложений и псевдомногозадачности используется похожий на State Machine подвязанный на Event’ы, а прямая адресация без всякой защиты позволяет делать очень интересные вещи, к примеру, читать куски самой прошивки, а ещё уникальные для каждого устройства калибровки NVRAM (PDS) просто выполнив какой-нибудь fread(void *) 0x10010000, 0xFFFF, 1, dump_file)
, ну и оперативку точно так же можно сдампить.