实验一 逆向破解与BOF

blackwall0321 2024-03-20 09:52:23

1.实践目标

本次实践的对象是一个名为pwn1的linux可执行文件。

该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串。

该程序同时包含另一个代码片段,getShell,会返回一个可用Shell。正常情况下这个代码是不会被运行的。我们实践的目标就是想办法运行这个代码片段。我们将学习两种方法运行这个代码片段,然后学习如何注入运行任何Shellcode。

  • 三个实践内容如下:

    • 手工修改可执行文件,改变程序执行流程,直接跳转到getShell函数。
    • 利用foo函数的Bof漏洞,构造一个攻击输入字符串,覆盖返回地址,触发getShell函数。
    • 注入一个自己制作的shellcode并运行这段shellcode。

 参考链接 :https://gitee.com/wildlinux/NetSec/blob/master/ExpGuides/0x11_MAL_%E9%80%86%E5%90%91%E4%B8%8EBof%E5%9F%BA%E7%A1%80.md

2.实验要求

  • 掌握NOP, JNE, JE, JMP, CMP汇编指令的机器码
  • 掌握反汇编与十六进制编程器
  • 能正确修改机器指令改变程序执行流程
  • 能正确构造payload进行bof攻击 

3.评分标准

(1)截图要求:
     所有操作截图主机名为本人姓名拼音
     所编辑的文件名包含自己的学号
     如未按如上格式要求,则相应部分报告内容不记成绩。

(2)出现不显示图片的情况,视为无图

(3)查重系统,抄袭现象记为0分

(4)每次报告满分10分,缺少实验问题、简介方案以及感想,每个扣1分

(5)报告格式规范、整洁加1分,否则扣1分;内容全面、表述清晰加1分,否则扣1分。

 

3.实验报告模板

# 学号 2023-2024-2 《网络与系统攻防技术》实验X实验报告

## 1.实验内容 
总结一下本周学习内容,不要复制粘贴
## 2.实验过程
## 3.问题及解决方案 
- 问题1:XXXXXX 
- 问题1解决方案:XXXXXX 
- 问题2:XXXXXX 
- 问题2解决方案:XXXXXX - ... 
## 4.学习感悟、思考等 
xxx xxx
 
## 参考资料 
- [《Java程序设计与数据结构教程(第二版)》](https://book.douban.com/subject/26851579/) 
- [《Java程序设计与数据结构教程(第二版)》学习指导](http://www.cnblogs.com/rocedu/p/5182332.html) 
- ...
...全文
776 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
0人已提交
完成率0%
暂无数据
回复
切换为时间正序
请发表友善的回复…
发表回复

92

社区成员

发帖
与我相关
我的任务
社区描述
网络攻防作业
网络安全 高校
社区管理员
  • blackwall0321
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧