发明名称 High Performance Software Vulnerabilities Detection System and Methods
摘要 This invention teaches a system and methods of detecting software vulnerabilities in a computer program by analyzing the compiled code and optionally the source code of the computer program. The invention models compiled software to examine both control flow and data flow properties of the target program. A comprehensive instruction model is used for each instruction of the compiled code, and is complemented by a control flow graph that includes all potential control flow paths of the instruction. A data flow model is used to record the flow of unsafe data during the execution of the program. The system analyzes the data flow model and creates a security finding corresponding to each instruction that calls an unsafe function on unsafe data. The security findings are aggregated in a security report. The system further uses precomputation to improve performance by caching 1-to-many data flow mapping for each basic block in the code.
申请公布号 US2017017789(A1) 申请公布日期 2017.01.19
申请号 US201615014309 申请日期 2016.02.03
申请人 Securisea, Inc. 发明人 Daymont Joshua M.
分类号 G06F21/55;G06F11/36;G06F21/52 主分类号 G06F21/55
代理机构 代理人
主权项 1. A software vulnerabilities detection system comprising: a) compiled code and optionally source code that resulted in said compiled code; b) an instruction model for each instruction of said compiled code comprising instruction location, debug information, instruction type and operands of each said instruction; c) a control flow graph for each said instruction comprising all potential control flow paths for each said instruction; d) a data flow model comprising recorded flow of unsafe data as observed during the execution of said compiled code, said data flow model utilizing a precomputation of data flow inputs and outputs associated with a basic block of said compiled code and optionally said source code; e) computing means for analyzing said instruction model, said control flow graph and said data flow model to obtain a security finding for each said instruction that calls an unsafe function on said unsafe data; and f) a security report comprising each said security finding, said security report comprising said debug information and said source code information if available.
地址 Atlanta GA US
您可能感兴趣的专利