Skip to content

MASTG-TECH-0065: Engenharia Reversa de Aplicativos iOS

Engenharia Reversa no iOS

A engenharia reversa no iOS é uma questão mista. Por um lado, aplicativos programados em Objective-C e Swift podem ser desmontados de forma satisfatória. No Objective-C, os métodos de objeto são chamados por meio de ponteiros de função dinâmicos chamados "selectors", que são resolvidos por nome durante a execução. A vantagem da resolução de nomes em tempo de execução é que esses nomes precisam permanecer intactos no binário final, tornando a desmontagem mais legível. Infelizmente, isso também significa que não há referências cruzadas diretas entre métodos disponíveis no desmontador e a construção de um grafo de fluxo é desafiadora.

Referências