收藏 分享(赏)

哈尔滨工程大学实验报告.doc

上传人:dreamzhangning 文档编号:2274055 上传时间:2018-09-09 格式:DOC 页数:5 大小:645.50KB
下载 相关 举报
哈尔滨工程大学实验报告.doc_第1页
第1页 / 共5页
哈尔滨工程大学实验报告.doc_第2页
第2页 / 共5页
哈尔滨工程大学实验报告.doc_第3页
第3页 / 共5页
哈尔滨工程大学实验报告.doc_第4页
第4页 / 共5页
哈尔滨工程大学实验报告.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、 实 验 报 告课程名称 保密技术实验 实验项目名称 实验一:软硬件实验环境配置实验实验类型 验证性实验 实验学时 2班级 20112121 学号 2011212131姓名 祝星星 指导教师 冯光升 实验室名称网络与信息安全实验室(21B#174)实验时间 5.22预习部分 实验过程 表现 实验报告 部分 总成绩实验成绩教师签字 日期 5.22哈尔滨工程大学教务处 制实验一:软硬件实验环境配置实验1、 实验目的本次实验主要是要求信息安全专业学生熟悉常用的保密泄密分析软件,及其环境配置等工作。本次课通过破解二进制文件使学生掌握常用的代码分析工具,从而为以后进行造成泄密的系统漏洞进行分析研究奠定工

2、具基础。2、 实验环境(实验所使用的器件、仪器设备名称及规格)装有Windows XP sp2 的操作系统,有Visual C+6.0 编译环境,另外需要安装IDA ,OllyDbg, LordPE、UltraEdit 等软件。3、 实验任务及其要求本实验就是破解二进制文件,使学生掌握常用的代码分析工具,从而为以后进行造成泄密的系统漏洞进行分析研究奠定工具基础。4、 实验过程及分析1) 在 VC6.0下运行附录中所给的C源程序。我们可以发现只有输入正确的密码1234567才能得到密码验证的确认,不管密码输入正确与否,能否跳出循环直接取决于main函数中的If 判断2)打开 IDA,把由VC6.

3、0 得到的.exe 文件直接拖进IDA,稍等片刻,IDA 就会把二进制文件翻译成质量上乘的反汇编代码,默认情况下,IDA会自动识别出main 函数,并用类似流程图的形式标注出函数内部的跳转指令,如果按F12,IDA 会自动绘制出更加专业和详细的函数流程图。3)在 IDA 的图形显示界面中,用鼠标选中程序分支点,也就是我们要找的对应于 C 代码中的if 分支点,按空格键切换到汇编指令界面,光标仍然显示高亮的这条汇编指令就是刚才在流程图中看到的引起程序分支的指令。可以看到这条指令位于PE文件的.text 节,并且IDA 已经自动将该指令的地址换算成了运行时的内存地址A:0x004010C9。4)选

4、在关闭 IDA,换用OllyDbg进行动态调试来看看程序到底是怎样分支的。用OllyDbg把PE文件打开。5)找到 main 函数调用后,按F7 单步跟入就可以看到真正的代码了,我们也可以按快捷键Ctrl+G直接跳到有 IDA得到的A :0x004010C9处查看那条引起程序分支的关键指令。6)选中该指令,按F2下断点,成功后,指令的地址会被标记成不同颜色,按F9 让程序运行起来,这时候控制权会回到程序,OllyDbg 暂时挂起。到程序提示输入密码的Console界面随便输入一个错误的密码,回车确认后,OllyDbg 会重新中断程序,取回控制权。7) 密码验证函数的返回值将在 EAX 寄存器中

5、,if()语句通过TEST EAX,EAXJE XXXXX两条指令实现。如果我们把JE 这条指令的机器代码修改成JNE(非0 则跳转) ,那么整个程序的逻辑就会反过来:输入错误的密码会被确认,输入正确的密码反而要求重新输入!也可以用另外一种方法:把TEST EAX,EAX 指令修改成 XOR EAX,EAX 也能改变程序流程,此时不论正确与否,密码都将接受。8) 双击 JE 这条指令,将其修改成JNE ,单击“Assemble“ 按钮将其写入内存。9) OllyDbg 将会变指令翻译成机器代码后写入内存,原来内存中的机器代码74(JE)现在变成了75(JNE) 。而以上只是在内存中修改程序,我

6、们还需要在二进制文件中也修改相应的字节,这需要用到内存地址VA 与文件地址之间的对应关系。用 LordPE 打开.exe文件,查看PE文件的节信息。11)跳转指令在内存中的地址是VA=0x0040106E 按照VA与文件地址的换算公式:文件偏移地址=虚拟内存地址(VA)- 装载基址(Image Base)-节偏移=0x0040106E-0x00400000-(0x00001000-0x00001000)=0x106E也就是说这条指令在PE 文件中位于距离文件开始处 106E 字节的地方。12)用UltraEdit 按照二进制方式打开crack_me.exe 文件,按快捷键Ctrl+C ,输入0

7、x106E 直接跳到JE 指令的机器代码处,将这一个字节的74(JE)修改成 75(JNE ) ,保存后重新运行可执行文件,原本正确的密码“1234567“ 现在反而提示错误了。 5、 实验结果总结思考题:现在主要的软件破解技术是盗版技术,它主要分为动态跟踪分析和静态分析两种,分别用 ICE 和 DEDE 工具来实现。同时还可以使用跟踪软件,此 =另外用 dos 命令也能破解一些低级软件,可以利用冰刃辅助软件。对比以上几种方法,盗版可以破解较高级的,而且应用较为广泛,其余两个破解低级一些的,破解的关键在于巧妙设计断点,寻找关键代码段。通过本次实验我们熟悉了常用的保密泄密分析软件,了解了其环境配置,为接下来的实验打下了良好的基础。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报