вторник, 29 апреля 2014 г.

Siemens SGold: взлом через Java

SSST - это такой Java мидлет для Siemens платформы SGold, который содержит набор функций для переделки вашего телефона в нечто иное, приближённое к смартфонам, посредством установки необходимых патчей для запуска исполнительных файлов ELF и патчей разблокировки железных/программных возможностей абсолютно без использования компьютера, кабеля и других вспомогательных средств. Функцию патчера этот мидлет пока ещё не содержит, но зато содержит портативный ELF - загрузчик для запуска патчера на эльфе (DPatcher), которым можно всё поставить, а также есть наибыстрейший генератор ESN и HASH ключей, он и не генератор, а просто считывает их с BootCore и OTP Flash (AMD флеш не поддержитвается) прямо с Java. К слову, имеется ещё дампер, эта опция позволит вам считать адресное пространство в файл прямо из телефона.
ELF - Загрузчик
Эта самая главная опция данного мидлета. Позволяет запустить ELFLoader из Java для исполнения эльфов. Необходимым элементом для его работы является библиотека прошивочных ф-ий в формате blib. Именно из неё будет загружатся всё, до сих пор найденное API Siemens. Для каждого телефона и прошивки нужен такой свой swi.blib. Собственно, брать из просторов интернета и искать на сименсфан сайтах и форумах, на базе патчей, или же сгенерировать программой Smelter из библиотеки VKP, которую в свою очередь можно сгенерировать по паттернам (шаблонам опкода ARM/THUMB - процедур), загрузя искомый FullFlash (Ссылки на сайты / форумы смотреть в разделе "Ссылки"). Генерация swi.blib и портирование библиотек на старые прошивки это отдельная тема вообщем. Будем надеятся у вас прошивка последняя. На них всё найдено.
"Имя файла загрузчика"
Это имя ELF - файла, который и создаёт среду для запуска и исполнения других эльфов. Он находится в JAR архиве в каталоге /bin/.  Собственно, вы можете добавить свой альтернативный загрузчик и запускать его, не меняя код самого мидлета, и при этом сохранить стандартный.
"Путь к swi.blib"
Это путь до файла библиотеки в файловой системе телефона.
"Включить патчи: ESI, KeyHook, PIT"
Это опция выбора установки патчей, входящих в стандартный ELFPack. Что это значит? Это значит, что при всех галочках, загрузчик эльфов, будет обеспечивать почти полный функционал стандартного ELFPack. В противном случае, некоторые эльфы откажутся работать или будут работать некорректно. Эти патчи генерируются в реальном времени под вашу текущую прошивку и устанавливаются виртуально. А выбор дан пользователю по одной простой причине, что и без них можно запустить эльфы, а ваша прошивка может оказатся настолько несовместимой с ними, что при установке / работе телефон будет выключатся от неисправимой ошибки.
ESI - патч, для отображения текста в cтандартных меню и всплывающих сообщениях в обход ленгпака.
KeyHook - патч, позволяющий отлавливать действия клавиатуры в эльфах без GUI.
PIT - патч, для замены стандартной прошивочной графики PNG файлами, подгружаемыми из фс.

Перед запуском создайте небольшую структуру папок, к примеру на диске "0://"
0:\Zbin\
Корневая папка для загрузчика.
0:\Zbin\daemons\
Папка содержит в себе эльфы для автозапуска при загрузке ELFLoader'a.
0:\Zbin\etc\
Папка содержит в себе конфигурационные файлы от эльфов и самого загрузчика jELFLoader.bcfg. Редактируются эльфом CfgEdit.elf.
0:\Zbin\img\
Папка содержит в себе png-файлы для замены ими прошивочных картинок. Чтобы заменить картинку достаточно положить искомый png файл и переименовать его в соответствии с ID заменямой иконки (к примеру, "0.png" заменит прошивочную картинку с ID = 0 (обычно это иконка будильника)). Узнать ID стандартных картинок можно через эльф SHMELER.elf.
Для удобства можете использовать готовую структуру папок и эльфов в архиве. В который уже входят swi.blib для некоторых телефонов.
При запуске могут случатся выключения телефона. Это всё нормально и допустимо для этого метода. Просто попробуйте снова и дождитесь"Запущено". Далее выходим из мидлета, заходим в Card-Explorer и запускаем эльфы. Если же хотите поставить настоящий ELFPack, то возьмите эльф DPatcherвнимательно прочтите инструкцию к нему (ибо тут можно вовсе повредить ПО телефона, осторожно). Найдите для своего телефона и прошивки ElfPack.vkp и swilib.vkp и сначала поставьте swilib.vkp, затем сам ELFPack.vkp,  только так и не наоборот. Как поставите, следуйте стандартным инструкциям по настройке эльфов.
ESN и HASH
С помощью этого мидлета можно шустро считать ESN и HASH ключи для расчёта ключей SKey и BKey соответствующими программами.HASH записан в BootCore области Flash, а ESN зашифрован в OTP области. Считывание ESN из Flash от производителя AMD не поддерживается. Так как всё просто считывается, времени это занимает немного, около 5-10 секунд.
Дампер
Дампер позволит вам слить доступное адресное пространство. Им можно и следует создать бекап Flash, сохранить его в надёжное место.Flash на Siemens SGold могут быть как 32 МБ, так 64 МБ, последнее относится к неординарному Siemens SK65. И так как на большинстве телефонов этой платформы, нету поддержки MMC / SD, то можно слить бекап по частям. Хотя бы слейте первые 128 кб от Flash, это облаcть BootCore.
"Путь к файлу" - путь до создаваемого файла дампа или бекапа.
"Адрес" - начальный адрес откуда будет сливатся дамп, задаётся в формате HEX.
"Размер" - размер сливаемого  дампа, задаётся в формате HEX.
Чтобы сделать полный бекап 32 МБ Flash, надо задать адрес 0xB0000000 и размер 0x02000000 (для 64 МБ: 0x04000000). Кто раньше интересовался Siemens знает, что адрес начала Flash есть 0xA0000000. Так то да, но мидлет видит только 2 ГБ пространства, в поле его зрения не попадает Flash, и половина SDRAM (0xA8000000). Но к счастью, есть зеркальное адресное пространство Flash (0xB0000000), она используется именно для записи: ФСEEPROM итд. Но мидлет также дополнительно размечает адрес 0xB8000000, создавая при этом зеркало для SDRAM. Иными словами, вместо 0xAxxxxxxx берите 0xBxxxxxxx.
Скачать Версия: 1.2