Static analysis and reconstruction of deep link handling in compiled applications
Abstract:
A disassembler module is configured to generate ARM code by performing a disassembly of a compiled iOS application. An intermediate representation generator module is configured to: (i) from the ARM code, identify an implementation of a predetermined method of providing a deep link into the iOS application; and (ii) generate intermediate representation code by formatting portions of the ARM code having predetermined patterns according to predetermined instructions, respectively. A loader module is configured to translate the intermediate representation code into executable code including objects in a tuple format and to load the executable code for execution. An execution and emulation module is configured to: (i) execute the executable code line by line to identify NSURL objects; (ii) emulate the NSURL objects to identify valid ones of the NSURL objects; (iii) determine deep links for the valid ones, of the NSURL objects, respectively; and (iv) store the deep links in memory.
Information query
Patent Agency Ranking
0/0