iOS逆向工程基本概念

来源:互联网 发布:淘宝怎么发链接充话费 编辑:程序博客网 时间:2024/05/29 13:23

        iOS App是一个运行于沙箱(sandbox)中的程序,但并不表示我们对它素手无策,事实上,可以通过逆向工程来看个究竟


软件开发、CPU工作原理和iOS有透彻的理解 

使用逆向分析的方法可以推导出这个程序的设计思路、内部算法和实现细节 


工具主要分为四大类:监测工具、开发工具、反汇编器(disassembler)调试器(debugger


检测工具可以记录并显示目标程序的某些操作,比如网络活动、文件访问等 

iOS常用的检测工具有RevealtcpdumplibNotfyWatchPonyDebugger 

 IDA是逆向工程中最常用的工具之一、横跨Windows/Linux/Mac平台,把目标程序的可执行文件作为输入,然后输入这个程序的汇编代码,甚至伪代码 

反编译是跟CPU架构相关的,但像IDA这样强大的反编译支持多种CPU架构


调试器:

Xcode 中经常使用的是单步调试,,程序员可以在某一行代码上设施断点,使调试器能够在那一行代码执行之前暂停程勋执行,并且显示程序的当前状态 

熟悉Xcode调试的人也通常知道,Xcode的调试器,不过就是把GDB(GNU Debugger)LLDB做了一层图形化的包装,集成在一起更好使用而已 


小结:介绍了iOS软件逆向工程的基本概念、作用和一般的逆向过程,以及需要用到的一些有代表意义的工具等

1 0