加载中
汇编常用知识

1. cmp 和 test区别 cmp相当于减法, test相当于and. 但都不会将结果送至操作数。 因为cmp减法,所以可以有大于,大于等于,等于,小与,小与等于。 test是and,所以只会有等于jz 和 不等于j...

rax
2021/07/26 09:35
108
x64生成汇编代码特点

1.x64相对于x86首先多了R8-R15寄存器 2. fastcall是其默认调用方式,前四个参数分别通过RCX, RDX, R8 R9来进行传递。但是注意,堆栈依然要为其分配空间(并且固定都需要分配20h).其他的通过堆...

2021/07/26 09:34
846
ShellCode代码技巧

1 ShellCode为了可以任意压缩数据到堆栈。 对于字符串可以这样处理 下面代码是我们调用获取LoadLibraryExA时候使用的机器。前面将数据压栈。后面将ESP压栈,这样指针就入栈了 push 0x0000417...

2021/07/26 09:33
227
ARGB图像格式内存顺序

windows中: 1.ARGB 存储顺序。 我们经常写 图像时候使用 0xFF010203 用来表示ARGB一个图像。从上面我们就可以看出,在内存的布局其实是按照 顺序B,G,R,A顺序布局的.也就是说表示的和内存布局...

2021/07/26 09:32
1.1K
windows常见反调试手法(只是记录自己遇见的)

一。常用的反调试手段 1.直接检测进程是否处于debug状态。调用IsDebugPresent 2.原理其实和1一样,只是不调用API,是直接去遍历进程的PEB中的,调试标志位 二。一些拍脑袋但是很有想法的反调...

jmp
2021/07/26 09:32
265
session隔离

1、从win7开始微软推出了session隔离。这样运行在服务层面的程序,就不能再用户界面显示窗口等操作。 想要服务在窗口显示程序,就要做session 0的突破 主要思路基本都是获取登录用户的token...

2021/07/26 09:30
199
进程用户

进程是用户的。一般用户分成了System, Local_Service, Network_Service,以及当前用户。 其中当前用户的是用户登录之后,才启动的进程。所以一般权限都是当前用户的权限。 system进程权限。比...

2021/07/26 09:29
174
浏览器安装位置

1.对于一些标准浏览器,例如ie, firefox, chrome等(国内的肯定是没有的)。都会写在目录 HKEY_LOCAL_MACHINE\SOFTWARE\Clients\StartMenuInternet......

2021/07/26 09:28
96
Wow64Ext

如果在64bit系统上面,你需要用32bit exe调用64bit dll. 可以百度x64call。 该库可以在32bit进程调用64bit dll. 但是注意 1.只能32bit进程调用64dll,反过来不行。 2.可以调用自定义的dll,但...

2021/07/26 09:27
230
修改PE文件格式

在我们进行PE的操作过程中,经常出现修改了PE。导致PE文件运行不了。 这个时候VS的dumpbin就可以排上用场了。用dumpbin /all我们输出所有的信息,可以用来排查PE文件格式的问题...

2021/07/26 09:24
59
strace

该工具类似于windows中的Process Monitor,可以监视程序对系统的调用。 如果要分析某些工具怎么实现的,这个是特别好的工具

2021/07/26 09:23
37
gdb调试程序

1. 增加断点 break 在进入指定函数时候停住 break 在指定行号停下 例子: break xxx.cpp:100 2. 删除断点 delete 删除所有断点 delete breakpoint[n] 删除某个断点 disable breakpoint[n] 禁....

2021/07/26 09:23
78
cmake的使用常见知识

cmake模板可以用lijpeg,这个是比较精简,但是覆盖面又广的cmake 1.cmake变量 定义用 set(param xxxx) 使用 ${param} 2. cmake 添加自定义的include 3.设置编译开关 部分有些编译需要我们设置...

2021/07/26 09:21
129
模板函数最好写在.h中

模板作用的就是生成代码,是用来生成代码的代码。 如果说C++是汇编的高级抽象,那么模板就是C++代码的高级抽象 1.模板的所有实现都要在.h中 这个很奇特,因为和我们印象里的编写C++代码不同。...

c++
2021/07/26 09:20
523
宏定义冲突

有些时候,很多文件都有自己的#define.然后引用时候会导致很多的 define冲突文件。我们可以关掉部分#define,规则如下 #ifdef uin64 #undef uint64 //这样就解决了所有的define冲突......

2021/07/26 09:19
176
一些常见语法坑

1. size_t 在32是 unsigned int ,在64 是unsigned __int64

2021/07/26 09:19
59
C语言移位操作

C语言提供了移位操作。并且同时提供了带符号移位和不带符号移位。 其中<< >>是带符号的。<<< >>>是不带符号的 注意编译器会根据数据类型。决定使用带符号移位,还是不带符号移位

2021/07/26 09:18
586
const用法.txt

1.const 修饰函数参数 如果参数是指针传递,那么加上const可以避免执行的内容被修改 如: void copy(const char *pSrc, char *pDst); 如果参数是值传递,那么参数是实参复制过来的。那么这个时...

2021/07/26 09:17
47
快速清理回收站

当回收站有过多的文件时候,会导致打开很慢。删除也很慢。 我们可以用命令行的方式。他不会占用太多的CPU和内存资源 用管理员运行 rd /s c:\$Recycle.Bin 不同的盘的回收站。修改盘符即可......

2021/07/23 09:43
108
windows查看端口占用

netstat -ano | findstr 80 //列出进程极其占用的端口,且包含 80 tasklist | findstr 9268 taskkill -PID -F //强制关闭某个进程......

2021/07/23 09:42
63

没有更多内容

加载失败,请刷新页面

返回顶部
顶部