Skip to content

An IDA Pro loader module for Pixel phone bootloader (abl stage), setting correct offsets, fixing function names, adding some C-style structs and annotations.

License

Notifications You must be signed in to change notification settings

0xAbby/pixel_loader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 

Repository files navigation

pixel_loader

This is an IDA Pro loader, that can help improve the process of reversing the ABL stage of the Pixel phone bootloader.

Tested on bootloaders from:

  • Pixel 6 / 6 Pro and 6a
  • Pixel 7 / 7 Pro
  • Pixel 8 / 8 Pro

NOTE: currently the loader doesn't support some of the changes added to the ABL since June 5th 2024, It'll be fixed later.

Installation

Simply copy the script to the following path:

$IDAPRO/loaders/

Where $IDAPRO is the folder/directory where the ida executable is located. For example on Windows that would be something like C:\Program Files\IDA Pro 8.3\loaders\

Afterwards, whenever a pixel ABL is loaded into ida pro, the loader module will show up in the options, simply click ok.

First time

So, far the loader will help with:

  • Finding the function table (containing offests of where the functions . are, their size and an offset to their name as null-terminiated string).
  • Creating some C-style structs and applying.
  • Marking interesting areas in the bootloader binary.

It will be updated later to include improved function types/identifying embedded objects...etc to help in reverse engineering and research.

Example

Before the loader IDA pro tries to auto-guess where the valid instructions are (This image is from IDA Pro 8.3) and normally its invalid Example 1

After the loader has been installed, this is the results:

Example 2

Example 1

PS: the labeling/translation of operands in MRS/MSR instructions is done by this plugin:

https://github.com/NeatMonster/AMIE

About

An IDA Pro loader module for Pixel phone bootloader (abl stage), setting correct offsets, fixing function names, adding some C-style structs and annotations.

Topics

Resources

License

Stars

Watchers

Forks

Languages