
Plugin do IDA que resolve chamadas PPL para a função PPL subjacente real.
PPLorer é um plugin do IDA que resolve chamadas PPL para a função PPL subjacente real.
~/.idapro/plugins/pplorer.py apontando para pplorer.py no repositório clonadoEdit -> Plugins -> PPLorer -> Analyse IDBTL;DR
CTRL-SHIFT-X ou Right Click -> Jump to PAC XREFs em locais adequados abrirá uma janela de seleção
Do local de chamada para a função PPL
Da função PPL para locais de chamada

A PPL tem um gate pelo qual passam todas as chamadas do kernel. Antes desse gate, cada chamada coloca em um registrador pré-determinado (X15) o seletor da função PPL que deseja chamar. O controle será transferido para o dispatch da PPL, que verificará se uma função válida foi selecionada e, em seguida, irá para a tabela de funções PPL e a chamará. Encontramos o dispatch, extraímos o tamanho da tabela de funções PPL e seu endereço. Em seguida, detectamos todas as chamadas ao gate vindas do lado do kernel e obtemos o seletor PPL que é colocado em X15. Para cada chamada, associamos uma função da tabela PPL e, para cada função na tabela PPL, adicionamos todas as chamadas de kernel correspondentes.
Autoria de Omer Porzecanski, da Cellebrite Labs.
Baseado no pacXplorer por Ouri Lipner, enquanto estava na Cellebrite Labs.
Desenvolvido e testado para IDA 8 no OS X, iOS 15.X+ para A12+
clique aqui (Talentos remotos são bem-vindos)