Space memory error detection method with high efficiency and high availability

A memory error and detection method technology, applied in the field of spatial memory error detection, can solve problems such as high performance overhead, low compatibility, and low availability, and achieve the effects of improving usability, reducing the number of checks, and defending against spatial memory errors.

Inactive Publication Date: 2014-04-23
INST OF SOFTWARE - CHINESE ACAD OF SCI +1
View PDF2 Cites 11 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0005] Aiming at the problems of high performance overhead, low compatibility, and low usability existing in the current space memory error detection method based on pointer boundaries, the purpose of the present invention is to provide a space memory error detection with low performance overhead, high

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Space memory error detection method with high efficiency and high availability
  • Space memory error detection method with high efficiency and high availability
  • Space memory error detection method with high efficiency and high availability

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0034] The present invention will be further described below with reference to the drawings and embodiments.

[0035] figure 1 It is a flow chart for implementing the present invention based on the LLVM compiler. The LLVM compiler is an open source compiler that provides a modern, modular and reusable compilation framework based on SSA (single static assignment). LLVM provides many API interfaces to facilitate the realization of different compilation optimization techniques. At the same time, the present invention is implemented on the intermediate code of LLVM, so that it can be independent of the underlying hardware architecture. The implementation of the present invention requires the use of three compilation tools to analyze and instrument the C language source code. First, use LLVM's compilation front-end tool clang to process the source code (*.c) to obtain the LLVM intermediate code file (*.bc) , And then use the link tool llvm-link to merge the intermediate code files fo...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

The invention provides a space memory error detection method with high efficiency and high availability. The method comprises the following steps: carrying out static taint analysis on a program, and carrying out taint marking on a pointer which may be controlled by an attacker; building a shadow memory space before the program runs; storing boundary information of the taint marked pointer; creating the boundary information for the taint marked pointer in the program, and transmitting the information to other related pointers; and finally carrying out pointer boundary detection on an instruction for writing the memory by using the taint marked pointer in the program, inserting a code of tolerating the error into the program, so that the program can tolerate the space memory error to ensure the availability of the program. By adopting the method, performance overhead when the converted program runs is reduced, and the space memory error can be effectively detected. In addition, the availability of the program is improved by adopting an error-tolerating method, and the program is prevented from being attacked by denial of service.

Description

Technical field [0001] The invention belongs to the technical field of computer software memory security, and specifically relates to a space memory error detection method. Background technique [0002] Program memory errors are usually divided into two categories: space memory errors and time memory errors. Space memory errors include array out-of-bounds errors (such as buffer overflow), uninitialized pointer dereference, invalid type conversion errors, format string errors, and so on. Time memory errors include dangling pointer dereference, double release, invalid release, etc. Most of the memory errors exist in the C / C++ language, because according to the C / C++ language standard, array out of bounds, null pointer dereference, and reading an uninitialized variable will cause undefined behavior. The attacker can control the execution of the program by using the program's memory error. Among the top 25 most dangerous software errors published by CWE / SANS, memory errors account...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
IPC IPC(8): G11C29/56
Inventor 丁丽萍赵晓柯卢国庆
Owner INST OF SOFTWARE - CHINESE ACAD OF SCI
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products