{"title":"Verification State-Space Reduction through Restricted Parsing Environments","authors":"Jacob I. Torrey, Mark P. Bridgman","doi":"10.1109/SPW.2015.30","DOIUrl":null,"url":null,"abstract":"We discuss the potential for significant reduction in size and complexity of verification tasks for input-handling software when such software is constructed according to Lang Sec principles, i.e., Is designed as a recognizer for a particular language of valid inputs and is compiled for a suitably limited computational model no stronger than needed for the recognition task. We introduce Crema, a programming language and restricted execution environment of sub-Turing power, and conduct a case study to estimate and compare the respective sizes of verification tasks for the qmail SMTP parsing code fragments when executed natively vs in Crema -- using LLVM and KLEE. We also study the application of the same principles to the verification of reference monitors.","PeriodicalId":301535,"journal":{"name":"2015 IEEE Security and Privacy Workshops","volume":"3 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-05-21","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2015 IEEE Security and Privacy Workshops","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/SPW.2015.30","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5
Abstract
We discuss the potential for significant reduction in size and complexity of verification tasks for input-handling software when such software is constructed according to Lang Sec principles, i.e., Is designed as a recognizer for a particular language of valid inputs and is compiled for a suitably limited computational model no stronger than needed for the recognition task. We introduce Crema, a programming language and restricted execution environment of sub-Turing power, and conduct a case study to estimate and compare the respective sizes of verification tasks for the qmail SMTP parsing code fragments when executed natively vs in Crema -- using LLVM and KLEE. We also study the application of the same principles to the verification of reference monitors.