eXTracted INternals

eXTracted INternals
 
ФорумФорум  ЧаВоЧаВо  ПоискПоиск  РегистрацияРегистрация  ПользователиПользователи  ГруппыГруппы  Вход  

Поделиться | 
 

 IDA Loader for Symbian 9.x (aka S60 3rd) applications

Предыдущая тема Следующая тема Перейти вниз 
На страницу : 1, 2, 3, 4, 5  Следующий
АвторСообщение
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Пт 13 Июл - 5:22

This has happened at last! I'm sick and tired about absence of IDA loader for symbian 9 applications, so I've decide to implement it myself.

What it can do:
+ Detect the OS version of the binary (allows to correct it manually)
+ Detect the compressed files
+ Load Symbian 9 applications
+ Load older Symbian applications
+ Parse imports and exports
+ Allows to have multiple ids folders: for each version symbian you can have the separate folder with ids files.
+ Fully replaces the existing loader made by ilfak.
+ Open Source !!!

What it can't do:
- unpack the compressed files
- show capabilities

Here's the source code:
http://extint.narod.ru/Files/epoc9ldr.rar

And here's the binary for IDA 5.2:
http://extint.narod.ru/Files/IDA52epoc.rar

As addintion, here are ids files for Symbian 9:
http://extint.narod.ru/Files/epoc9.rar

To make it parse import correct make sure that your ids files are in "arm" subdirectories. IDA looks for them there. That's how the directory tree should look like:


--------------------------------------------------------------
А теперь по русски:

Свершилось товарищи! Меня достало отсутсвие лоадера для симбиан 9 приложений от IDA 5.1 и я решил взять инициативу в свои руки.

Сорцы вот:
http://extint.narod.ru/Files/epoc9ldr.rar

Сбилженый лоадер для IDA 5.2:
http://extint.narod.ru/Files/IDA52epoc.rar

Cорцы пока что заточены только под ARM-бинари Symbian 9.x (естественно распакованые Petran). Чтобы отображало импорты, будут нужны ids для 9.x. Брать их тут:
http://extint.narod.ru/Files/epoc9.rar

Вот так должно выглядеть ваше дерево каталогов.


*.ids файлы для каждой версии ОС должны лежать в подкаталоге "arm".


Последний раз редактировалось: (Вс 23 Дек - 14:53), всего редактировалось 8 раз(а)
Вернуться к началу Перейти вниз
Посмотреть профиль
wl



Количество сообщений : 127
Дата регистрации : 2007-02-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Пт 13 Июл - 6:07

dll не парсятся.
http://j2me.ucoz.ru/asn1.dll
пример, на котором можно поправить (вроде есть в os60v3)
Вернуться к началу Перейти вниз
Посмотреть профиль
wl



Количество сообщений : 127
Дата регистрации : 2007-02-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Пт 13 Июл - 6:22

и ещё. Я заменял ординалы на смещения импортов, чтобы в окне импортов были не off_102, а имена функций (мангленных конечно, но искать конкретную функцию в этом окне проще). Для этого потребуется секция XTRN
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Пт 13 Июл - 7:12

wl пишет:
dll не парсятся.
http://j2me.ucoz.ru/asn1.dll
пример, на котором можно поправить (вроде есть в os60v3)
Не фиг пихать запакованую. Все открывается нормально. Вот смотри база:
http://extint.narod.ru/Temp/asn1.rar
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Пт 13 Июл - 7:13

wl пишет:
и ещё. Я заменял ординалы на смещения импортов, чтобы в окне импортов были не off_102, а имена функций (мангленных конечно, но искать конкретную функцию в этом окне проще). Для этого потребуется секция XTRN

Это не изза XTRN. Просто дебильная схема создания импорта самими средствами SDK. Я потом придумаю как сделать красивее.
Вернуться к началу Перейти вниз
Посмотреть профиль
wl



Количество сообщений : 127
Дата регистрации : 2007-02-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Пт 13 Июл - 8:04

я пихаю запакованную??? да я просто её сжал, чтобы меньше денег потратить на заливание.
ида 4.8 у меня нет, а 5.0 не открывает эту базу. В 5.0 код вообще не распознался, и в окне экспорта был только "start"
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Пт 13 Июл - 10:27

седня сбилжу и проверю под 5.0. Такого не может быть чтобы так резко отличалось. Ты уверен, что выбирал именно сбилженый лоадер? потому что у иды точно такой же лоадер уже есть. Убей/перемести для профилактики epoc.ldw в каталоге loaders, а потом сбилдь мой и положи в loaders
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Пт 13 Июл - 12:46

wl, таки ты прав, придется для импорта создавать фиктивный сегмент и патчить базу.
Вернуться к началу Перейти вниз
Посмотреть профиль
Ceaser



Количество сообщений : 3
Дата регистрации : 2007-07-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вс 15 Июл - 10:19

А какой версией иды вы загружаете Symbian 9.x?
Допустим есть exe который собран под armv5. Берем его (exe) из sis file, потом "petran text.exe >text.dump". А дальше?
Вернуться к началу Перейти вниз
Посмотреть профиль
Ceaser



Количество сообщений : 3
Дата регистрации : 2007-07-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вс 15 Июл - 12:17

Я так понял загвоздка в
Код:
file2base(li,pEpocHeader->iCodeOffset,pEpocHeader->iCodeBase,SegmentEnd, FILEREG_PATCHABLE);
тобиш в загрузке сжатого сегмента кода. А как его расжимать? Я так понимаю что можно petran но как?
Вернуться к началу Перейти вниз
Посмотреть профиль
Ceaser



Количество сообщений : 3
Дата регистрации : 2007-07-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вс 15 Июл - 12:29

а все понял, нашел опции, все вроде заработало...
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вт 17 Июл - 0:17

Сорцы обновлены. Сделал импорт через внешний сегмент.
Вернуться к началу Перейти вниз
Посмотреть профиль
wl



Количество сообщений : 127
Дата регистрации : 2007-02-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Ср 18 Июл - 3:54

экспортов от длл по прежнему не видно (только start).

если секцию импорта создавать так:
Код:

add_segm (1, SegmentStart , SegmentEnd, ".idata", "XTRN");
тогда она покрасится в красный цвет Smile
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Ср 18 Июл - 4:51

Экспорты я не сделал. А ты видать в прошлый раз про импорты говорил, имея в виду экспорты Smile
Вернуться к началу Перейти вниз
Посмотреть профиль
wl



Количество сообщений : 127
Дата регистрации : 2007-02-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Ср 18 Июл - 8:53

не, с импортами всё отлично (только есть какая-то непонятная хрень - offset, которые иногда находятся в старшей половине слова с ординалом).
Кстати, как считаешь, реально ли написать конвертор symbian exe -> elf? тогда можно было бы без проблем загружать его в эмулятор и дебажить функции проверки ключей.
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Ср 18 Июл - 22:38

wl пишет:
не, с импортами всё отлично (только есть какая-то непонятная хрень - offset, которые иногда находятся в старшей половине слова с ординалом).
Надо в сорцы toolchain глянуть, самого напрягает...

wl пишет:

Кстати, как считаешь, реально ли написать конвертор symbian exe -> elf? тогда можно было бы без проблем загружать его в эмулятор и дебажить функции проверки ключей.
А в какой эмулятор?
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Ср 18 Июл - 22:42

Сорцы обновлены.

1) работает экспорт
2) добавлено предупреждение при попытке грузить запакованый файл
3) начал собирать инфу по версиям билд-утилит для того чтобы можно было детектить версию ОС. Смотрите DetectVersion() и таблицу Versions в utils.cpp
4) функция set_compiler() теперь работает как надо: лоадер автоматом выставляет компилер GNU.
5) сделал проставление ARM/Thumb режима для экспортов и Entry point.
Вернуться к началу Перейти вниз
Посмотреть профиль
wl



Количество сообщений : 127
Дата регистрации : 2007-02-15

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Чт 19 Июл - 2:25

эмулятор TRACE32 ARM: http://www.lauterbach.com/
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Чт 19 Июл - 3:24

Та в принципе думаю можно. Но не напрямую, а через IDA.
Вернуться к началу Перейти вниз
Посмотреть профиль
twit



Количество сообщений : 57
Дата регистрации : 2007-07-24

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вт 24 Июл - 8:46

А в ручную можно наложить ids из темы на файл?
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вт 24 Июл - 11:09

twit пишет:
А в ручную можно наложить ids из темы на файл?
Применить ids вручную можно. Но что значит "из темы"?
Вернуться к началу Перейти вниз
Посмотреть профиль
twit



Количество сообщений : 57
Дата регистрации : 2007-07-24

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вт 24 Июл - 11:44

Из этой темы, твоего форума Smile
так как их наложить? Делаю просто file>load>ids, но ничего не меняется, как надо?
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вт 24 Июл - 13:41

Подробнее опиши как базу создавал и чего вдруг решил загружать ids.
Вернуться к началу Перейти вниз
Посмотреть профиль
twit



Количество сообщений : 57
Дата регистрации : 2007-07-24

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вт 24 Июл - 20:57

Открыл exe файл в IDA'е, разобрал по частям вроде, но есть очень много такого, после кода: DCD XXXXXXXX, где XXXXXXXX больше Е0000000. Я так понял что это переходники к апи, или что-то вроде этого.
Вернуться к началу Перейти вниз
Посмотреть профиль
Hex

avatar

Количество сообщений : 397
Возраст : 35
Дата регистрации : 2006-07-12

СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   Вт 24 Июл - 23:17

twit пишет:
но есть очень много такого, после кода: DCD XXXXXXXX, где XXXXXXXX больше Е0000000. Я так понял что это переходники к апи, или что-то вроде этого.

Это код в ARM режиме Smile Поставь курсов на начало этих DCD, сделай undefine, Нажми ALT-G поставь для регистра T значение 0. После этого сделай кодом.
Вернуться к началу Перейти вниз
Посмотреть профиль
Спонсируемый контент




СообщениеТема: Re: IDA Loader for Symbian 9.x (aka S60 3rd) applications   

Вернуться к началу Перейти вниз
 
IDA Loader for Symbian 9.x (aka S60 3rd) applications
Предыдущая тема Следующая тема Вернуться к началу 
Страница 1 из 5На страницу : 1, 2, 3, 4, 5  Следующий

Права доступа к этому форуму:Вы не можете отвечать на сообщения
eXTracted INternals :: Cтатьи :: Mobile and Embedded-
Перейти: