Microsoft Word - iOSAppReverseEngineering.docx

(Romina) #1

Figure 10- 98 iMessage delivered


10.4 Result Interpretation


Compared to previous practices, the reverse engineering methodology used in this chapter


doesn’t change much, but the overall workload has increased tremendously; As for difficulty,


this chapter is way harder than chapter 7 and 8, though they’re all targeting system Apps. To


reverse the functions of detecting and sending iMessages, our general thoughts are as follows.



  1. Cut into the code via UI


The changing from “Text Message” to “iMessage”, green color to blue color, and “Send”


button itself are all UI visualizations produced by programs. As long as we can describe what we


see on UI, we can cut into the App from there. In this chapter, our cut-in points are message


placeholder and “Send” button. Their UI functions can be easily located with Cycript, and are


helpful in further analysis.



  1. Browse and test class-dump headers to find interesting dots


Objective-C headers are clearly organized, methods are explicitly named. Their high


readability is the perfect place for us to look for reverse engineering clues. Testing private


methods, properties and instance variables with Cycript can be really helpful when we want to

Free download pdf