当前位置: 首页 > news >正文

20253905 2024-2025-2 《网络攻防实践》实践九报告

20253905 2024-2025-2 《网络攻防实践》实践九报告

1.实践内容

总结一下本周学习内容并介绍下实践内容,不要复制粘贴

2.实践过程

2.1

  • 修改主机为本人姓名拼音,修改文件名
    image
    image
  • 输入命令objdump -d pwn1_20253905 | less,启动反汇编分析程序,查找三个关键函数:main、foo、getShell,并记录地址
    image
  • 输入命令hexedit pwn1_20253905,用十六进制编辑器打开程序
    image
  • 定位到要修改的那条call foo指令的位置,输入c3,覆盖原来的d7,并保存退出
    image
    image
    image
  • 运行./pwn1_20253905,弹出Shell提示符$,这说明main已经成功跳转到getShell执行了
    image

2.2

  • 执行命令关闭Linux系统的地址空间随机化(ASLR),消除栈地址随机变化对栈溢出实验的干扰
    image
    image
  • 使用objdump命令反汇编目标程序,提取出main、foo、getShell函数的内存地址,为后续漏洞利用定位关键入口点。
    image
  • 使用objdump命令反汇编并查看foo函数的汇编指令,分析其栈帧结构,计算出缓冲区到函数返回地址的偏移量
    image
  • 使用Python生成缓冲区溢出攻击Payload文件,并通过管道将其输入目标程序,成功劫持程序执行流至getShell函数,获取交互式Shell并执行ls命令验证攻击成功
    image

2.3

  • 输入命令echo 0 > /proc/sys/kernel/randomize_va_space关闭 ASLR 地址随机化
    image
  • 开启栈可执行权限并验证
    image
  • 用gdb加载目标程序gdb ./20253905zwc_3
    image
  • 反汇编foo函数,确认漏洞和ret指令地址
    image
  • 在ret指令处下断点
    image
  • 运行程序并传入 payload,程序停在ret断点后,查看栈顶地址。输出是0xffffd2ac,则Shellcode的目标地址为esp + 4 = 0xffffd2b0
    image
  • 使用perl生成带 300 字节NOP滑板的payload
    perl -e 'print "A" x 32; print "\xB0\xD2\xFF\xFF"; print "\x90" x 300; print "\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x50\x53\x89\xe1\x31\xd2\xb0\x0b\xcd\x80"' > input_20253905zwc
  • 重新打开GDB,设置断点并run
    image
  • 在GDB中继续执行程序
    image
  • 观察到关键提示:process xxxxx is executing new program: /usr/bin/dash,说明Shellcode执行成功,原程序已被替换为 Shell;在GDB中执行系统命令验证Shell功能shell ls
    image

3.学习中遇到的问题及解决

  • 问题1:ASLR 未关闭、栈无执行权限,shellcode 无法运行且地址随机。
  • 问题1解决方案:关闭系统地址随机化,用execstack开启程序栈可执行权限。
  • 问题2:管道命令导致终端交互异常,拿到 shell 却无法正常操作。
  • 问题2解决方案:在 GDB 内直接运行 payload,通过shell命令验证攻击成功。
    image
    image
    image
    image
    image
    image

image

image

4.实践总结

xxx xxx

http://www.jsqmd.com/news/886367/

相关文章:

  • 2026年5月婚礼堂 宴会酒店设计靠谱机构推荐指南:婚礼堂规划、宴会空间设计、酒店婚礼堂改造、专业婚礼堂设计公司优选 - 海棠依旧大
  • HIP-HOP-NN:基于灵活基组与高阶不变量的原子神经网络势能模型
  • 机器学习有限区域天气预报:图神经网络如何集成边界强迫实现稳定预报
  • 深入LoRaWAN网关:安信可RG-02接入TTN后,如何通过MQTT和Webhook把数据玩出花?
  • Epic Mountains地形系统:地理逻辑驱动的工业化山地生产方案
  • 模块化催化精馏规整填料的基础与整塔优化设计【附代码】
  • 可穿戴设备与机器学习预测排球运动员表现:数据驱动体育科学实践
  • 10分钟掌握HS2-HF_Patch:Honey Select 2一站式中文增强方案
  • Unity嵌入式浏览器原理与跨平台实战指南
  • 受够了openclaw的失忆,我本周爱上了Hermes agent
  • 终极NS模拟器管理工具:10分钟搭建完整Switch游戏环境
  • LangGraph interrupt() 暂停后 State 不更新?这个坑我帮你踩了
  • CF2229I The Endians
  • 3分钟快速上手SPT-AKI存档编辑器:离线塔科夫终极修改指南
  • 保姆级教程:用群晖DSM 7.x的SAN Manager给Windows 11和ESXi挂载iSCSI存储盘
  • ssm公廉租房维保系统(10103)
  • Unity与UE5实时3D全栈开发:运行时、渲染管线与世界分块的闭环能力
  • ruduce函数
  • FTP协议层渗透与权限逃逸实战解析
  • 解决KingbaseES连接报错:从‘密码认证失败’到‘角色不存在’的实战排查手册
  • 别再只盯着X16了!深入聊聊PCIE X1、X4甚至M.2接口在工控和嵌入式领域的实战选型
  • 一天一个开源项目(第111篇):Understand Anything - 把代码库变成可探索知识图谱的 AI 引擎
  • Windows 11核心安全机制详解与企业加固实践
  • 基于ESP32-Cam与超低功耗射频的太阳能远程监控系统设计
  • RAG 检索增强生成实战:从 Demo 到生产环境的五个关键优化
  • 好图被水印“破相”?2026年亲测30款去水印工具,这4款免费小程序直接封神! - 科技热点发布
  • 基于机器学习与多波段测光数据的天文目标分类实战
  • Midjourney辉光效果商业级交付标准(ISO/IEC 23015-2024 AI视觉输出规范第7.4条实操解读),错过将影响平台审核通过率
  • 2026年抖音无水印解析工具横评实测:这4款微信小程序一招搞定所有视频 - 科技热点发布
  • Mac+iPhone HTTPS抓包全攻略:Charles证书信任配置避坑指南