Automatic discovery of stateful variables in network protocol software based on replay analysis

Automatic discovery of stateful variables in network protocol software based on replay analysis
复制标题

基于重放分析的网络协议软件状态变量自动发现

DOI:
10.1631/fitee.2200275
复制
发表时间:
2023-03
影响因子:
3
通讯作者:
Jinshu Su
Jinshu Su
中科院分区:
工程技术3区
文献类型:
--
作者:
Jianxin Huang;Bo Yu;Runhao Liu;Jinshu Su

文献摘要

参考文献

相似文献

网络协议软件通常具有功能复杂、状态空间大的特点。在这种类型的程序中,大量的有状态变量用于表示状态的演变and.store有关会话的一些信息容易出现潜在的缺陷,这些缺陷是由于违反协议规范、要求和程序逻辑而引起的。发现这些变量对于发现和利用vulnerabilities.in协议软件具有重要意义,并且仍然需要大量的人工验证。本文提出了一种新的方法,可以自动发现网络协议软件中有状态变量的使用。其核心思想是.stateful变量表征了通信实体和软件状态的信息,因此它将在程序执行期间以全局或静态变量的形式生成和存在。通过记录和回放协议、程序的执行过程,利用动态仪器技术跟踪协议、程序生命周期中的各种变量。我们充分利用现有的漏洞从多个维度制定了一些规则来判断存储在关键内存区域的数据是否具有状态特征. knowledge.to我们还实现了。一个原型系统,可以自动发现有状态变量,然后我们进行了九个程序。ProFuzzBench和两个复杂的现实世界的软件程序。利用现有的开放源代码对算法进行了测试,测试结果表明,该算法的平均TPR可达82%,准确率可达96%左右
Network protocol software is usually characterized by complicated functions and a vast state space. In.this type of program, a massive number of stateful variables that are used to represent the evolution of the states and.store some information about the sessions are prone to potential flaws caused by violations of protocol specification.requirements and program logic. Discovering such variables is significant in discovering and exploiting vulnerabilities.in protocol software, and still needs massive manual verifications. In this paper, we propose a novel method, that.could automatically discover the use of stateful variables in network protocol software. The core idea is that a.stateful variable features information of the communication entities and the software states, so it will generate and.exist in the form of a global or static variable during program execution. Based on recording and replaying a protocol.program’s execution, varieties of variables in the life cycle can be tracked with the technique of dynamic instrument..We draw up some rules from multiple dimensions by taking full advantage of the existing vulnerabilities knowledge.to determine whether the data stored in critical memory areas have stateful characteristics. We also implemented.a prototype system that can discover stateful variables automatically, then we performed it on nine programs in.ProFuzzBench and two complex real-world software programs. With the help of available open-source code, the.evaluation results show that the average TPR can reach 82% and the precision can be approximately up to 96%
DOI: --
发表时间: 2021
期刊: --
影响因子: --
作者:
Andrea Fioraldi;Daniele Cono D'Elia;D. Balzarotti
通讯作者: Andrea Fioraldi;Daniele Cono D'Elia;D. Balzarotti
DOI: 10.1145/1085130.1085139
发表时间: 2005-09
期刊: --
影响因子: --
作者:
Yasushi Saito
通讯作者: Yasushi Saito
DOI: --
发表时间: 2004-03
期刊: --
影响因子: --
作者:
M. Musuvathi;D. Engler
通讯作者: M. Musuvathi;D. Engler
DOI: 10.1109/tifs.2022.3192991
发表时间: 2022-02
影响因子: 6.8
作者:
Junqiang Li;Senyi Li;Gang Sun;Ting Chen;Hongfang Yu
通讯作者: Junqiang Li;Senyi Li;Gang Sun;Ting Chen;Hongfang Yu
DOI: 10.1145/1394608.1382146
发表时间: 2008-06
期刊: 2008 International Symposium on Computer Architecture
影响因子: --
作者:
Pablo Montesinos;L. Ceze;J. Torrellas
通讯作者: Pablo Montesinos;L. Ceze;J. Torrellas