0day安全 | Chapter 9 Windows安全机制概述
启程
被酒莫惊春睡重,赌书消得泼茶香。当时只道是寻常。
这是本书的第2篇:“漏洞利用原理(高级)”。
自己在一点一点地朝着梦想前进,继续加油吧!
总结
漏洞的本源就是冯诺伊曼模型的特点:代码和数据相混淆!
微软对内存进行保护的安全措施:
- GS编译:即函数返回地址前添加Security Cookie
- SEH校验
- Heap Cookie和Safe Unlinking机制
- DEP
- ASLR
- SEHOP (Structured Exception Handler Overwrite Protection)
XP-SP2后保护机制汇总:
XP | 2003 | Vista | 2008 | Win 7 | ||
---|---|---|---|---|---|---|
GS | - | - | - | - | - | - |
Security Cookie | Y | Y | Y | Y | Y | |
变量重排 | Y | Y | Y | Y | Y | |
安全SEH | - | - | - | - | - | - |
SEH句柄验证 | Y | Y | Y | Y | Y | |
堆保护 | - | - | - | - | - | - |
安全拆卸 | Y | Y | Y | Y | Y | |
安全快表 | Y | Y | Y | Y | Y | |
Heap Cookie | Y | Y | Y | Y | Y | |
元数据加密 | Y | Y | Y | Y | Y | |
DEP | - | - | - | - | - | - |
NX | Y | Y | Y | Y | Y | |
永久DEP | N | N | Y(SP1,2) | Y | Y | |
默认OptOut | N | Y | N | Y | N | |
ASLR | - | - | - | - | - | - |
PEB,TEB | Y | Y | Y | Y | Y | |
堆 | N | N | Y | Y | Y | |
栈 | N | N | Y | Y | Y | |
映像 | N | N | Y | Y | Y | |
SEHOP | - | - | - | - | - | - |
SEH链验证 | N | N | Y(SP1) | Y(SP0) | Y |
注:上表中黑体字为措施概述,其下为具体的安全措施。