逆向分析
逆向
lonmar~
想学开发的web狗
展开
-
常见静态反调试技术总结
静态反调试技术PEB:BeingDebugged/Ldr /ProcessHeap /NtGlobalFlagNtQueryInformationProcess:ProcessDebugPort/ProcessDebugObjectHandle/ProcessDebugFlagsTLSETC原创 2020-06-24 18:39:19 · 1355 阅读 · 0 评论 -
常见动态反调试技术总结
软件安全|反调试技术|动态反调试技术总结原创 2020-06-27 17:15:24 · 2690 阅读 · 0 评论 -
0day堆(2)堆的调试实验
堆的调试实验调试态堆管理策略和常态堆管理策略:前者只使用空表不用块表,不真实使用调试器加载函数会触发前者__asm int3 调试最真实的栈未启用块表的堆区信息堆区起始位置(假设为0x00520000)起始位置开始依次是段表索引,虚表索引,空表使用标识和空表索引区空表索引区的位置是偏移0x178处一个堆刚刚初始化时堆块的状态:只有一个空闲的大块(...原创 2020-02-22 17:14:11 · 200 阅读 · 0 评论 -
0day堆(1)堆的管理策略
基本概念堆块:堆区内存的基本单位包括两个部分:块首,块身块首:标识这个堆块自身的信息:如大小,是否被占用等块身:分配给用户使用的数据区堆表:一般位于堆区的起始位置,用于索引堆区所有堆块的信息,包括大小,是否被占用等.占用态的堆块被使用它的程序索引,堆表只索引所有空闲态的堆块.堆表分为空闲双向链表Freelist(空表),快速单向链表Lookaside(块表)空表块...原创 2020-02-22 16:07:51 · 221 阅读 · 0 评论 -
0day学习笔记(3)Windows定位API引起的惨案(原理)
主要是windows定位API的一些前奏知识原创 2020-02-11 18:19:09 · 640 阅读 · 0 评论 -
PE文件学习(2)导入表导出表
转自:evil.eaglehttps://blog.csdn.net/evileagle/article/details/12176797导出表是用来描述模块中的导出函数的结构,如果一个模块导出了函数,那么这个函数会被记录在导出表中,这样通过GetProcAddress函数就能动态获取到函数的地址。函数导出的方式有两种,一种是按名字导出,一种是按序号导出。这两种导出方式在导出表中的描述方式...转载 2020-02-11 16:08:07 · 712 阅读 · 0 评论 -
PE文件学习(1)DOS和NT
大致结构dos头和NT头之间通常还有个DOS StubDOS头DOS头的作用是兼容MS-DOS操作系统中的可执行文件一般没啥用记录着PE头的位置DOS头定义部分typedef struct _IMAGE_DOS_HEADER { // DOS .EXE header WORD e_magic; // Magic ...原创 2020-02-11 13:01:50 · 628 阅读 · 0 评论 -
0day学习笔记(3)--修改函数返回地址
环境: devc++(编译改为32位),windows10原创 2020-02-09 14:22:09 · 245 阅读 · 0 评论 -
0day学习笔记(2)--函数调用
函数调用过程调用函数操作函数参数入栈(在当前函数栈帧),从左至右或从右至左视情况而定一般为从右至左mov 地址,参数 的一个操作并不直接pop而是定位到地址将参数传递进去call offerset: 调用函数,call标识符或地址.同时为要调用的函数开辟新的栈帧向栈中压入当前指令的地址,即返回地址跳转到调用函数的入口地址返回的时候有类似retn的操作调整栈顶和栈底...原创 2020-02-08 17:55:09 · 227 阅读 · 0 评论 -
0day笔记(1)PE文件格式与虚拟文件内存的映射
PE文件格式PE 文件格式把可执行文件分成若干个数据节(section),不同的资源被存放在不同的节中。 一个典型的 PE 文件中包含的节如下:.text 存放着二进制的机器代码.data 初始化的数据块,如宏定义、全局变量、静态变量等。.idata 可执行文件所使用的动态链接库等外来函数与文件的信息。.rsrc 存放程序的资源,如图标、菜单等。除此以外,还可能出现的节包括“....原创 2020-02-07 16:30:51 · 293 阅读 · 0 评论