Найдите смещения структуры из ядра Android LinuxAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Найдите смещения структуры из ядра Android Linux

Сообщение Anonymous »

Я не эксперт в этой области, возможно, я неправильно понимаю некоторые основы.
Я использую Genymotion для эмуляции Android , при исследовании некоторых CVE ядра Android мне нужно проанализировать структуры ядра для определения смещений элементов.
Я нашел сообщение в блоге, в котором демонстрируется использование GDB в образе vmlinux ядра Linux для проверки макетов конструкций, например:

Код: Выделить всё

gdb> ptype /o struct binder_ref
/* offset      |    size */  type = struct binder_ref {
...
/*     88      |       8 */    struct binder_node *node;
/*     96      |       8 */    struct binder_ref_death *death;
Однако я не понимаю, как это применимо к ядрам Android.
В Linux символы отладки обычно доступны через vmlinux, но в образах Android я вижу только такие вещи, как boot.img или иногда bzImage, и я не до конца понимаю разницу или какой из них содержит символы ядра, необходимые для отладки.
Мой вопрос:

Как получить или извлечь смещения структуры ядра (как в приведенном выше примере для structbinder_ref) в среде ядра Android? Каков правильный рабочий процесс для использования GDB или другого инструмента в этом случае?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»