Сейчас на форуме: -Sanchez- (+8 невидимых)

 eXeL@B —› Основной форум —› Взлом Android приложений
<< 1 ... 18 . 19 . 20 . 21 . 22 . 23 . 24 . 25 . 26 . 27 . 28 ... 38 . 39 . >>
Посл.ответ Сообщение

Ранг: 456.3 (мудрец), 340thx
Активность: 0.280.02
Статус: Участник
Android Reverser

Создано: 12 сентября 2011 12:37 · Поправил: SaNX
· Личное сообщение · #1

В теме обсуждаются вопросы взлома под андроид и соответствующие тулзы.
ТУТОРИАЛЫ:
--> Тутор от chelpa<--
--> От аффтора antilvl<--
--> дебаг .so<--

ТУЛЗЫ:
JEB
ApkAnalyser
--> Android Reverse Engineering (A.R.E.) <--
--> Apktool <--
--> Smali/baksmali <--
--> APKRecovery <--
--> Dex2Jar <--
--> APKInspector <--
--> Lucky Patcher 1.2.0 <--
--> Crack Assist 0.3 <--
--> ART <--
--> JD-GUI <--
--> DexInspector <--
--> Android unpacker <--
GikDbg


В аттаче fernflower, очень годный жава декомпилер.
0ece_06.12.2012_EXELAB.rU.tgz - fernflower.jar

-----
SaNX


| Сообщение посчитали полезным: 4kusNick, WmLiM, gsx3000, Maximus, CoolMax_86, Rustem, Oott, streit, t0ShA, BAHEK, sooqa, Ara, VodoleY, vden, Thegodofviruses, SDFnik, Soso, ff0h, RAMZEZzz, quency, XroM_N70, Alinator3500, Coderess, samtehnik, Isaev, dgyst, ALSSL, dosprog, omeh2003, d0wn, ELF_7719116, Bad_guy


Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 08 апреля 2015 22:06
· Личное сообщение · #2

версия иды?
надеюсь брекпоинты ставите уже после подключения дебагера к сошке?
или у себя локально выбрали сошку, подгрузили и думаете дебагер сам синхронизирует вам данные?
у меня так ни разу не получалось, хотя возможно это баг и кто то должен сообщить ильфаку



Ранг: 1.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 08 апреля 2015 22:09
· Личное сообщение · #3

reversecode
Version 6.5.140116 (32-bit)
брекпоинты после подключения




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 08 апреля 2015 22:11
· Личное сообщение · #4

поиграйтесь с 6.6, она же на паблике
хотя тут нужен кто то кто реально сможет на ондрОиде проверить...
на линухе в целом точки останова работают нормально, хотя прямо сейчас проверить не могу



Ранг: 90.7 (постоянный), 32thx
Активность: 0.020
Статус: Участник

Создано: 10 апреля 2015 12:14
· Личное сообщение · #5

У кого-нибудь есть доступ к IDA 6.7? Очень нужен бинарник android_server оттуда, чтобы на андроид 5 работал. Это из чейнджлога к этой версии IDA: Position-independent build of ARM Android remote debugger server. Значит он там должен быть именно такой как мне надо




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 10 апреля 2015 12:19
· Личное сообщение · #6

там протокол обмена с идой тоже мог чуть-чуть изменится иии ничего не заработает, надо смотреть..
с соурсов 6.6 пробуйте собрать, и потом пофиксить)) ну как вариант, фикс я могу попробовать посмотреть по дифу сдк



Ранг: 90.7 (постоянный), 32thx
Активность: 0.020
Статус: Участник

Создано: 10 апреля 2015 12:50
· Личное сообщение · #7

reversecode пишет:
с соурсов 6.6 пробуйте собрать, и потом пофиксить))

Да там по факту ничего поменяться не должно было, кроме параметров пересборки бинарника, чтобы запускался на пятом адроиде. Всё дело в том, что пересборка таких вещей для меня тёмный лес (последствия постоянного общения с виндой, избегая линукс). Я боюсь у меня такая операция может выжрать до недели времени и разбирательств, так как под рукой и уже скаченного нужного нет.
При попытке запуска android_server из IDA 6.6, выдает это "error: only position independent executables (PIE) are supported.". Как с этим бороться нашёл только то, что надо пересобрать под андроид-16. А я с нативом в андроиде, вообще не работал. Вот я и подумал, что может быть найдуться добрые и знающие люди, которые это смогли бы провернуть как-то. Я очень боюсь потерять кучу времени, так ничего и не добившись, так как очень мало этого свободного времени из-за лаки патчера




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 10 апреля 2015 13:49
· Личное сообщение · #8

не должно, а может
есть немного рефакторинга в протоколе на команде суспенд, вникать пока не хочу

| Сообщение посчитали полезным: chelpa

Ранг: 90.7 (постоянный), 32thx
Активность: 0.020
Статус: Участник

Создано: 10 апреля 2015 14:35
· Личное сообщение · #9

reversecode пишет:
есть немного рефакторинга в протоколе на команде суспенд, вникать пока не хочу

Ну если когда-нибудь появится не очень драгоценный излишек времени, буду сильно благодарен, если у Вас получилось бы пересобрать этот бинарник. У меня просто единственный девайс, на котором можно осуществлять реверс натива - это на андроид 5, который пользователь подарил, а мой старенький девайс galaxy s 4 wifi уже не справляется, тупо виснет на 80% приложений и играх. Если не получится и не хочется заморачиваться, то и за уже потраченное время и написанное спасибо




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 10 апреля 2015 16:39
· Личное сообщение · #10

сменили все же формат одной команды
http://pastebin.com/nwcfY1wt



Ранг: 171.0 (ветеран), 11thx
Активность: 0.050
Статус: Участник

Создано: 12 апреля 2015 20:58 · Поправил: Apokrif
· Личное сообщение · #11

chelpa пишет:
Ну если когда-нибудь появится не очень драгоценный излишек времени, буду сильно благодарен, если у Вас получилось бы пересобрать этот бинарник.

Этот вопрос обсуждали с reversecode в этой теме и засрали пару страниц.
Результат - не хватает сорцов чтобы пересобрать.
Возможно, для 6.6 или 6.7 ситуация поменялась.

reversecode - посмотрите плиз, может можно тепирь компильнуть?
Все равно кроме вам никто не сможет проверить...




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 12 апреля 2015 21:27 · Поправил: reversecode
· Личное сообщение · #12

насколько я помню нужен был каталог lib/arm_linux_gcc/pro.a и dump.o для арма
поскольку для x86 и x64 такие каталоги есть

нет, ничего не поменялось даже в ida68
т.е. для арм архитектуры нельзя дебаг сервер собрать



Ранг: 171.0 (ветеран), 11thx
Активность: 0.050
Статус: Участник

Создано: 15 апреля 2015 19:39
· Личное сообщение · #13

reversecode пишет:
нет, ничего не поменялось даже в ida68

Надо чтобы кто-то с честно купленной ida попросил доложить, а то так и будем на бобах сидеть...
А с ida <-> gdb много засад?




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 16 апреля 2015 08:20 · Поправил: reversecode
· Личное сообщение · #14

а обосновать как?

ильфаааак, пойжалуйста палажи в сдк файлики что бы сбулдить ондроид сервер
- зачем? в ида релизе два андроид сервера!
нуууу для пацанов с ляба
<отправить>



Ранг: 456.3 (мудрец), 340thx
Активность: 0.280.02
Статус: Участник
Android Reverser

Создано: 16 апреля 2015 08:36
· Личное сообщение · #15

reversecode
можно же написать, что доработал для себя (ну типа дополнительный вывод в лог или еще чтонить), а сбилдить не выходит.

-----
SaNX





Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 16 апреля 2015 08:42
· Личное сообщение · #16

ну вот те у кого ида под макось, пусть попробуют попросить))
хотя на самом то деле, там несколько фунок реверснуть с pro.a файла
остальное это гимор по созданию андроид окружения для билдинга




Ранг: 196.6 (ветеран), 11thx
Активность: 0.070.01
Статус: Участник

Создано: 16 апреля 2015 17:35
· Личное сообщение · #17

а как все это дело работает на эмуляторе? Взять с андроидом 4.4 и не париться с лолипопом на реальной железке, пока андроид_сервер с ПИКом не выложит кто-нибудь




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 16 апреля 2015 17:37
· Личное сообщение · #18

это предполагает что аднроид сервер дефакто без глючен
так что для любителей андроида все же лучше собраться в тесном кругу и добить соурсы сдк
что бы можно было фиксить сервер своими силами
а не ждать что может быть ильфак узнает о каком то баге и не пофиксит в следующей версии




Ранг: 196.6 (ветеран), 11thx
Активность: 0.070.01
Статус: Участник

Создано: 17 апреля 2015 18:17
· Личное сообщение · #19

это не так-то просто... попытался пересобрать с последним ndk (ильфак пользует какой-то очень древний), тупо перекидав нужные файлы в отдельную папку,
по undefined ref-ам родил такой файл: https://github.com/mailwl/android_server/blob/master/jni/ida.cpp

это еще не все, там еще несколько функций нет, которые не экспортируются, и одну я вообще не смог описать - callui.

С какого-то момента вообще сборка сломалась, и начала ругаться на хедеры в кишках линукса. В общем, пока что я забил




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 17 апреля 2015 18:42
· Личное сообщение · #20

callui это с sdk
она в описании есть
на прямую ее почти не вызывают, она инлайнится с хидеров и там же и обьявлена

Добавлено спустя 6 минут
кстати callui в сервере быть не должно, это експорт функиця с ida.dll
значит что то не так установлено в дефайнах и хватается для сборки android_plugin а не android_server




Ранг: 196.6 (ветеран), 11thx
Активность: 0.070.01
Статус: Участник

Создано: 17 апреля 2015 20:07
· Личное сообщение · #21

в том-то и дело, что в android_server эта функция есть, точнее это не функция, а указатель на нее

Code:
  1. .data:00092640 ; int (__fastcall *callui)(_DWORD, _DWORD, _DWORD, _DWORD)
  2. .data:00092640 callui          DCD sub_1BE6C           ; DATA XREF: sub_15968+1Co
  3. .data:00092640                                         ; sub_17074+1Co ...
  4.  
  5. .text:0001BE6C sub_1BE6C                               ; DATA XREF: .data:calluio
  6. .text:0001BE6C
  7. .text:0001BE6C var_2858        = -0x2858
  8. .text:0001BE6C var_2850        = -0x2850
  9. bla-bla-bla


меня больше беспокоят такие функции, как:
bool is_32bit_thumb_insn(uint16 code);

которые по имени нигде не светятся, но вызываются, если задифайнить __ARM__




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 17 апреля 2015 20:20 · Поправил: reversecode
· Личное сообщение · #22

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

is_32bit_thumb_insn временную заглушку
потом откопать ее можно

Добавлено спустя 2 минуты
но если что прототип
// Pointer to the user-interface dispatcher function
// This pointer is in the kernel

idaman callui_t ida_export_data (idaapi*callui)(ui_notification_t what,...);

Добавлено спустя 31 минуту
Code:
  1. bool __fastcall is_32bit_thumb_insn(signed int a1)
  2. {
  3.   return (unsigned int)((a1 >> 11) - 29) <= 2;
  4. }





Ранг: 196.6 (ветеран), 11thx
Активность: 0.070.01
Статус: Участник

Создано: 17 апреля 2015 21:29
· Личное сообщение · #23

думаешь стоит восстанавливать дебаггер? Высер хексарма от android_server вполне можно скормить ндк, но применений пока вообще не видно, читерить в современных донат-говноиграх все равно не получится, все обсчитывается на сервере




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 17 апреля 2015 21:34
· Личное сообщение · #24

ну это решать андроид спецам в теме)
SaNX Apokrif chelpa [wl]
я лишь могу как то слегка помогать вам



Ранг: 90.7 (постоянный), 32thx
Активность: 0.020
Статус: Участник

Создано: 20 апреля 2015 07:40
· Личное сообщение · #25

[wl] пишет:
Высер хексарма от android_server вполне можно скормить ндк, но применений пока вообще не видно, читерить в современных донат-говноиграх все равно не получится, все обсчитывается на сервере

Ну как показывает практика, в 80% случаев на сервере лишь проверки, ответы которого вполне можно фиксить. Дебаггер в большей степени нужен чтобы понимать дикий замес в нативе из разных движков программирования (LUA, NET, JavaScript...). Лично для меня андроид сервер важен, чтобы на андроид 5 можно было нормально дебаджить. Да и не понять некоторые вещи без конкретного пошагового прохода, я ж не гений, а средней руки реверсер, может даже и похуже))



Ранг: 171.0 (ветеран), 11thx
Активность: 0.050
Статус: Участник

Создано: 20 апреля 2015 19:15 · Поправил: Apokrif
· Личное сообщение · #26

[wl] пишет:
по undefined ref-ам родил такой файл: https://github.com/mailwl/android_server/blob/master/jni/ida.cpp

Выкладывай свой (полный или нет) комплект для сборки нерабочего android_server: Android.mk, Application.mk, ida.cpp и т.д.
Даже если он и не собирает пока.

https://github.com/mailwl/android_server не получается собрать под 9d и 10d пока...
Действительно, что же за NDK илфак пользует?

Когда не работает, интерес быстро теряется, это точно.
Там же вроде совсем небольшой набор получается, дольше все эти файлы собирать по крупицам.
У меня сейчас нет ни времени ни интереса этим заниматься.
У chelpa похоже интерес есть, ему просто надо помочь начать.
Я по мелочам постараюсь помочь.
Думаю, что от reversecode больше толку будет, чем от меня.



Ранг: 90.7 (постоянный), 32thx
Активность: 0.020
Статус: Участник

Создано: 21 апреля 2015 10:03 · Поправил: chelpa
· Личное сообщение · #27

Apokrif пишет:
У chelpa похоже интерес есть, ему просто надо помочь начать

У меня довольно ограниченные знания в этом вопросе Я довольно сильно плаваю в теме. Более или менее стабильный и относительно удобный инструмент для дебага конечно нужен на андроид. И IDA более или менее справляется, но время на доведение дела до ума + накопление нужной для этого информации в мозг слишком велико чисто для меня. Потому мне проще будет в определённый момент снести андроид 5, послав всех пользователей с его поддержкой и установить какую-нибудь 4.4 и дебаджить там версией с паблика IDA 6.6. Но это было бы не красиво с моей стороны, так как девайс этот мне подарил пользователь именно для исследования андроид 5
Кстати, а есть ли андроид сервер для x86? Очень подошёл бы для bluestacks




Ранг: 196.6 (ветеран), 11thx
Активность: 0.070.01
Статус: Участник

Создано: 21 апреля 2015 10:39
· Личное сообщение · #28

Ильфак использует такую версию:
ANDROID_NDK?=c:/android-ndk-r4b/

собрать так и не могу, не находит кучу типов для заголовка эльф-файла, пока что вообще нет идеи, как исправить




Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 21 апреля 2015 11:02 · Поправил: reversecode
· Личное сообщение · #29

ндк собрать или сервер андроида?
ну на пастебин закинь хоть лог компиляции, посмотрим что он не находит



Ранг: 590.4 (!), 408thx
Активность: 0.360.18
Статус: Модератор

Создано: 21 апреля 2015 12:33
· Личное сообщение · #30

reversecode
Сконфигурил я ради интереса эклипс для билда сервера под ndk10, но в итоге все равно упираемся в pro.a для арма, которого нет в поставке SDK.
Code:
  1. /usr/share/android-ndk-r10d/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lpro
  2. ../sources/server.cpp:101: error: undefined reference to 'rpc_server_t::get_debugger_instance()'
  3. ../sources/server.cpp:114: error: undefined reference to 'irs_error(idarpc_stream_struct_t*)'
  4. ../sources/server.cpp:115: error: undefined reference to 'winerr'
  5. ../sources/server.cpp:157: error: undefined reference to 'rpc_server_t::get_debugger_instance()'
  6. ../sources/server.cpp:161: error: undefined reference to 'rpc_engine_t::term_irs()'
  7. ../sources/server.cpp:171: error: undefined reference to 'term_subsystem()'
  8. ... и так далее


-----
старый пень





Ранг: 1053.6 (!!!!), 1078thx
Активность: 1.060.81
Статус: Участник

Создано: 21 апреля 2015 12:37 · Поправил: reversecode
· Личное сообщение · #31

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


<< 1 ... 18 . 19 . 20 . 21 . 22 . 23 . 24 . 25 . 26 . 27 . 28 ... 38 . 39 . >>
 eXeL@B —› Основной форум —› Взлом Android приложений
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати