• 上学期实验楼上做过这个实验

  • 直接修改程序机器指令,改变程序执行流程

    • 首先进行反汇编
    •  
    • 我们所要修改的是,程序从foo返回,本来要返回到80484ba,而我们要把80484ba修改为getshell的首地址,所以通过vim直接查看可执行文件,并找到程序从foo返回的二进制代码,并将其替换,使之跳转到函数getshell。

    • 这样程序就跳转到了getshell

  • 缓冲区溢出攻击

    • 在调用foo函数时,输入的字符会存储在foo函数的栈内,程序会提前申明缓存区的大小,如果数据过大,超过缓冲区的大小,显然会溢出,然而我们知道,数据是从低地址向高地址存储,堆栈所存储的返回地址也在高地址,如果我们的数据恰好覆盖了返回地址,那么程序的执行就会发生改变,如果将返回地址修改为getshell的首地址,那么调用完fool之后,就会调用getshell,而不会返回main函数了
    • 通过尝试,当输入28个字符时就会发生溢出
  • 感想

    • 上学期做过缓冲区溢出的实验,是在实验楼上面进行的。相比较实验楼上的实验,本次实验在操作上面没有实验楼的难,但有了一些新的收获。我觉得直接修改可执行文件这个方法有点强,哈哈,简单直接。构造参数这个方法和实验楼的原理大致相同。通过这几次实验,发现缓冲区溢出攻击的原理简单,但具体操作的方法却不简单,而且多种多样,可见对不同的程序要用不同的方式去攻击。

转载于:https://www.cnblogs.com/20145235litao/p/6505972.html

20145235李涛《网络对抗》逆向及Bof基础相关推荐

  1. 20145227鄢曼君《网络对抗》逆向及Bof基础

    20145227鄢曼君<网络对抗>逆向及Bof基础 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任 ...

  2. 20145206邹京儒《网络对抗》逆向及Bof基础实践

    20145206邹京儒<网络对抗>逆向及Bof基础实践 1 逆向及Bof基础实践说明 1.1 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:ma ...

  3. 20145335郝昊《网络对抗》逆向及Bof基础实践

    20145335郝昊<网络对抗>逆向及Bof基础实践 1.实践说明 本次实践是对一个名为pwn1的可执行Linux文件进行操作.程序的执行流程是:主函数main调用foo函数,foo将函数 ...

  4. 20155307刘浩《网络对抗》逆向及Bof基础

    20155307刘浩<网络对抗>逆向及Bof基础 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件.该程序正常执行流程是:main调用foo函数,foo函数会回显任何用户输 ...

  5. 20145212罗天晨 逆向及Bof基础实践

    20145212罗天晨<网络对抗>第1周学习总结--逆向及Bof基础实践 逆向及Bof基础实践 一.实践目标 1.运行原本不可访问的代码片段 2.强行修改程序执行流 3.以及注入运行任意代 ...

  6. exp1 逆向与Bof基础实验报告

    20192209楼泽培<网络对抗技术> exp1 逆向与Bof基础 文章目录 基础知识 1. NOP, JNE, JE, JMP, CMP汇编指令的机器码: 2. 掌握反汇编与十六进制编程 ...

  7. 20155227《网络对抗》Exp5 MSF基础应用

    20155227<网络对抗>Exp5 MSF基础应用 基础问题回答 用自己的话解释什么是exploit,payload,encode exploit:把实现设置好的东西送到要攻击的主机里. ...

  8. 2018-2019 20165208 网络对抗 Exp9 Web安全基础

    目录 2018-2019 20165208 网络对抗 Exp9 Web安全基础 实验内容 基础问题回答 实践过程记录 1. WebGoat准备 2. SQL注入攻击 2.1 Command Injec ...

  9. 20145233《网络对抗》Exp8 Web基础

    20145233<网络对抗>Exp8 Web基础 实验问题思考 什么是表单? 表单在网页中主要负责数据采集功能 一个表单有三个基本组成部分: 表单标签 表单域:包含了文本框.密码框.隐藏域 ...

  10. 20145227鄢曼君《网络对抗》Web安全基础实践

    20145227鄢曼君<网络对抗>Web安全基础实践 实验后回答问题 1.SQL注入攻击原理,如何防御? SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是 ...

最新文章

  1. Redis的Set操作
  2. jQuery全选反选实例
  3. 一文带你认识FPGA~
  4. python3语音识别模块_零基础教你玩转语音控制,学习语音控制技术,打造智能生活很简单...
  5. MSDN中关于链接字体的解释(非常有用)
  6. WPF仿网易云音乐系列(二、歌单创建窗口+登录设置模块)
  7. 《诛仙Ⅰ》票房破3亿 QQ阅读《诛仙》小说全平台收入增长11.7倍
  8. CentOS系统安装Java
  9. 数据分析入门必知:机器学习最通俗的解释?
  10. 第五章 多个消费者监听同一个队列
  11. 163企业邮箱 端口服务器,163企业邮箱端口
  12. 计算机应用总线带宽,带宽
  13. 最新课表 | 谱尼学院十一月培训课程重磅来袭!
  14. indexOf 的使用
  15. PTA习题【python】 7-5 特立独行的幸福
  16. 定时器 setTimeout(),setInterval() 清除定时器
  17. 淘宝 聚划算 整点免费 支付宝延时时间1秒
  18. FineBI 取日期的最大max、最小值min
  19. 【人脸识别】Haar分类器五官定位【含GUI Matlab源码 686期】
  20. 公司财务第一周作业(代理问题、财务管理)

热门文章

  1. 卷积神经网络在tenserflow的实现
  2. submit text 插件安装教程
  3. 【XAMPP】中mysql的admin页面打不开
  4. JavaScript学习(九十)—数组练习题(2)
  5. leetcode-141. 环形链表:判断链表是否成环
  6. Chia如何提高P盘速度
  7. 哪个工厂不用加班,工资也不低?
  8. 不是每个人的一生都会有贵人相助
  9. 转化率高的爆款文案都是如何写出来的?
  10. 目前还有机会火的6大短视频内容方向