信息网络安全 ›› 2018, Vol. 18 ›› Issue (4): 47-55.doi: 10.3969/j.issn.1671-1122.2018.04.007

• • 上一篇    下一篇

针对未知PHP反序列化漏洞利用的检测拦截系统研究

陈震杭1, 王张宜1(), 彭国军1, 夏志坚2   

  1. 1.空天信息安全与可信计算教育部重点实验室,武汉大学国家网络安全学院,湖北武汉 430072
    2. 百度科技有限公司,北京 100085
  • 收稿日期:2018-02-02 出版日期:2018-04-15 发布日期:2020-05-11
  • 作者简介:

    作者简介:陈震杭(1992—),男,广东,硕士研究生,主要研究方向为网络安全;王张宜(1978—),男,河南,讲师,博士,主要研究方向为信息安全、密码学;彭国军(1979—),男,湖北,教授,博士,主要研究方向为网络安全、恶意代码;夏志坚(1993—),男,重庆,硕士,主要研究方向为网络安全。

  • 基金资助:
    国家自然科学基金[61332019, 61202387, 61373168];国家重点基础研究发展计划(973计划)[2014CB340600]:NSFC-通用技术基础研究联合基金[U1636107]

Research on Detection and Interception System for Unknown PHP Object Injection Exploit

Zhenhang CHEN1, Zhangyi WANG1(), Guojun PENG1, Zhijian XIA2   

  1. 1. Key Laboratory of Aerospace Information Security and Trusted Computing, Ministry of Education, School of Cyber Science and Engineering, Wuhan University, Wuhan Hubei 430072, China
    2. Baidu Inc., Beijing 100085, China
  • Received:2018-02-02 Online:2018-04-15 Published:2020-05-11

摘要:

针对大部分Web应用在反序列化漏洞防护措施上存在不足,只能在漏洞公开后实行应急措施,无法应对未公开的漏洞攻击的问题,文章通过对PHP反序列化机制的研究,将PHP的敏感函数调用栈作为研究出发点,以Web应用正常运行时的函数调用栈作为判定依据,实现了一个基于敏感函数调用栈的未知反序列化漏洞动态检测与拦截系统。通过对4个PHP Web应用的6个反序列化漏洞的实验测试可知,该系统可成功拦截当前所有PHP反序列化漏洞攻击,并能够提取或回溯漏洞攻击所构造的POP攻击链,实现零误报。系统平均性能消耗为3.67%。

关键词: PHP反序列化漏洞, 函数调用栈, 安全防护

Abstract:

Most Web applications could not be able to defend the unknown PHP deserialization vulnerabilities attack. The common solution is making some emergency measures after the vulnerabilities have been disclosed. This article studies the PHP deserialization mechanism and takes the sensitive function call stack as a starting point for research. Taking the function call stack of Web application in normal running as the basis of judgment, this article implements an unknown PHP deserialization vulnerabilities dynamic detection and interception system based on the sensitive function call stack. Experimental tests of 6 deserialization vulnerabilities in 4 PHP Web applications show that the system can successfully intercept all current PHP deserialization vulnerabilities attacks and can extract or trace the POP attack chains constructed by the attacks. The system achieves zero false positives with an average performance cost of 3.67%.

Key words: PHP object injection, function call stack, security protection

中图分类号: