计算机工程与应用 ›› 2016, Vol. 52 ›› Issue (11): 101-107.
谢汶兵1,2,马晓东1,李中升1,牛夏牧2
XIE Wenbing1,2, MA Xiaodong1, LI Zhongsheng1, NIU Xiamu2
摘要: C/C++在提供灵活的使用方式和高效目标码的同时,由于缺少边界检查机制,缓冲区溢出成为C/C++程序面临的一种严重的攻击威胁。给出了一种缓冲区溢出攻击的动态防护方法。使用在库中声明的数组来备份函数的控制流信息,包括返回地址和栈帧指针,来动态监测非法的篡改行为。该方法可以对缓冲区溢出攻击中的直接攻击和间接攻击均有效防护。通过RIPE基准平台和两道实际应用的测试以及理论比较表明该方法的有效性。