Collaborative Research: SaTC: CORE: Medium: Refine the Gap: Establishing Safety for Modern Foreign Function Interfaces
协作研究:SaTC:核心:中:缩小差距:为现代外部功能接口建立安全性
基本信息
- 批准号:2327338
- 负责人:
- 金额:$ 30万
- 依托单位:
- 依托单位国家:美国
- 项目类别:Continuing Grant
- 财政年份:2023
- 资助国家:美国
- 起止时间:2023-10-01 至 2027-09-30
- 项目状态:未结题
- 来源:
- 关键词:
项目摘要
Developers of widely used software infrastructure like the Firefox, Chrome, and Linux are replacing components written in unsafe but fast languages like C/C++ with components written in Rust. Rust promises to eliminate the security vulnerabilities endemic to C/C++ codebases without compromising on performance. Alas, completely rewriting real-world software systems is not practical: Firefox, Chrome, and Linux are tens of millions of C/C++ code. Instead, Rust components must continue to interact with existing C/C++ code. In practice, this requires developers to write code that glues Rust and C/C++. Unfortunately, this glue code is notoriously difficult to write correctly: code at the language boundary can both introduce errors in previously safe code and impose new unchecked requirements, threatening the security of both the Rust code and the containing C/ C++ ecosystem. This project will address these challenges by building new abstractions, techniques, and tools that will help developers securely integrate Rust components within C/C++ applications (and vice versa). This research will span the spectrum from new theoretical and formal ideas to the deployment and integration of this technology in real-world software. The project has the potential to directly improve the security of software infrastructure used by billions of users, including Firefox, Chrome, and Linux. The project will also contribute to the graduate, undergraduate, and high school curriculum, introducing future developers to techniques and tools for building secure software.This project takes a principled and practical approach to building secure systems software by securing the glue layer between C/C++ and Rust and the foreign function interface (FFI) developers used to write this glue code. To accomplish these goals, this project will (1) build novel static analysis tools for the Rust ecosystem, which work in tandem with human auditing to detect, triage, and classify major weaknesses in existing FFIs; (2) build novel abstractions for the FFI layer based on refinement types to describe and automatically check memory safety and type safety properties at the FFI layer, and eliminate the ad-hoc glue code at the FFI layer; (3) build a lightweight sandboxing layer for calling C/C++ code from Rust, leveraging prior sandboxing mechanisms but marrying their abstractions with Rust's ownership type system. This research will yield new insights into the safety and security gaps in modern multi-language systems; contribute to the understanding of how refinement types can integrate with a modern memory-safe type system and mutability constraints; and develop our understanding of how modern security techniques -- including static analysis, type systems, and sandboxing -- are applicable to the Rust ecosystem and ownership model.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.
使用广泛的软件基础设施(如Firefox、Chrome和Linux)的开发人员正在用Rust编写的组件替换用不安全但快速的语言(如C/ c++)编写的组件。Rust承诺在不影响性能的情况下消除C/ c++代码库特有的安全漏洞。唉,完全重写现实世界的软件系统是不现实的:Firefox、Chrome和Linux都是数以千万计的C/ c++代码。相反,Rust组件必须继续与现有的C/ c++代码交互。在实践中,这需要开发人员编写能够粘合Rust和C/ c++的代码。不幸的是,这种粘合代码非常难以正确编写:语言边界上的代码既可以在以前安全的代码中引入错误,也可以强加新的未经检查的需求,从而威胁到Rust代码和包含C/ c++生态系统的安全性。该项目将通过构建新的抽象、技术和工具来解决这些挑战,这些抽象、技术和工具将帮助开发人员安全地将Rust组件集成到C/ c++应用程序中(反之亦然)。这项研究将涵盖从新的理论和形式思想到在实际软件中部署和集成该技术的范围。该项目有可能直接提高数十亿用户使用的软件基础设施的安全性,包括Firefox、Chrome和Linux。该项目还将为研究生、本科生和高中课程做出贡献,向未来的开发人员介绍构建安全软件的技术和工具。该项目采用了一种原则性和实用性的方法,通过保护C/ c++和Rust之间的粘合层以及开发人员用于编写粘合代码的外部函数接口(FFI)来构建安全的系统软件。为了实现这些目标,该项目将(1)为Rust生态系统构建新的静态分析工具,与人工审计一起工作,以检测、分类和分类现有ffi的主要弱点;(2)为FFI层构建基于细化类型的新颖抽象,以描述和自动检查FFI层的内存安全和类型安全属性,消除FFI层的临时粘合代码;(3)构建一个轻量级的沙箱层,用于从Rust中调用C/ c++代码,利用先前的沙箱机制,但将其抽象与Rust的所有权类型系统结合起来。这项研究将对现代多语言系统的安全性和安全性差距产生新的见解;有助于理解细化类型如何与现代内存安全类型系统和可变性约束集成;并发展我们对现代安全技术(包括静态分析、类型系统和沙箱)如何适用于Rust生态系统和所有权模型的理解。该奖项反映了美国国家科学基金会的法定使命,并通过使用基金会的知识价值和更广泛的影响审查标准进行评估,被认为值得支持。
项目成果
期刊论文数量(0)
专著数量(0)
科研奖励数量(0)
会议论文数量(0)
专利数量(0)
数据更新时间:{{ journalArticles.updateTime }}
{{
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 }}
Caleb Stanford其他文献
Auditing Rust Crates Effectively
有效审核 Rust 箱子
- DOI:
- 发表时间:
- 期刊:
- 影响因子:0
- 作者:
David Thien;Lydia Zoghbi;Ranjit Jhala;D. Stefan;Caleb Stanford - 通讯作者:
Caleb Stanford
Caleb Stanford的其他文献
{{
item.title }}
{{ item.translation_title }}
- DOI:
{{ item.doi }} - 发表时间:
{{ item.publish_year }} - 期刊:
- 影响因子:{{ item.factor }}
- 作者:
{{ item.authors }} - 通讯作者:
{{ item.author }}
{{ truncateString('Caleb Stanford', 18)}}的其他基金
EAGER: Proof-Carrying Code Completions
EAGER:携带证明的代码完成
- 批准号:
2403762 - 财政年份:2024
- 资助金额:
$ 30万 - 项目类别:
Standard Grant
相似国自然基金
Research on Quantum Field Theory without a Lagrangian Description
- 批准号:24ZR1403900
- 批准年份:2024
- 资助金额:0.0 万元
- 项目类别:省市级项目
Cell Research
- 批准号:31224802
- 批准年份:2012
- 资助金额:24.0 万元
- 项目类别:专项基金项目
Cell Research
- 批准号:31024804
- 批准年份:2010
- 资助金额:24.0 万元
- 项目类别:专项基金项目
Cell Research (细胞研究)
- 批准号:30824808
- 批准年份:2008
- 资助金额:24.0 万元
- 项目类别:专项基金项目
Research on the Rapid Growth Mechanism of KDP Crystal
- 批准号:10774081
- 批准年份:2007
- 资助金额:45.0 万元
- 项目类别:面上项目
相似海外基金
Collaborative Research: SaTC: CORE: Medium: Using Intelligent Conversational Agents to Empower Adolescents to be Resilient Against Cybergrooming
合作研究:SaTC:核心:中:使用智能会话代理使青少年能够抵御网络诱骗
- 批准号:
2330940 - 财政年份:2024
- 资助金额:
$ 30万 - 项目类别:
Continuing Grant
Collaborative Research: SaTC: CORE: Medium: Differentially Private SQL with flexible privacy modeling, machine-checked system design, and accuracy optimization
协作研究:SaTC:核心:中:具有灵活隐私建模、机器检查系统设计和准确性优化的差异化私有 SQL
- 批准号:
2317232 - 财政年份:2024
- 资助金额:
$ 30万 - 项目类别:
Continuing Grant
Collaborative Research: NSF-BSF: SaTC: CORE: Small: Detecting malware with machine learning models efficiently and reliably
协作研究:NSF-BSF:SaTC:核心:小型:利用机器学习模型高效可靠地检测恶意软件
- 批准号:
2338301 - 财政年份:2024
- 资助金额:
$ 30万 - 项目类别:
Continuing Grant
Collaborative Research: SaTC: CORE: Medium: Differentially Private SQL with flexible privacy modeling, machine-checked system design, and accuracy optimization
协作研究:SaTC:核心:中:具有灵活隐私建模、机器检查系统设计和准确性优化的差异化私有 SQL
- 批准号:
2317233 - 财政年份:2024
- 资助金额:
$ 30万 - 项目类别:
Continuing Grant
Collaborative Research: NSF-BSF: SaTC: CORE: Small: Detecting malware with machine learning models efficiently and reliably
协作研究:NSF-BSF:SaTC:核心:小型:利用机器学习模型高效可靠地检测恶意软件
- 批准号:
2338302 - 财政年份:2024
- 资助金额:
$ 30万 - 项目类别:
Continuing Grant
Collaborative Research: SaTC: CORE: Medium: Using Intelligent Conversational Agents to Empower Adolescents to be Resilient Against Cybergrooming
合作研究:SaTC:核心:中:使用智能会话代理使青少年能够抵御网络诱骗
- 批准号:
2330941 - 财政年份:2024
- 资助金额:
$ 30万 - 项目类别:
Continuing Grant
Collaborative Research: SaTC: CORE: Small: Towards Secure and Trustworthy Tree Models
协作研究:SaTC:核心:小型:迈向安全可信的树模型
- 批准号:
2413046 - 财政年份:2024
- 资助金额:
$ 30万 - 项目类别:
Standard Grant
Collaborative Research: SaTC: EDU: RoCCeM: Bringing Robotics, Cybersecurity and Computer Science to the Middled School Classroom
合作研究:SaTC:EDU:RoCCeM:将机器人、网络安全和计算机科学带入中学课堂
- 批准号:
2312057 - 财政年份:2023
- 资助金额:
$ 30万 - 项目类别:
Standard Grant
Collaborative Research: SaTC: CORE: Small: Investigation of Naming Space Hijacking Threat and Its Defense
协作研究:SaTC:核心:小型:命名空间劫持威胁及其防御的调查
- 批准号:
2317830 - 财政年份:2023
- 资助金额:
$ 30万 - 项目类别:
Continuing Grant
Collaborative Research: SaTC: CORE: Small: Towards a Privacy-Preserving Framework for Research on Private, Encrypted Social Networks
协作研究:SaTC:核心:小型:针对私有加密社交网络研究的隐私保护框架
- 批准号:
2318843 - 财政年份:2023
- 资助金额:
$ 30万 - 项目类别:
Continuing Grant