0day2安全——笔记2】的更多相关文章

第二章 修改临界变量 #include <stdio.h> #include <string.h> #define PASSWORD "1234567" int verify_password(char *password){ int flag; ]; flag = strcmp(password,PASSWORD);//flag需要为1才能溢出 strcpy(buffer,password);//溢出点 return flag; } void main(){…
第二章 函数调用约定 不同的操作系统,语言和编译器调用函数的原理差不多,但是具体的调用约定有差异. C语言VC++编译的函数传参顺序如下图所示(默认使用__stdcall调用约定) 函数调用步骤(__stdcall约定)1. 参数入栈:将参数从右向左依次压入系统栈中2. 返回地址入栈:将当期代码区调用指令的下一条指令地址压入栈中,供函数返回时继续执行3. 代码区跳转:处理器从当前代码区跳转到被调用函数的入口处4. 栈帧调整: 保存当前栈帧状态值:已被后面回复本栈帧使用(EBP入栈) 将当前栈帧切…
第二章 内存的不同用途 windows应用—>编译连接—>PE文件—>进程 进程使用的内存 1.代码区:储存着被装入执行的二进制机器代码,处理器会到这个区域取指和执行 2.数据区:用于储存全局变量等. 3.堆区:进程可以在堆区动态请求一定大小的内存空间,用完之后还给堆区.动态分配和回收是堆区的特点. 4.栈区:用于动态的存储函数直接的调用关系,以保证被调用函数在返回时恢复到母函数中继续执行. 栈和系统栈 栈:(后进先出表) 栈的操作:POP(出栈),PUSH(入栈) 标识栈的属性:TOP…
第一章 PE和内存之间的映射 节偏移 文件偏移地址(File Offset Address):数据在PE文件中的地址 装载地址(Image Base):PE装入内存的基地址 虚拟内存地址(Virtual Address,VA):PE文件中的指令被装入内存后的地址 相对虚拟地址(Relative Virtual Address,RVA):相对虚拟地址是虚拟内存地址相对于映射基址(装载地址)的偏移量 关系: VA = Image Base + RVA 节偏移=文件虚拟地址偏移量-文件物理地址偏移量…
这是阅读廖雪峰的官方网站的笔记,用于自己以后回看 1.进入项目文件夹 初始化一个Git仓库,使用git init命令. 添加文件到Git仓库,分两步: 第一步,使用命令git add <file>,注意,可反复多次使用,添加多个文件:// 第二步,使用命令git commit,完成. 2.修改文件 git status命令可以让我们时刻掌握仓库当前的状态,上面的命令告诉我们,readme.txt被修改过了,但还没有准备提交的修改. git diff顾名思义就是查看difference,显示的格…
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者服务器 一.安装webpack 你需要之前安装node.js $ npm install webpack -g 安装成功后,便可以使用webpack命令行了. ok,开始工作! 二.新建一个空目录,名字为myApp,文件如下 entry.js document.write("It works.&qu…
SQL Server技术内幕笔记合集 发这一篇文章主要是方便大家找到我的笔记入口,方便大家o(∩_∩)o Microsoft SQL Server 6.5 技术内幕 笔记http://www.cnblogs.com/lyhabc/articles/3914213.html Microsoft SQL Server 2005技术内幕:T-SQL查询笔记http://www.cnblogs.com/lyhabc/articles/3912608.html Microsoft SQL Server 2…
1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 3.  UML类图 4.  思维导图 (右键查看图片可放大) 5.  PHP代码 我已经把有关这部分PHP代码,上传到git.oschina.net上,可以在 https://git.oschina.net/andywww/myTest 的文件夹template_Study下看到相关的完整代码. templa…
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UML类图解析: 4.PHP代码: 我已经把有关这部分PHP代码,上传到git.oschina.net上,可以在 https://git.oschina.net/andywww/myTest 的文件夹 login1下看到相关的完整代码. (完.)…
这里将要和大家分享的是学习总结第三篇:首先感慨一下这周跟随netcore官网学习是遇到的一些问题: a.官网的英文版教程使用的部分nuget包和我当时安装的最新包版本不一致,所以没法按照教材上给出的列子测试实例,官网给出的一句话暂未发布最新包 b.某些资料不够详细只是一句话,加上网速慢,查阅资料不行啊 好了,感慨完后,下面是本篇将要分享的学习步奏,对于刚学或者即将要学习的朋友做个相互交流: 1.Model Validation(实体模型验证) 2.自定义验证属性 3.创建一个接口支持返回json…