学习Hook的必备知识

Posted feveryee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习Hook的必备知识相关的知识,希望对你有一定的参考价值。

1.汇编

2.API

3.内存

4.进程

5.窗口

必须熟悉的汇编指令:

PUSH  入栈

MOV   赋值

JMP(JNZ  JE)  跳转

CALL  调用函数

RET  返回

Cmp  比较

Test  比较

必须知道什么叫寄存器并且使用

EAX    累加寄存器(一般情况下,运算结果,call的结果)

EBX    基址寄存器(存储的基址)

ECX    计数寄存器(计次循环)

EDX    数据寄存器(数据)

EBP    参数或局部变量

ESP    堆栈

EDI     目的变址寄存器(交换的目的)

ESI     源变址寄存器    (交换的源)

EIP     当前函数运行位置

程序无法被反编译,所以我们可以通过汇编的形式区了解功能。

也可以通过汇编代码来对函数或者是变量进行赋值操作

 

API:看懂API和调用API

在windows系统上的程序,都会调用API函数,我们只有找到关键的API函数,进行Hook可以到达意想不到的效果

内存:了解程序在内存的存储方式

所有的数据都是存在内存的,都会有一个存储的地址 这个地址我们叫做内存地址

进程:Hook是在进程中操作的

每个进程都是独立的,除非共享,注入 包括了很多DLL,Hook不仅仅是exe,更多的是DLL

窗口:消息机制

windows的系统是基于消息的

 

 

 

 

以上是关于学习Hook的必备知识的主要内容,如果未能解决你的问题,请参考以下文章

入门深度学习的必备数学知识

2021Java开发工程师必备知识,Java后端学习主流知识学习系列(建议先收藏)

深度学习必备基础知识

mysql索引学习必备知识

年薪50W程序员必备Linux知识 — 零起点学习Linux系列

机器学习必备知识NumPy线性代数详解