摘要: 告诉编译器,存储的数据宽度和存储格式。 试验得知,数据溢出,舍弃的是高位。 阅读全文
posted @ 2020-11-14 16:37 KeepMoving2018 阅读(89) 评论(0) 推荐(0)
摘要: 阅读全文
posted @ 2020-11-14 15:49 KeepMoving2018 阅读(139) 评论(0) 推荐(0)
摘要: 局部变量z存储在,ebp-4,即缓冲区。 局部变量使用前需赋初值,不然里面是垃圾值(cccccccc 烫)。 缓冲区溢出攻击。 返回值是存储在eax中。 返回值要使用,需要个变量(容器)来接收。 main函数的ebp-4(缓冲区),存储返回值。 阅读全文
posted @ 2020-11-14 15:29 KeepMoving2018 阅读(107) 评论(0) 推荐(0)
摘要: 在编写程序的时候,经常需要存储数据。前面学习汇编时了解到了,数据可以存在寄存器中,或者内存中。 在C语言中,存储数据要存在变量中,变量就是一个容器--通常就是内存。 变量类型确定变量内存宽度,变量名就是内存的编号(别名)。 全局变量,如果不重新编译,内存地址固定不变。 CE可修改全局变量。 阅读全文
posted @ 2020-11-14 13:15 KeepMoving2018 阅读(127) 评论(0) 推荐(0)
摘要: 1、函数定义 返回类型 函数名(参数列表) { 函数体 return; // 结束 } 2、画堆栈图 int plus(int x,int y) { return x+y; } void main() { plus(1,2); return; } 进入反汇编界面,追踪函数执行每一步。堆栈变化。 3、 阅读全文
posted @ 2020-11-14 10:36 KeepMoving2018 阅读(260) 评论(0) 推荐(0)