SaTC: CORE: Small: Collaborative: Understanding and Detecting Memory Bugs in Rust
SaTC: CORE: Small: Collaborative: Understanding and Detecting Memory Bugs in Rust
批准号:
1955965
负责人:
Linhai Song
金额:
$29.84万
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2020
资助国家:
美国
项目状态:
已结题
起止时间:
2020-07-01 至 2024-05-31
中文摘要
点击翻译按钮获取中文摘要
英文摘要
Rust is a young programming language designed for systems software development. Its main design goal is to achieve runtime performance as good as its competitor language, C, while offering better memory and thread safety using a linear type system and strict compile-time checking. Rust has become increasingly popular among developers of safety-critical software, such as operating systems, browsers, and block-chain systems. However, both practitioners and researchers know little about the status of memory bugs in real-world Rust programs. For example, do Rust compile-time checks eliminate all memory bugs? If not, do memory bugs in Rust exhibit certain detectable patterns? This project seeks answers to these questions by devising techniques to identify and eliminate the memory bugs? In particular, it aims to achieve a better understanding of common mistakes made by Rust programmers and build novel techniques to catch memory bugs missed by Rust compile-time checks. The outcome will influence how Rust evolves, guide how developers program Rust safely, and improve the safety of the Rust ecosystem. Rust safety mechanisms are sound, but sometimes they are too strict and prevent flexible control over low-level resources. To mitigate this problem, Rust allows developers to bypass its compiler checks using unsafe code. A function can be declared as unsafe. A piece of code inside a safe function can be unsafe, known as interior unsafe, where the unsafe code is encapsulated internally and treated as safe externally. Unfortunately, unsafe code and interior unsafe code can lead to memory bugs since they bypass Rust safety checks. This project aims to better understand Rust memory bugs and build novel static/dynamic tools to combat Rust memory bugs. This project contains three components: (1) a comprehensive taxonomy of Rust memory bugs, (2) novel static techniques to identify memory bugs in interior unsafe functions, and (3) novel fuzzing techniques enhanced by the safe/unsafe information in Rust.This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
期刊论文(5)
专著(0)
科研奖励(0)
会议论文
登录
查看更多内容
Automatically detecting and fixing concurrency bugs in go software systems
自动检测并修复Go软件系统中的并发错误
DOI:
10.1145/3445814.3446756
发表时间:
2021
期刊:
Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems
影响因子:
--
作者:
[Liu, Ziheng, Zhu, Shuofei, Qin, Boqin, Chen, Hao, Song, Linhai]
通讯作者:
Song, Linhai
DOI:
10.1145/3503222.3507753
发表时间:
2022-02
期刊:
Proceedings of the 27th ACM International Conference on Architectural Support for Programming Languages and Operating Systems
影响因子:
--
作者:
[Ziheng Liu;Shi-Xiong Xia;Yu Liang;Linhai Song;Hong Hu]
通讯作者:
Ziheng Liu;Shi-Xiong Xia;Yu Liang;Linhai Song;Hong Hu
DOI:
10.1145/3510003.3510164
发表时间:
2022-05
期刊:
2022 IEEE/ACM 44th International Conference on Software Engineering (ICSE)
影响因子:
--
作者:
[Shuofei Zhu;Ziyi Zhang;Boqin Qin;Aiping Xiong;Linhai Song]
通讯作者:
Shuofei Zhu;Ziyi Zhang;Boqin Qin;Aiping Xiong;Linhai Song
Beyond Bot Detection: Combating Fraudulent Online Survey Takers
超越机器人检测:打击欺诈性在线调查者
DOI:
10.1145/3485447.3512230
发表时间:
2022
期刊:
Proceedings of the Web Conference 2022
影响因子:
--
作者:
[Zhang, Ziyi, Zhu, Shuofei, Mink, Jaron, Xiong, Aiping, Song, Linhai, Wang, Gang]
通讯作者:
Wang, Gang
VRLifeTime -- An IDE Tool to Avoid Concurrency and Memory Bugs in Rust
VRLifeTime——避免 Rust 并发和内存错误的 IDE 工具
DOI:
10.1145/3372297.3420024
发表时间:
2020
期刊:
Proceedings of the 2020 ACM SIGSAC Conference on Computer and Communications Security
影响因子:
--
作者:
[Zhang, Ziyi, Qin, Boqin, Chen, Yilun, Song, Linhai, Zhang, Yiying]
通讯作者:
Zhang, Yiying
CAREER: Rethinking Toolchain Design for Rust
-
批准号:2145394
-
项目类别:Continuing Grant
-
资助金额:$55.02万
-
财政年份:2022
-
负责人:Linhai Song
-
依托单位:
国内基金
海外基金
登录
查看更多内容
胆固醇羟化酶CH25H非酶活依赖性促进乙型肝炎病毒蛋白Core及Pre-core降解的分子机制研究
-
批准号:82371765
-
项目类别:面上项目
-
资助金额:50万元
-
批准年份:2023
-
负责人:谭广云
-
依托单位:
锕系元素5f-in-core的GTH赝势和基组的开发
-
批准号:22303037
-
项目类别:青年科学基金项目
-
资助金额:30万元
-
批准年份:2023
-
负责人:鲁俊波
-
依托单位:
基于合成致死策略搭建Core-matched前药共组装体克服肿瘤耐药的机制研究
-
批准号:--
-
项目类别:--
-
资助金额:52万元
-
批准年份:2022
-
负责人:孙丙军
-
依托单位:
鼠伤寒沙门氏菌LPS core经由CD209/SphK1促进树突状细胞迁移加重炎症性肠病的机制研究
-
批准号:--
-
项目类别:青年科学基金项目
-
资助金额:30万元
-
批准年份:2022
-
负责人:叶成林
-
依托单位:
基于外泌体精准调控的“核-壳”(core-shell)同步血管化骨组织工程策略的应用与机制探讨
-
批准号:--
-
项目类别:--
-
资助金额:55万元
-
批准年份:2020
-
负责人:张智勇
-
依托单位:
基于外泌体精准调控的“核-壳”(core-shell)同步血管化骨组织工程策略的应用与机制探讨
-
批准号:82072415
-
项目类别:面上项目
-
资助金额:55.0万元
-
批准年份:2020
-
负责人:张智勇
-
依托单位:
肌营养不良蛋白聚糖Core M3型甘露糖肽的精确制备及功能探索
-
批准号:92053110
-
项目类别:重大研究计划
-
资助金额:70.0万元
-
批准年份:2020
-
负责人:彭鹏
-
依托单位:
Core-1-O型聚糖黏蛋白缺陷诱导胃炎发生并介导慢性胃炎向胃癌转化的分子机制研究
-
批准号:81902805
-
项目类别:青年科学基金项目
-
资助金额:20.5万元
-
批准年份:2019
-
负责人:刘菲
-
依托单位:
原始地球增生晚期的Core-merging大碰撞事件:地核增生、核幔平衡与核幔边界结构的新认识
-
批准号:41973063
-
项目类别:面上项目
-
资助金额:65.0万元
-
批准年份:2019
-
负责人:周游
-
依托单位:
CORDEX-CORE区域气候模拟与预估研讨会
-
批准号:41981240365
-
项目类别:国际(地区)合作与交流项目
-
资助金额:1.5万元
-
批准年份:2019
-
负责人:陈威霖
-
依托单位: