warmup_csaw_2016逆向分析
依旧是下载elf文件通过ida逆向分析。
可以看到main函数里输出了一个名叫sub_40060D的函数的地址,我们去看看这个函数是干啥的。
可以看到是给我们送flag的,我们只需要让系统执行的时候调用这个函数就行了。通过ida可以看到这个函数的地址为0x40060D我们只需要通过gets函数的栈溢出将地址覆盖就行,但是我现在怀疑它函数的地址是在变化的,所以我们可以通过gdb来看看每次运行时函数的地址会不会变,对于这个文件直接运行就能看见。
会发现每次运行的地址是不会变化的,这样的话直接判断一下offset是多少,还是通过两种方法交替验证,s这个数组又64位再加上8位
应该是72位。用gdb里的cyclic再判断一下。
这下就很明显了offset就是72,然后考虑一下栈对齐,找一下ret。依旧是通过ROPgadget --binary warmup_csaw_2016 --only 'ret'这条命令来寻找。
可以看见ret的地址是0x4004a1。所有的东西都有了我们可以开始编写payload了
payload123 ...
rip
下载网站上提供的elf文件,通过ida pro反编译看一下是什么逻辑。
非常明显的一个gets函数的栈溢出漏洞,咱们找一下里面有没有现成的后门函数。
非常典型的一个返回bash的后门函数,那我们现在方法就明确了,通过gets函数的栈溢出使得main函数的返回值被覆盖成fun函数的这样在main函数return的时候就会进入fun函数执行我们的后门函数了。
在ida里直接看见fun函数的地址0x401186,这就是我们要return的地方。
逻辑判断与计算位数然后就是判断应该在地址前填充多少位的数据才能正好将地址覆盖到return的地方。这里有两种方法,第一种是通过计算。
看之前main函数的s在内存里的位置是rbp-Fh,正好是到rbp有15位,而返回地址存在rbp+8的地方,所以应该填充15+8=23位。
第二种就是通过pwndbg里的cyclic函数来进行测量
先使用gdb pwn1来用gdb打开pwn1,在里面使用cyclic n。n是生成的字符数量,可以是100,200…。我这里使用cyclic 100 生成100位的填充字符。
复制这些填充字符,使用r ...
test_your_nc
这道题题如其名单纯的测试你的nc能不能用。下下来elf文件反编译发现,运行的就是个bash,直接通过cat flag就能拿到flag
直接看图把。
直接通过linux上的nc命令连接就是一个bash
成功获得bash,ls发现flag文件,直接通过cat命令即可获取
学生选修系统这是我在大一上c语言实验结课时要求的项目,具体项目文件可见https://github.com/benksih/c-student
纯血c语言文件
1、需求分析系统以菜单方式工作,因而要提供键盘式选择菜单以实现功能选择;由于课程信息要用文件保存,因而要提供文件的输入输出操作;由于要浏览信息,所以要提供显示功能;要实现查询功能,故要提供查找操作。
2、总体设计整个系统可以设计为信息输入模块、信息查询模块,信息浏览模块,程序启动模块(即登录模块),程序菜单模块。
3、详细设计数据结构采用结构体,这里采用课程信息结构体和学生选课信息结构体。
12345678910111213141516171819202122struct course{ char courseCode[10]; //课程编号 char courseName[20]; //课程名称 char courseType[10]; //课程类别 int totalPeriod; //总学时 int classPeriod; //授课学时 int experiPeriod; ...
计算学科导论理论题型(2024)附件:计算学科导论(2020)pdf 计算学科导论ppt
单选10个,共20分,知识面覆盖比较全,我们讲的1235章都有,需要仔细看看书,然后把第四章计算思维的基本概念看一看
简答题5个,共25分,重点看一下1235章课件后面的简答题
填空10个,共10分,和单选相似,重点还是1235章的知识点,其他新技术比如AI,大数据这些基本概念也会考到
算法与设计2个,共20分,比较简单,编程基础较好的童鞋没什么难度,算法描述清楚即可,不需要写源代码,算法可能会用到遍历,递归,贪心,爬山,在线这些
论述题25分,自行发挥
知识点第一章 计算学科概念辨识计算机科学研究计算机及其周围各种现象和规律的科学,亦即研究计算机系统结构、程序系统(即软件)、人工智能以及计算本身的性质和问题的学科。
电子计算机(Electronic Computer)简称计算机(Computer),是一种高度自动化的、能够按照预先设定的程序进行高速数值运算和逻辑判断的现 ...