摘要
黑客之所以能够针对目标程序进行溢出攻击,其根本原因在于计算机中的数据和代码没有明确区分的缘故。使用DEP(Data Execution Prevention,数据执行保护)技术,可以用来弥补计算机中数据和代码混淆这一根本问题。DEP的工作原理是将数据所在内存页(包括默认的堆页、各种堆栈页、内存池页等)标记为不可执行状态,这样即使非法溢出成功之后,当Shellcode代码试图在数据页面上执行指令时,CPU检测到在非执行区域执行指令时,将禁止其执行并抛出异常,并转入异常处理程序。
出处
《网络安全和信息化》
2018年第8期122-126,共5页
Cybersecurity & Informatization