- 博客(10)
- 资源 (3)
- 收藏
- 关注
原创 PE(Portable Executable) 文件解析
部分名称描述作用关键字段及说明DOS HeaderDOS MZ 头包含 DOS 兼容头和实际 PE 文件的偏移量e_magic(必须为 “MZ”),e_lfanew(PE 头偏移量)PE HeaderPE 文件头标识为 PE 文件,包含文件的整体信息SignatureMachine可选头(实际上是必须的)包含操作系统所需的所有信息MagicImageBase节头表描述各个段的信息,包含名称、大小、偏移等每个节头包含Name.text代码段存放可执行代码二进制代码数据。
2024-06-05 10:37:15
872
原创 汇编之mov、movsx、movzx
指令名称描述作用x86 表现x64 表现示例mov将数据从一个位置复制到另一个位置直接数据传输传输数据,不改变数据内容传输数据,不改变数据内容movsx将源操作数符号扩展到目标操作数有符号扩展数据将较小数据类型符号扩展到较大数据类型将较小数据类型符号扩展到较大数据类型movzx将源操作数零扩展到目标操作数无符号扩展数据将较小数据类型零扩展到较大数据类型将较小数据类型零扩展到较大数据类型通过movmovsx和movzx。
2024-05-24 14:13:48
1452
1
原创 逆向之if-else 和 switch分析
特性if-else结构switch结构实现方式一系列条件判断和跳转指令使用跳转表(jump table)或一系列条件判断优点简单直接,适用于少量条件判断适用于大量条件分支,执行效率高(跳转表)缺点条件分支多时,代码复杂且效率低跳转表占用空间,分支条件过少时效率不高特点每个条件都需要单独判断,执行效率取决于条件的复杂性和数量对连续的值分支效率高,不连续值时仍需要条件判断共同点都用于实现条件分支和多路径执行流都依赖条件判断或跳转来控制执行流x86表现通常需要更多的跳转指令,导致更多的CPU周期。
2024-05-23 15:26:20
752
1
原创 汇编之函数调用约定(calling conventions)
不同的函数调用约定在参数传递、栈管理和性能优化方面各有优缺点,并在 x86 和 x64 架构下使用不同的寄存器和栈。选择适合的调用约定可以根据具体的编程需求和目标平台进行优化。
2024-05-21 16:54:28
820
1
原创 汇编之条件跳转指令(JCC)指令和无条件指令
条件跳转指令:用于实现条件判断和控制流转移,依赖于特定的标志位,只有在条件满足时才跳转。无条件跳转指令:用于实现无条件的跳转、子程序调用和返回以及中断处理,不依赖于任何条件,每次执行都会跳转。这两类指令在汇编语言中各有用途,共同为实现复杂的程序控制流提供了必要的工具。
2024-05-17 14:54:36
2518
原创 汇编之基础指令
在汇编语言中,算术运算指令是用来执行基本的数学运算的。下面是一个表格,列出了常见的算术运算指令,包括指令名称、操作数1、操作数2、指令的功能描述以及示例。这些指令是汇编语言中常用的位运算指令,用于对数据的二进制位进行各种操作,以满足不同的编程需求。在汇编语言中,位运算指令是用于对数据的二进制位进行操作的指令。在汇编语言中,逻辑运算指令是用于对数据的逻辑位进行操作的。寄存器中的值进行按位与运算,结果不存储,仅设置标志位用于后续条件判断。寄存器中的值,结果不存储,仅设置标志位用于后续条件判断。
2024-05-17 11:20:07
899
原创 IIS反向代理Tomcat站点的实现方案
确保Tomcat站点可以正常访问例如:直接在浏览器打开,能正确呈现页面。打开浏览器,分别输入地址http://localhost:8080/项目文件名和http://本机IP地址/项目文件名,如果都能够正常访问到项目则说明代理成功。(如本机IP地址为,项目文件名为demo,则使用Tomcat服务器和IIS服务器访问的地址分别为和注意:查看本机ip地址方式:win+r,打开运行窗口输入cmd回车进入命令提示符,输入ipconfig命令即可查看本机ip地址。
2024-05-15 10:42:24
1989
SignalR-Core-SqlTableDependency.zip
2020-03-07
PhantomJs+selenium webdriver+验证码识别
2018-11-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人