The original paper is in English. Non-English content has been machine-translated and may contain typographical errors or mistranslations. ex. Some numerals are expressed as "XNUMX".
Copyrights notice
The original paper is in English. Non-English content has been machine-translated and may contain typographical errors or mistranslations. Copyrights notice
떠오르는 시스템 프로그래밍 언어 Rust는 빠르고 효율적이며 메모리 안전합니다. 그러나 Rust에서 원시 포인터를 부적절하게 역참조하면 새로운 안전 문제가 발생합니다. 본 논문에서는 이러한 문제에 대한 자세한 분석을 제시하고 안전하지 않은 원시 포인터 역참조 동작을 탐지하기 위한 실용적인 하이브리드 접근 방식을 제안합니다. 우리의 접근 방식은 패턴 일치를 사용하여 불법적인 다중 변경 가능 참조를 생성하는 데 사용할 수 있는 함수를 식별합니다(우리는 이를 다음과 같이 정의합니다). 도둑 기능) 런타임에 동적 검사를 수행하기 위해 역참조 작업을 계측합니다. 우리는 UnsafeFencer라는 도구를 구현하고 52개의 실제 상자*에서 28개의 도둑 기능을 성공적으로 식별했습니다. 그 중 13개의 공개 기능은 여러 변경 가능한 참조를 생성하기 위해 검증되었습니다.
Zhijian HUANG
National University of Defense Technology
Yong Jun WANG
National University of Defense Technology
Jing LIU
National University of Defense Technology
The copyright of the original papers published on this site belongs to IEICE. Unauthorized use of the original or translated papers is prohibited. See IEICE Provisions on Copyright for details.
부
Zhijian HUANG, Yong Jun WANG, Jing LIU, "Detecting Unsafe Raw Pointer Dereferencing Behavior in Rust" in IEICE TRANSACTIONS on Information,
vol. E101-D, no. 8, pp. 2150-2153, August 2018, doi: 10.1587/transinf.2018EDL8040.
Abstract: The rising systems programming language Rust is fast, efficient and memory safe. However, improperly dereferencing raw pointers in Rust causes new safety problems. In this paper, we present a detailed analysis into these problems and propose a practical hybrid approach to detecting unsafe raw pointer dereferencing behaviors. Our approach employs pattern matching to identify functions that can be used to generate illegal multiple mutable references (We define them as thief function) and instruments the dereferencing operation in order to perform dynamic checking at runtime. We implement a tool named UnsafeFencer and has successfully identified 52 thief functions in 28 real-world crates*, of which 13 public functions are verified to generate multiple mutable references.
URL: https://global.ieice.org/en_transactions/information/10.1587/transinf.2018EDL8040/_p
부
@ARTICLE{e101-d_8_2150,
author={Zhijian HUANG, Yong Jun WANG, Jing LIU, },
journal={IEICE TRANSACTIONS on Information},
title={Detecting Unsafe Raw Pointer Dereferencing Behavior in Rust},
year={2018},
volume={E101-D},
number={8},
pages={2150-2153},
abstract={The rising systems programming language Rust is fast, efficient and memory safe. However, improperly dereferencing raw pointers in Rust causes new safety problems. In this paper, we present a detailed analysis into these problems and propose a practical hybrid approach to detecting unsafe raw pointer dereferencing behaviors. Our approach employs pattern matching to identify functions that can be used to generate illegal multiple mutable references (We define them as thief function) and instruments the dereferencing operation in order to perform dynamic checking at runtime. We implement a tool named UnsafeFencer and has successfully identified 52 thief functions in 28 real-world crates*, of which 13 public functions are verified to generate multiple mutable references.},
keywords={},
doi={10.1587/transinf.2018EDL8040},
ISSN={1745-1361},
month={August},}
부
TY - JOUR
TI - Detecting Unsafe Raw Pointer Dereferencing Behavior in Rust
T2 - IEICE TRANSACTIONS on Information
SP - 2150
EP - 2153
AU - Zhijian HUANG
AU - Yong Jun WANG
AU - Jing LIU
PY - 2018
DO - 10.1587/transinf.2018EDL8040
JO - IEICE TRANSACTIONS on Information
SN - 1745-1361
VL - E101-D
IS - 8
JA - IEICE TRANSACTIONS on Information
Y1 - August 2018
AB - The rising systems programming language Rust is fast, efficient and memory safe. However, improperly dereferencing raw pointers in Rust causes new safety problems. In this paper, we present a detailed analysis into these problems and propose a practical hybrid approach to detecting unsafe raw pointer dereferencing behaviors. Our approach employs pattern matching to identify functions that can be used to generate illegal multiple mutable references (We define them as thief function) and instruments the dereferencing operation in order to perform dynamic checking at runtime. We implement a tool named UnsafeFencer and has successfully identified 52 thief functions in 28 real-world crates*, of which 13 public functions are verified to generate multiple mutable references.
ER -