Skip to content

Pwn Lab 1:代码注入与栈溢出

本节 Lab 由以下部分组成:

Task 1 (40%)

复现,并完成课上讲解的 nocrash login_me inject_me bypass_me 赛题,取得 flag

  • 题目均位于比赛平台上

请在报告中附上漏洞分析以及做法,给出成功拿到 flag 的截图,并将攻击代码以附件形式上传

Task 2 (20%)

完成 Alpha 赛题,取得远程的 flag

  • [lab 1] Alpha 题目位于比赛平台上
  • 可以参考的工具: Alpha3, ae ... (你也可以自己实现更高效、shellcode 长度更短的算法)

请在报告中附上漏洞分析以及做法,给出对于你使用的 shellcode 代码的分析;给出你生成可见字符 shellcode 的算法(如果使用了开源工具,请分析此工具使用的算法;给出 shellcode 注入后并被成功执行的一系列 GDB 截图以及成功拿到 flag 的截图,并将攻击代码以附件形式上传

Task 3 (20%)

完成 sbofsc 赛题,取得 flag

  • [lab 1] sbofsc 题目位于比赛平台上

请在报告中附上漏洞分析以及做法,给出 shellcode 注入后并被成功执行的一系列 GDB 截图以及成功拿到 flag 的截图,并将攻击代码以附件形式上传

Task 4 (20%)

完成 sbuf 赛题,取得 flag

  • [lab 1] sbuf 题目位于比赛平台上

请在报告中附上详细的漏洞分析过程以及做法,给出能够证明你的输入是如何通过每一步的执行最终劫持控制流的 GDB 过程截图;给出成功拿到 flag 的截图,并将攻击代码以附件形式上传

Bonus (15%)

对比课上讲解的 sbof4 程序在四种架构(x86-64, AArch64, RISCV64, MIPS)下的栈帧布局,给出详细的 GDB 截图,标出栈上关键字段(如返回地址、局部变量、参数等,并对不同架构的函数调用 ABI 区别进行总结(包括参数传递、寄存器使用、栈帧结构等

请在报告中附上漏洞分析以及做法,给出成功执行后门函数的截图,并将攻击代码以附件形式上传