-
20232404zxy 2025-2026-1 《网络与系统攻防技术》实验一实验报告
一、实验内容 1. 实验任务 (1)直接修改pwn1的机器指令,将main函数中调用foo的指令改为调用getShell。 (2)利用foo函数中gets(无边界检查)的漏洞,构造输入字符串覆盖返回地址,触发getShell。 (3)注入自定义Shellcode,通过构造Payload使程序执行Sh -
20232410 2025-2026-1 《网络与系统攻防技术》 实验一实验报告
一、实验目的 本次实践的对象是一个名为pwn1的linux可执行文件。 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串。 该程序同时包含另一个代码片段,getShell,会返回一个可用Shell。正常情况下这个代码是不会被运行的。我们实践的目标就是想办法运行这 -
20232418 2025-2026-1 《网络与系统攻防技术》实验一实验报告
一、实验目的 1掌握NOP, JNE, JE, JMP, CMP汇编指令的机器码。 2掌握反汇编与十六进制编程器。 3能正确修改机器指令改变程序执行流程。 4能正确构造payload进行bof攻击。 二、实验环境 VMware Workstation pro环境下安装kali-linux-2025. -
实验一:逆向及BOF基础实践-20232301郑好
1 逆向及Bof基础实践说明 1.1 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件。 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户输入的字符串。 该程序同时包含另一个代码片段,getShell,会返回一个可用Shell。正常情况下这个代码是不会被运行 -
1
https://www.cnblogs.com/jj11/ -
20232311 2025-2026-1 《网络与系统攻防技术》实验一实验报告
一、实验内容 本周围绕Linux可执行文件pwn1的缓冲区溢出(BOF)漏洞与shellcode注入展开学习,核心是通过三种技术手段篡改程序执行流程,触发原本不可运行的getShell函数或自定义shellcode。具体包括:手动修改可执行文件的机器指令,直接将main函数调用目标从foo改为get -
实验1
#实验任务1 #task1.1.c 1 #include<stdio.h> 2 int main() 3 { 4 printf(" 0\n"); 5 printf("<H>\n"); 6 printf("I I\n"); 7 8 printf(" 0\n"); 9 printf("<H>\n"); -
博客地址
https://www.cnblogs.com/yahuao -
实验1 现代C++编程初体验
任务1: 源代码 1 #include <iostream> 2 #include <string> 3 #include <vector> 4 #include <algorithm> 5 template<typename T> 6 void output(const T &c); 7 8 vo -
OOP-实验1
实验1 实验任务1 task 1.cpp #include <iostream> #include<string> #include<vector> #include<algorithm> template <typename T> void output(const T &c); void tes -
20232320 2025-2026-1 《网络与系统攻防技术》实验一实验报告
1.实验内容 通过三种不同的技术手段,设法使程序执行 getShell 函数代码片段,方法如下: 方法一:手工修改可执行文件,直接改变程序的执行流程,使其跳转至getShell函数。 方法二:利用foo函数中的缓冲区溢出漏洞,构造特殊的输入字符串,覆盖函数的返回地址,从而触发getShell函数。 -
OOP-实验1
任务1 task1.cpp 1 #include <iostream> 2 #include <string> 3 #include <vector> 4 #include <algorithm> 5 6 template<typename T> 7 void output(const T &c); -
实验1 现代C++编程初体验
实验任务一 代码 验证性实验。 在C++编码环境中,输入、运行并观察以下代码,结合运行结果和注释,体验使用C++标准库进行编程的便捷性。从面 向对象编程范式的角度,体会封装与基于接口编程的意义。 task1.cpp #include <iostream> #include <string> #inc -
20232306刘博2025-2026-1《网络与系统攻防技术》实验一实验报告
1.实验内容 通过修改可执行文件,改变程序执行流程,跳转到getShell函数。 利用foo函数的Bof漏洞,构造一个攻击输入字符串,覆盖返回地址,触发getShell函数。 注入一个自己制作的shellcode并运行这段shellcode。 2.实验过程 (一)直接修改程序机器指令,改变程序执行流 -
NUIST-OOP-Lab01
NUIST-OOP-LAB01 -
#20232329易杨文轩 2025-2026-1 《网络与系统攻防技术》 实验一实验报告
1.实验内容 本次实验以 Linux 可执行文件 pwn1 为对象。 程序正常流程:main → foo,foo 仅回显用户输入; 程序已含 getShell 片段,可交互式返回 shell,但默认不会被执行。 实验目标:强制运行 getShell,并进一步实现任意 shellcode 注入。 采用 -
Test1
任务一 源代码 // 现代C++标准库、算法库体验 // 本例用到以下内容: // 1. 字符串string, 动态数组容器类vector、迭代器 // 2. 算法库:反转元素次序、旋转元素 // 3. 函数模板、const引用作为形参 #include <iostream> #include <s -
20232309 2025-2026-1 《网络与系统攻防技术》实验一实验报告
1.实验内容 1.1学习内容 缓冲区漏洞的概念,发展历程,经典案例 缓冲区溢出的基本知识 gdb的基本操作:break、step、stepi、continue等 基本汇编指令:push、pop、ret、call等 栈结构:环境变量/参数和个数以及主函数和调用栈中函数的临时保存信息,从高地址向低地址增 -
OOP-实验一
实验任务1 源代码 点击查看代码 #include <iostream> #include <string> #include <vector> #include <algorithm> template<typename T> void output(const T &c); void test1 -
OOP-实验1
实验任务1 源代码task1.cpp 点击查看代码 // 现代C++标准库、算法库体验 // 本例用到以下内容: // 1. 字符串string, 动态数组容器类vector、迭代器 // 2. 算法库:反转元素次序、旋转元素 // 3. 函数模板、const引用作为形参 #include <ios