SaTC: CORE: Small: Collaborative: Understanding and Detecting Memory Bugs in Rust
SaTC:核心:小:协作:理解和检测 Rust 中的内存错误
基本信息
- 批准号:1955965
- 负责人:
- 金额:$ 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.
Rust是一种年轻的编程语言,专为系统软件开发而设计。它的主要设计目标是实现与竞争对手C语言一样好的运行时性能,同时使用线性类型系统和严格的编译时检查提供更好的内存和线程安全性。Rust在安全关键软件(如操作系统、浏览器和区块链系统)的开发人员中越来越受欢迎。然而,实践者和研究人员对真实世界Rust程序中内存错误的状态知之甚少。例如,Rust编译时检查是否消除了所有内存错误?如果不是,Rust中的内存错误是否表现出某些可检测的模式?这个项目寻求这些问题的答案,通过设计技术来识别和消除内存错误?特别是,它旨在更好地理解Rust程序员所犯的常见错误,并构建新颖的技术来捕获Rust编译时检查遗漏的内存错误。结果将影响Rust的发展,指导开发人员如何安全地编程Rust,并提高Rust生态系统的安全性。 Rust安全机制是健全的,但有时它们过于严格,妨碍了对低级资源的灵活控制。为了缓解这个问题,Rust允许开发人员使用不安全的代码绕过其编译器检查。一个函数可以被声明为不安全。安全函数中的一段代码可能是不安全的,称为内部不安全,其中不安全的代码在内部封装并在外部视为安全。不幸的是,不安全代码和内部不安全代码可能会导致内存错误,因为它们绕过了Rust安全检查。该项目旨在更好地理解Rust内存错误,并构建新颖的静态/动态工具来对抗Rust内存错误。该项目包含三个组成部分:(1)Rust内存错误的全面分类,(2)识别内部不安全函数中内存错误的新型静态技术,以及(3)通过Rust中的安全/不安全信息增强的新型模糊技术。该奖项反映了NSF的法定使命,并通过使用基金会的知识价值和更广泛的影响审查标准进行评估,被认为值得支持。
项目成果
期刊论文数量(5)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
Automatically detecting and fixing concurrency bugs in go software systems
自动检测并修复Go软件系统中的并发错误
- DOI:10.1145/3445814.3446756
- 发表时间:2021
- 期刊:
- 影响因子:0
- 作者:Liu, Ziheng;Zhu, Shuofei;Qin, Boqin;Chen, Hao;Song, Linhai
- 通讯作者:Song, Linhai
Who goes first? detecting go concurrency bugs via message reordering
- DOI:10.1145/3503222.3507753
- 发表时间:2022-02
- 期刊:
- 影响因子:0
- 作者:Ziheng Liu;Shi-Xiong Xia;Yu Liang;Linhai Song;Hong Hu
- 通讯作者:Ziheng Liu;Shi-Xiong Xia;Yu Liang;Linhai Song;Hong Hu
Learning and Programming Challenges of Rust: A Mixed-Methods Study
- DOI:10.1145/3510003.3510164
- 发表时间:2022-05
- 期刊:
- 影响因子:0
- 作者: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
- 期刊:
- 影响因子:0
- 作者: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
- 期刊:
- 影响因子:0
- 作者:Zhang, Ziyi;Qin, Boqin;Chen, Yilun;Song, Linhai;Zhang, Yiying
- 通讯作者:Zhang, Yiying
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
数据更新时间:{{ journalArticles.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ monograph.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ sciAawards.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ conferencePapers.updateTime }}
{{ item.title }}
- 作者:
{{ item.author }}
数据更新时间:{{ patent.updateTime }}
Linhai Song其他文献
Understanding, Detecting, and Diagnosing Real-World Performance Bugs
- DOI:
- 发表时间:
2015 - 期刊:
- 影响因子:0
- 作者:
Linhai Song - 通讯作者:
Linhai Song
Linhai Song的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Linhai Song', 18)}}的其他基金
CAREER: Rethinking Toolchain Design for Rust
职业:重新思考 Rust 工具链设计
- 批准号:
2145394 - 财政年份:2022
- 资助金额:
$ 29.84万 - 项目类别:
Continuing Grant
相似国自然基金
胆固醇羟化酶CH25H非酶活依赖性促进乙型肝炎病毒蛋白Core及Pre-core降解的分子机制研究
- 批准号:82371765
- 批准年份:2023
- 资助金额:50 万元
- 项目类别:面上项目
锕系元素5f-in-core的GTH赝势和基组的开发
- 批准号:22303037
- 批准年份:2023
- 资助金额:30 万元
- 项目类别:青年科学基金项目
基于合成致死策略搭建Core-matched前药共组装体克服肿瘤耐药的机制研究
- 批准号:
- 批准年份:2022
- 资助金额:52 万元
- 项目类别:
鼠伤寒沙门氏菌LPS core经由CD209/SphK1促进树突状细胞迁移加重炎症性肠病的机制研究
- 批准号:
- 批准年份:2022
- 资助金额:30 万元
- 项目类别:青年科学基金项目
基于外泌体精准调控的“核-壳”(core-shell)同步血管化骨组织工程策略的应用与机制探讨
- 批准号:
- 批准年份:2020
- 资助金额:55 万元
- 项目类别:
肌营养不良蛋白聚糖Core M3型甘露糖肽的精确制备及功能探索
- 批准号:92053110
- 批准年份:2020
- 资助金额:70.0 万元
- 项目类别:重大研究计划
Core-1-O型聚糖黏蛋白缺陷诱导胃炎发生并介导慢性胃炎向胃癌转化的分子机制研究
- 批准号:81902805
- 批准年份:2019
- 资助金额:20.5 万元
- 项目类别:青年科学基金项目
原始地球增生晚期的Core-merging大碰撞事件:地核增生、核幔平衡与核幔边界结构的新认识
- 批准号:41973063
- 批准年份:2019
- 资助金额:65.0 万元
- 项目类别:面上项目
RBM38通过协助Pol-ε结合、招募core调控HBV复制
- 批准号:31900138
- 批准年份:2019
- 资助金额:24.0 万元
- 项目类别:青年科学基金项目
CORDEX-CORE区域气候模拟与预估研讨会
- 批准号:41981240365
- 批准年份:2019
- 资助金额:1.5 万元
- 项目类别:国际(地区)合作与交流项目
相似海外基金
SaTC: CORE: Small: An evaluation framework and methodology to streamline Hardware Performance Counters as the next-generation malware detection system
SaTC:核心:小型:简化硬件性能计数器作为下一代恶意软件检测系统的评估框架和方法
- 批准号:
2327427 - 财政年份:2024
- 资助金额:
$ 29.84万 - 项目类别:
Continuing Grant
Collaborative Research: NSF-BSF: SaTC: CORE: Small: Detecting malware with machine learning models efficiently and reliably
协作研究:NSF-BSF:SaTC:核心:小型:利用机器学习模型高效可靠地检测恶意软件
- 批准号:
2338301 - 财政年份:2024
- 资助金额:
$ 29.84万 - 项目类别:
Continuing Grant
Collaborative Research: NSF-BSF: SaTC: CORE: Small: Detecting malware with machine learning models efficiently and reliably
协作研究:NSF-BSF:SaTC:核心:小型:利用机器学习模型高效可靠地检测恶意软件
- 批准号:
2338302 - 财政年份:2024
- 资助金额:
$ 29.84万 - 项目类别:
Continuing Grant
SaTC: CORE: Small: NSF-DST: Understanding Network Structure and Communication for Supporting Information Authenticity
SaTC:核心:小型:NSF-DST:了解支持信息真实性的网络结构和通信
- 批准号:
2343387 - 财政年份:2024
- 资助金额:
$ 29.84万 - 项目类别:
Standard Grant
NSF-NSERC: SaTC: CORE: Small: Managing Risks of AI-generated Code in the Software Supply Chain
NSF-NSERC:SaTC:核心:小型:管理软件供应链中人工智能生成代码的风险
- 批准号:
2341206 - 财政年份:2024
- 资助金额:
$ 29.84万 - 项目类别:
Standard Grant
Collaborative Research: SaTC: CORE: Small: Towards Secure and Trustworthy Tree Models
协作研究:SaTC:核心:小型:迈向安全可信的树模型
- 批准号:
2413046 - 财政年份:2024
- 资助金额:
$ 29.84万 - 项目类别:
Standard Grant
SaTC: CORE: Small: Socio-Technical Approaches for Securing Cyber-Physical Systems from False Claim Attacks
SaTC:核心:小型:保护网络物理系统免受虚假声明攻击的社会技术方法
- 批准号:
2310470 - 财政年份:2023
- 资助金额:
$ 29.84万 - 项目类别:
Standard Grant
SaTC: CORE: Small: Study, Detection and Containment of Influence Campaigns
SaTC:核心:小型:影响力活动的研究、检测和遏制
- 批准号:
2321649 - 财政年份:2023
- 资助金额:
$ 29.84万 - 项目类别:
Standard Grant
Collaborative Research: SaTC: CORE: Small: Investigation of Naming Space Hijacking Threat and Its Defense
协作研究:SaTC:核心:小型:命名空间劫持威胁及其防御的调查
- 批准号:
2317830 - 财政年份:2023
- 资助金额:
$ 29.84万 - 项目类别:
Continuing Grant
Collaborative Research: SaTC: CORE: Small: Towards a Privacy-Preserving Framework for Research on Private, Encrypted Social Networks
协作研究:SaTC:核心:小型:针对私有加密社交网络研究的隐私保护框架
- 批准号:
2318843 - 财政年份:2023
- 资助金额:
$ 29.84万 - 项目类别:
Continuing Grant














{{item.name}}会员




