摘要:
pslist 和 psscan 的区别 列表: “ pslist ” 模块使用与将在实时计算机上执行的任务列表命令相同的算法。 而且,Windows 任务管理器也使用相同的方法。 上面提到的命令“pslist”遍历 Windows 内核维护的活动进程结构列表。 windows内核使用EPROCESS 阅读全文
摘要:
下载恶意软件分析诀窍和工具DVD和vol3 下载地址:https://codeload.github.com/ganboing/malwarecookbook/zip/refs/heads/master 然后,下载vol3,并安装: https://codeload.github.com/volat 阅读全文
摘要:
我是直接使用proc exp dump的,因为默认的任务管理器不是所有的process都能dump。 任务管理器dump 任务管理器可以说是最易获取的系统工具,同时它具有生成转储文件的功能。但要注意的是在64位操作系统上面,默认启动的是64位的任务管理器。使用任务管理器生成转储文件需要遵循一个原则: 阅读全文
摘要:
CVE-2021-26411复现,学习JavaScript之POC源码分析 概述 CVE-2021-26411,该漏洞的原因:removeAttributeNode()触发属性对象nodeValue的valueOf回调,回调期间手动调用clearAttributes(),导致nodeValue保存的 阅读全文
摘要:
vs代码生成四种模式: MT选项:链接LIB版的C和C++运行库。在链接时就会在将C和C++运行时库(LIBCMT.LIB、LIBC.LIB)集成到程序中,程序体积会变大。MTd选项:LIB的调试版。MD选项:使用DLL版的C和C++运行库,这样在程序运行时会动态的加载对应的DLL,程序体积会减小, 阅读全文
摘要:
4.整数的取模 取模运算可以通过除法指令实现。一般的优化做法是将其转换成等价的位运算或者除法运算,再由除法运算进行优化。 虚函数 C++的三大核心机制是封装,继承,多态,而虚函数就是多态的一种体现。软件逆向中,难免遇到使用面向对象思想设计的软件,而虚函数就是在实际软件逆向过程中的一种还原面向对象的重 阅读全文
摘要:
数据结构 主要是对局部变量,全局变量,数组等的识别。 1.局部变量 局部变量是函数内定义的变量,存放的内存区域称之为栈区。生命周期就是从函数进入到返回释放。 函数在入口处申请了预留栈空间和局部变量空间,也就是sub rsp,30h。局部变量空间在高地址。在应用程序被编译成release版本的时候,需 阅读全文
摘要:
64位软件逆向技术 寄存器 本节讨论的x64是AMD和INTEL64的合成,是指与现有x86兼容的64位CPU。在64位系统中,内存地址为64位。 x64系统通用寄存器的名称,第一个字母从E改为R“RAX”,大小扩展到64位,数量增加8个,扩充了8个128位XMM寄存器。 函数 1.栈平衡 RSP用 阅读全文
摘要:
【逆向】x64程序逆向基础 主要区别 1. 所有地址指针都是64位。 2. 增加和扩展新的寄存器,并兼容原32位版本的通用寄存器。 3. 原指令指针寄存器EIP扩展为RIP。 寄存器 1. 64位寄存器兼容原32位寄存器。 2. 新增加8个XMM寄存器(XMM8-XMM15)。 3. 扩展原32位寄 阅读全文
摘要:
硬编码 硬编码概述 计算机只认识0和1,也就是二进制,任何一个可执行程序最终就是0和1组成,如果非要细分的化,可以分为两个部分:数据和指令,但是对于这两个部分没有明显的界限,如果你把某个地址给到CPU的EIP寄存器,这时候这个地址就会当成指令去执行,但是指令是有自己的格式,如果你指向的地址没有按照指 阅读全文