Using Dependence Graphs to Assist Verification and Testing of Information-Flow Properties

被引:2
作者
Herda, Mihai [1 ]
Tyszberowicz, Shmuel [2 ]
Beckert, Bernhard [1 ]
机构
[1] Karlsruhe Inst Technol, Karlsruhe, Germany
[2] Acad Coll Tel Aviv Yaffo, Tel Aviv, Israel
来源
TESTS AND PROOFS, TAP 2018 | 2018年 / 10889卷
关键词
Information flow control; Noninterference; System dependence graph; Deductive verification; Testing; PROGRAMS;
D O I
10.1007/978-3-319-92994-1_5
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Information-flow control (IFC) techniques assist in avoiding information leakage of sensitive data to an observable output. Unfortunately, the various IFC approaches are either imprecise, thus producing many false positive alerts, or they do not scale. Using system dependence graphs (SDGs) to model the syntactic dependencies between different program parts is a highly scalable approach that enables to check whether the observable output depends on the sensitive input. While this approach is sound, security violations that it reports can be false alarms. We present a technique to overcome these problems by combining two existing approaches in a novel way. We show how each security violation reported by an SDG-based approach can be used to create a simplified program that can then be handled with a second approach to prove or disprove the reported violation. As the second approach we use deductive verification and test case generation. We show that our approach is sound, and demonstrate its benefits by means of examples. We discuss the challenges of implementing the approach using JOANA and KeY.
引用
收藏
页码:83 / 102
页数:20
相关论文
共 32 条
[1]  
AGRAWAL H, 1994, SIGPLAN NOTICES, V29, P302, DOI 10.1145/773473.178456
[2]   Verifying data- and control-oriented properties combining static and runtime verification: theory and tools [J].
Ahrendt, Wolfgang ;
Chimento, Jesus Mauricio ;
Pace, Gordon J. ;
Schneider, Gerardo .
FORMAL METHODS IN SYSTEM DESIGN, 2017, 51 (01) :200-265
[3]  
Ahrendt W, 2016, LECT NOTES COMPUT SC, V10001, P495, DOI 10.1007/978-3-319-49812-6_15
[4]   Combined Static and Dynamic Analysis [J].
Artho, Cyrille ;
Biere, Armin .
ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2005, 131 :3-14
[5]  
BALL T, 1993, LECTURE NOTES COMPUT, V749, P206, DOI DOI 10.1007/BFB0019410
[6]  
Beckert B., 2017, WORKSH HOT ISS SEC P, P6
[7]   Information Flow in Object-Oriented Software [J].
Beckert, Bernhard ;
Bruns, Daniel ;
Klebanov, Vladimir ;
Scheben, Christoph ;
Schmitt, Peter H. ;
Ulbrich, Mattias .
LOGIC-BASED PROGRAM SYNTHESIS AND TRANSFORMATION, LOPSTR 2013, 2014, 8901 :19-37
[8]   LATTICE MODEL OF SECURE INFORMATION-FLOW [J].
DENNING, DE .
COMMUNICATIONS OF THE ACM, 1976, 19 (05) :236-243
[9]   CERTIFICATION OF PROGRAMS FOR SECURE INFORMATION-FLOW [J].
DENNING, DE ;
DENNING, PJ .
COMMUNICATIONS OF THE ACM, 1977, 20 (07) :504-513
[10]   Towards Fully Automatic Logic-Based Information Flow Analysis: An Electronic-Voting Case Study [J].
Do, Quoc Huy ;
Kamburjan, Eduard ;
Wasser, Nathan .
PRINCIPLES OF SECURITY AND TRUST (POST 2016), 2016, 9635 :97-115