(一)原理
干扰或拦截漏洞触发利用的条件,防止攻击者利用漏洞
(二)技术
防范技术 | 原理或说明 | |
1 | 地址空间随机化技术 | 缓冲区溢出攻击:利用缓冲区溢出漏洞,以shellcode地址来覆盖程序原有返回地址 地址空间随机化(Address Space Layout Randomization,ASLR)通过对程序加载到内存的地址随机化处理,使攻击者不能事先确定程序返回地址值,从而降低攻击成功概率 Linux系统工具:ExecShield、PaX |
2 | 数据执行阻止 | 数据执行阻止(Data Execution Prevention,DEP):指操作系统通过对特定内存区域注为非执行,使代码不能够在指定内存区域运行 利用DEP,可有效保护应用程序的堆栈区域,防止被攻击者利用 |
3 | SEHOP | SEHOP(Structured Exception Handler Overwrite Protection)原理:防止攻击者利用Structured Exception Handler( SEH)重写 |
4 | 堆栈保护 | 堆栈保护(Stack Protection)原理:通过设置堆栈完整性标记以检测函数调用返回地址是否被篡改,来阻止攻击者利用缓冲区漏洞 |
5 | 虚拟补丁 | 工作原理:对尚未进行漏洞永久补丁修复的目标系统程序,在不修改可执行程序前提下,检测进入的网络流量,过滤掉漏洞攻击数据包,保护目标系统程序免受攻击 虚拟补丁通过入侵阻断、Web防火墙等相关技术,实现给目标系统程序“打补丁”,使黑客无法利用漏洞进行攻击 |