windows-pwn-0

First Post:

Last Update:

Word Count:
646

Read Time:
2 min

Windows Pwn 0x00 (基本知识)

函数调用约定

​ _cdecl

​ _stdcall

​ _fastcall

保护

相关保护的开启都依赖于编译器的编译方式, 不同的编译器, 开启的程序保护机制也有所不同.

ASLR

ASLR保护指的是地址随机化技术(Address Space Layout Randomization),这项技术将在程序启动时将DLL随机的加载到内存中的位置,这将缓解恶意程序的加载。ASLR技术自Windows 10开始已经在系统中被配置为默认启用,。

High Entropy VA

这个保护被称为高熵64位地址空间布局随机化,一旦开启,表示此程序的地址随机化的取值空间为64 bit,这会导致攻击者更难去推测随机化后的地址。

Force Integrity

这个保护被称为强制签名保护,表示此程序加载时需要验证其中的签名,如果签名不正确,程序将会被阻止运行。

Isolation

隔离保护, 开启之后, 表示此 程序加载时需要验证其中的签名,如果签名不正确,此程序会被阻止运行

NX/DEP/PAE

NX保护指的是内存页不可执行, 这项技术是一项系统级别内存保护的功能, 使得操作系统能够将一页或多页内存标记为不可执行,防止被标记为不可执行的内存页的代码不可执行。

DEP:(Data Execution Prevention)

PAE:(Physical Address Extension)

SEHOP

结构化异常处理保护(Structured Exception Handling Overwrite Protection), 这能够防止攻击者利用结构化异常处理来进一步利用。

CFG

控制流保护(Control Flow Guard), 这项技术通过间接跳转前插入校验代码,检查目标的有效性,进而可以阻止执行流跳转到预期之外的地点。

RFG

类似于linux 的cannary保护, 返回地址保护(Return Flow Guard),这项技术在每个函数头部将返回地址保存到fs:[rsp] (Thread Control), 并在函数返回前将其与返回地址进行比较。

SafeSEH

安全结构化异常处理(Safe Structured Exception Handlers),事先为你定义一些异常处理函数, 并基于此构造安全结构化异常处理表,程序运行后,安全结构化异常处理表 之外的异常处理都会被阻止运行

GS

也类似于linux中的cannary保护, 在返回地址之前存放一个额外的Security Cookie,然后在ret之前与取出该值与之前存放的值做比较

Authenticode

签名保护

.NET

DLL混淆

打赏点小钱
支付宝 | Alipay
微信 | WeChat