IDA

前言

Interactive Disassembler Professional(“交互式反汇编器专业版”) 共有(File , Edit , Jump , Search , View , Debugger , Options , Windows , Help)9个模块.

“IDA 目录的结构”

  • /Applications/IDA Pro 7.0/ida64.app/Contents/MacOS
    /Applications/IDA Pro 7.0/ida64.app/Contents/MacOS/cfg “包括基本IDA 配置文件 ida.cfg 、GUI 配置文件 idagui.cfg以及文本模式用户界面配置文件 idatui.cfg ”
    
  • /Applications/IDA Pro 7.0/ida64.app/Contents/MacOS/idc
    # “包含 IDA 的内置脚本语言 IDC 所需的核心文件”
    devzkndeMacBook-Pro:idc devzkn$ ls -lrt
    total 912
    -rw-r--r--  1 devzkn  admin    2433 Sep 14 21:08 xrefs.idc
    -rw-r--r--  1 devzkn  admin    1535 Sep 14 21:08 tpne.idc
    
  • /Applications/IDA Pro 7.0/ida64.app/Contents/MacOS/ids
    # “IDA 语法中的IDS 文件),这些文件用于描述可被加载到IDA 的二进制文件引用的共享库的内容。”
    devzkndeMacBook-Pro:ids devzkn$ ls
    epoc.zip	epoc6.zip	epoc9.zip	flirt.zip	geos.zip	idsnames	linux.zip	os2.zip		win.zip		win7.zip	wince.zip
    
  • loaders
    # “包含在文件加载过程中用于识别和解析 PE或ELF 等已知文件格式的IDA 扩展”
    devzkndeMacBook-Pro:loaders devzkn$ ls -lrt
    total 6968
    -rw-r--r--  1 devzkn  admin  304060 Sep 14 19:58 elf.dylib
    -rw-r--r--  1 devzkn  admin   13412 Sep 14 19:58 dump.dylib
    
  • plugins
    # “包含专门为 IDA 提供附加功能(多数情况下由用户定义)的 IDA 模块”
    devzkndeMacBook-Pro:plugins devzkn$ ls -lrt
    total 33776
    -rw-r--r--   1 devzkn  admin    26716 Sep 14 19:58 comhelper.dylib
    -rw-r--r--   1 devzkn  admin     8908 Sep 14 19:58 callee.dylib
    
  • procs
    # “包含已安装的 IDA 版本所支持的处理器模块。处理器模块为 IDA 提供机器语言—汇编语言转换功能,并负责生成在 IDA 用户界面中显示的汇编语言。”
    devzkndeMacBook-Pro:procs devzkn$ ls -lrt
    total 23136
    -rw-r--r--  1 devzkn  admin    32484 Sep 14 19:58 78k0.dylib
    -rw-r--r--  1 devzkn  admin   118356 Sep 14 19:58 dsp56k.dylib
    
  • sig
    # “包含 IDA 在各种模式匹配操作中利用的现有代码的签名。通过模式匹配,IDA能够将代码序列确定为已知的库代码,从而节省大量的分析时间。这些签名由IDA 的“快速的库识别和鉴定技术”(FLIRT )生成”
    #/Applications/IDA Pro 7.0/ida64.app/Contents/MacOS/sig/arm
    devzkndeMacBook-Pro:arm devzkn$ ls -lrt
    total 2048
    -rw-r--r--  1 devzkn  admin  353733 Sep 14 21:08 vc_rtf.sig
    -rw-r--r--  1 devzkn  admin    2337 Sep 14 21:08 vc_extra.sig
    
  • til
    #“包含一些类型库信息,IDA 通过这些信息记录特定于各种编译器库的数据结构的布局”
    devzkndeMacBook-Pro:til devzkn$ ls -lrt
    total 8648
    -rw-r--r--   1 devzkn  admin   973548 Sep 14 21:08 macosx64.til
    -rw-r--r--   1 devzkn  admin   970917 Sep 14 21:08 macosx.til
    

IDA 的基本使用

  • 打开高级模式
    “可以使用View▶Toolbars▶Advanced mode打开高级模式工具栏。高级模式工具栏包含整整三排工具按钮。”
    # 导航带 :“不同的颜色表示不同类型的文件内容”
    蓝色:表示代码段;棕色:表示数据段;红色:表示内核。
    
  • 桌面技巧
    使用View▶Open Subviews命令恢复你无意中关闭的数据显示窗口.
    使用Windows▶Reset Desktop 命令可迅速将桌面恢复到原始布局。
    

“使用IDA 进行远程调试”

  • “要开始远程调试,首先需要在进行进程调试的计算机上启动相应的调试服务器组件”
    “mac_server。在OS X计算机上执行的、用于调试 32 位OS X应用程序的服务器组件。”
    “mac_serverx64。在64 位OS X计算机上执行的、用于调试 64 位OS X应用程序的服务器组件(仅用于 IDA 高级版)。”
    
  • Debugger -> Attach
  • Debugger -> run
  • Debugger -> Select debugger 选择 Remote iOS debugger
  • Debugger ->Attach to Process
    选择对应的PID
    
  • Debugger -> Process options 里面有两个选项Application ,inputfile
  • Debugger ->Start process
    F7 step in 
    F8 setp
    F9 run
    F4 run into cursor
    

参考

  • “IDA View-A:分析视图窗口,用于显示分析结果,可选用流程图或代码形式。” “IDA的默认视图为流程视图,需要进行转换。在函数体内,右击选择Text view。同理,如果要从反汇编视图切换回流程视图,可选择Graph view。”

转载请注明: > IDA

在操作过程或者文章有问题的话欢迎在 原文 里提问或指正。

赞赏支持

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少
最近的文章

otool

前言使用otool 之前有必要对Mach-O 了解一下。可以使用Mach-O文件的可视化工具MachOExplorer进行查看。 iPhone app 存放的路径 #app 下载的app路径iPhone:~ root# ls -l /var/mobile/Containers/Bundle/Applicationtotal 0drwxr-xr-x 3 mobile mobile 170 Dec 17 11:43 15912B70-1938-479E-A21E-6245...…

iOSre继续阅读
更早的文章

iphoneDaemonTool

前言创建iPhone Daemon的例子iphone/tool 的编写 iphone/tool 创建 #$/opt/theos/bin/nic.pl NIC 2.0 - New Instance Creator[10.] iphone/tool layout文件夹下创建LaunchDaemons配置文件 devzkndeMacBook-Pro:LaunchDaemons devzkn$ echo "<?xml version="1.0"...…

iOSre继续阅读
更多