尽管有许多防御和保护机制已经被引入到现代操作系统中,但内存泄漏漏洞仍然对软件系统和网络安全造成巨大威 胁. 对于返回导向式编程ROP 攻击( Return Oriented Programming) 通常利用缓冲区溢出漏洞改写函数的返回地址,而函数指针在c /c + + 中普遍存在,比如struct 结构体和虚函数中都含有大量的函数指针. 本文通过实验表明了覆盖函数指针发起的ROP攻击是存在的并且提出fpDetect 检测方法用来检测这种攻击. 采取二进制代码插桩技术与动态检测相结合,大大提高了检测的准确性. 通过实验证明了fpDetect 检测方法可以应用在Linux 和windows 操作系统中.