- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
升入理解计算机系统BombLAB实验报告讲述
湖南大学课程实验报告
课 程 名 称: 计算机组成与结构
实验项目名称: 二进制炸弹
专 业 班 级:
姓 名:
学 号:
指 导 教 师:
完 成 时 间:
计算机科学与工程系
实验题目:
APP Bomb Lab实验目的:
实验环境:
linux,终端,gdb工具实验内容及操作步骤:
查看给出的bomb.c中的代码,得知控制检测密码正误的6个函数分别为:
phase_1,phase_2,phase_3,phase_4,phase_5,phase_6。
使用gbd工具对可执行文件bomb进行反汇编:
得到六段汇编代码,将其复制成文本后,对其进行分析,
phase_1代码:
0x08048f61 +0: push %ebp
0x08048f62 +1: mov %esp,%ebp
0x08048f64 +3: sub $0x18,%esp
0x08048f67 +6: movl $0x804a15c,0x4(%esp) 将esp寄存器地址指向$0x804a15c
0x08048f6f +14: mov 0x8(%ebp),%eax 将$0x804a15c中的数据移给eax寄存器
0x08048f72 +17: mov %eax,(%esp)
0x08048f75 +20: call 0x8048fab strings_not_equal
0x08048f7a +25: test %eax,%eax 上一行与这一行比较用户输入和$0x804a15c中的值
0x08048f7c +27: je 0x8048f83 phase_1+34
0x08048f7e +29: call 0x80490d1 explode_bomb
0x08048f83 +34: leave
0x08048f84 +35: ret
可以看出,phase_1的密码是固定储存在$0x804a15c中的。令$0x804a15c中的数据与用户输入的数据比较,若相同则跳过explode_bomb,避开炸弹。用命令x/s 0x804a15c查看其中的数据如下
因此知道第一个密码为:We have to stand with our North Korean allies.
phase_2代码:
0x08048d6a +0: push %ebp
0x08048d6b +1: mov %esp,%ebp
0x08048d6d +3: push %esi
0x08048d6e +4: push %ebx
0x08048d6f +5: sub $0x30,%esp
0x08048d72 +8: lea -0x20(%ebp),%eax
0x08048d75 +11: mov %eax,0x4(%esp)
0x08048d79 +15: mov 0x8(%ebp),%eax
0x08048d7c +18: mov %eax,(%esp)
0x08048d7f +21: call 0x804910b read_six_numbers 读取六个数字
0x08048d84 +26: cmpl $0x0,-0x20(%ebp) 0和第一个数字比较,不相等则爆炸。
0x08048d88 +30: jne 0x8048d90 phase_2+38
0x08048d8a +32: cmpl $0x1,-0x1c(%ebp) 1和第二个数字比较,相等则跳过爆炸。
0x08048d8e +36: je 0x8048d95 phase_2+43
0x08048d90 +38: call 0x80490d1 explode_bomb
0x08048d95 +43: lea -0x18(%ebp),%ebx ebx指向第三个数字。
0x08048d98 +46: lea -0x8(%ebp),%esi esi指向第六个数字再向后移一位的地址。
0x08048d9b +49:
您可能关注的文档
- 医药企业高级产品经理培训讲述.pptx
- 第五章 金融衍生产品市场综述.ppt
- 第五章 畜牧场规划与环境控制(二)综述.ppt
- 千题百炼——高中数学100个热点问题(三):第98炼含新信息问题的求解讲述.doc
- 第五章 P-N结综述.ppt
- 千题百炼——高中数学100个热点问题(三):第65炼直线的方程与性质讲述.doc
- 千题百炼——高中数学100个热点问题(三):第87炼离散型随机变量分布列与数字特征讲述.doc
- 第五章 SPSS相关分析综述.ppt
- 千题百炼——高中数学100个热点问题(三):第90炼取球问题讲述.doc
- 千题百炼——高中数学100个热点问题(三):第93炼算法—多项循环体讲述.doc
文档评论(0)