计算机系统基础-bomb实验报告
发布时间
阅读量:
阅读量
山东大学 计算机系统基础实验报告
bomblab
一、实验目的
- 深入学习并熟练掌握 arm 汇编语言及相关调试工具的使用。
- 全面掌握安卓开发板的操作流程及各类环境配置设置。
- 深入了解并熟练运用 Linux 系统中的 shell 命令行界面功能。
二、实验环境
linux系统,终端,arm-gdb工具,安卓开发板
三、小组成员及任务分配
四、实验原理
二进制炸弹被作为目标代码文件提供给我们使用的程序,在运行过程中共有六个关卡(即六个phase)。每当程序向用户要求输入六个不同的字符串时,“如果其中任何一个不正确”,该系统就会触发爆炸:并输出一条错误信息提示。为此我们需要先在Linux环境下配置好arm-gdb工具并获得反汇编问卷,并接着通过反汇编以及逆向工程的方法来确定这六个具体的字符串内容。进而我们能够解除每个炸弹各自的触发装置。
五、知识储备
我们在实验期间应用了课堂上讲解的ARM指令相关知识。如读写指令ldr与str及其功能对比,并且它们之间的区别也得到了深入探讨;此外,在完成实验的过程中还涉及到了更多细节方面的学习,并了解了这些操作对硬件寄存器以及系统堆栈的影响。此外,在模拟拆解炸弹的过程中我们也运用到了相关的数学知识,在具体实现中主要采用了递归算法与循环算法相结合的方式
全部评论 (0)
还没有任何评论哟~
