- 1、本文档共66页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
信息对抗技术-反汇编课件
信息对抗技术 韩宏 一 汇编基础 汇编语言指令 C /Delphi语言汇编调试环境 对应的值是0x00402D23.因为这里涉及到整数表示的问题。在计算机体系结构中存在大端(bigend)和小端(littleend)机的概念。小端机是逻辑值的低字节存放在内存的低地址。 2.1分析Call的作用和细节 该整数是Ffff5b39 但要跳转的地址是0040100a (0040B4CC E8 39 5B FF FF call @ILT+5(add) (0040100a) )这两个数是如何关联的呢? 2.2 关于Call的返回 函数都要返回,那么一个函数是如何返回的呢?返回的地址保存在何处? call指令除了相当于jmp的跳转功能外,还多了一个功能就是保存返回地址。保存在栈上。一个call相当于 push return address; jmp funcAddress; 2.3 参数的传递 13: z=add(1,2); 0040B4C8 6A 02 push 2 0040B4CA 6A 01 push 1 0040B4CC E8 39 5B FF FF call @ILT+5(add) 在call之前有两个push语句。作用就是传递 函数的参数。 2.4函数中如何访问参数 首先,我们来观察一下当call指令执行完毕后栈的布局。 栈的顶部地址存放在ESP寄存器中,而栈的大小变化是以4字节为单位(32位机),因此我们只需要做如下计算就可以访问存储2的那个单元。 例如 mov eax, [esp + 8]; 而一般因为esp容易变化,所以我们会用一个寄存器将进入函数时的esp值存放起来,然后寻址时就可以相对这个特别的寄存器寻址。例如用ebp存放esp : push ebp;//保存原来的ebp值 mov ebp, esp;//将栈顶值保存在ebp 中。 那么刚才那个相对于esp的指令就可以等价为: mov eax, [ebp + 0c]; 为什么不是[ebp + 8]呢?因为刚才执行了一个语句push ebp,那么堆栈变成了如下图所示 因此,我们得出结论,只要在一个函数的开始部分执行 push ebp; mov ebp, esp; 之后相对ebp 进行正向偏移就可以访问传入的参数了。比如刚才那个保存2的参数就可以用 ebp + 0c代表的地址访问。 然后,我们分析函数Add的反汇编代码加以验证55 push ebp 8B EC mov ebp,esp83 EC 44 sub esp,44h53 push ebx56 push esi57 push edi8D 7D BC lea edi,[ebp-44h] 0040102C B9 11 00 00 00 mov ecx,11hB8 CC CC CC CC mov eax,0CCCCCCCChF3 AB rep stos dword ptr [edi] 5: int sum; 6: sum=x+y;8B 45 08 mov eax,dword ptr [ebp+8]//访问参数x 0040103B 03 45 0C add eax,dword ptr [ebp+0Ch]//访问参数y 0040103E 89 45 FC mov dword ptr [ebp-4],eax 2.5函数如何访问自己的局部变量 蓝色字体部分为局部变量存储区间。从ebp指向的位置分析,对局部变量的访问 应该是 [ebp – offset]
您可能关注的文档
最近下载
- 2022-2023学年七年级上学期期末考试语文试题(1).docx VIP
- 2024年看守所民警年终个人总结7篇.docx VIP
- 黑布林英语阅读初一7《渔夫和他的灵魂》中文版.pdf
- 垦丁律所:数据出境合规实务100问.pdf VIP
- 人教版八年级数学下学期课后习题与答案(最全).doc
- 2024 年度民主生活会“四个对照”方面(存在问题、原因剖析及整改措施).docx VIP
- 新闻传播伦理与法规教程PPT 新闻传播伦理与法规教程(7).pptx VIP
- 邱霈恩-002领导学(第二章).pptx VIP
- 新闻传播伦理与法规教程PPT 新闻传播伦理与法规教程(9).pptx VIP
- 新闻传播伦理与法规教程PPT 新闻传播伦理与法规教程(10).pptx VIP
文档评论(0)