IDA经典教程整理.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
IDA 简易教程 作者: mailto:winroot@126.com 2004- 11-20 初步翻译完成,希望大家指正错误,谢谢! 我的鸟语太差大概翻译了一下,大家凑合着能看懂就行了:-)有些地方用自己理解的意思改写 了一下! 本文的主要内容就是讲如何用IDA 来辅助识别各种类型的数据. 版权信息:所有版权归原文作者所有,如许转载清保持文章完整性。 索引 1 第一节:C 语言的小程序 2 第二节:基本类型的识别 3 第三节:操作数格式 4 第四节:字符和字符串的操作 5 第五节:数组 6 第六节:枚举类型 7 第七节:Bit-fields (位域) 8 第八节:结构体 9 第九节:结构变量和结构数组 10 第十节:联合体和结构体中的结构体 11 第十一节:可变的结构体 12 第十二节:结构体偏移 13 第十三节:联合体偏移量 14 第十四节:地址偏移量 15 第十五节:最终逆向结果 附录 第一节:C语言的小程序 为了演示IDA 的功能先写一段小程序。(代码在附录)程序在此 源代码 程序执行结果: CUSTOMERS: CUSTOMER 0001: Peter (m) CUSTOMER 0002: John (m) CUSTOMER 0003: Mary (f) PRODUCTS: PRODUCT 0001: BOOK: IDA QuickStart Guide PRODUCT 0002: SOFTWARE: IDA Pro: PC; WINDOWS DOS; DISASSEMBLY PRODUCT 0003: SOFTWARE: PhotoRescue: PC MAC; WINDOWS OS-X; RECOVERY PRODUCT 0004: SOFTWARE: aCrypt: PC; WINDOWS; CRYPTOGRAPHY TOP 第二节:基本类型的识别 用IDA 分析我们前面的程序,我们会发现下图的类型 只要按D我们就可以任意转换这些不确定的类型.可以变成byte,word,dword(db,dw,dd) 。 当然你也可以设置更多的数据转换类型: 选择“Options”菜单的“Setup data types”命令就可以设置了 值得注意的是:你在数据转换的时候,它是依据数据自身的结构来转换的。我们按“D” 的时候, 如果下一个字节已经被你转换过,你的本次转换,IDA 将会提示让你确认。 注:如果你想改变这种默认设置可以在“Options”菜单“Convert already defined bytes”命令里设置 撤销你的所有转换按“U”键。 TOP 第三节:操作数格式 数据类型自定义转换后,被操作过的数据(就是你按过“D” 的)的进制IDA 也是可以自定义转变 的, 通过在“Operands”工具栏的“Number”命令我们可以随意转换数字的进制 最下面的“Toggle leading point”就是填补数据前的空位为0 (就是说如果当前数据未占满数据格式 的所有位高位用0来填补) IDA 还可以转换数据的标志位(就是正负)具体操作如下图: 最后呢~~如果这些转换你还不满意(够BT )当然你还可以自定义数据进制如图: TOP 第四节:字符和字符串的操作 作者又说话了:很多程序都是包含字符串的,一些被操作过的数据(就是你按过“D” 的)可以转 化为 字符,使用的命令就在“Operands”工具栏上 由于编程语言的不同造成字符串也有不同的格式,当然IDA 就支持所有的格式了。 IDA 在转化后会在地址添加一个名字。因为我们的程序是c 的所以就找到c 的字符串。具体操作 如图: 如果不是C 写的程序怎么办呢?我们可以在“Options”菜单“ASCII string style ”命令中设置。 允许你修改其它类型为默认设置,使用默认设置的快捷键是“A” ,或者自定义一种类型可以使用 不常用的终止字符。

文档评论(0)

tiger03 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档