【技术实现步骤摘要】
基于Rust语言的安全性增强模型开发方法及系统
[0001]本专利技术涉及计算机操作系统
,尤其公开了一种基于Rust语言的安全性增强模型开发方法及系统。
技术介绍
[0002]传统系统级编程语言存在内存和并发安全问题,而多数内存安全的编程语言存在明显的运行时开销,导致运行效率下降。Rust语言通过其特有的安全特性(所有权和生命周期),从本质上避免了许多严重的内存错误和并发错误。并且Rust所编译的二进制代码近似于C代码的执行效率。因此,Rust成为近些年最受欢迎的安全编程语言,常被用来构建操作系统和浏览器等基础软件。然而,现有的Rust编写的项目仍被发现存在不少严重的软件缺陷。例如RustSec Advisory数据库已经公布了数百个Rust漏洞,包括rulex漏洞、static
‑
type
‑
map未维护等问题。Rust语言中的不安全因素成为Rust开发的基础软件(如操作系统)安全性提升的瓶颈。
[0003]首先,Rust系统级项目存在缺陷的主要原因是包含不安全代码,编译器无法对这些代码安全性进行保证。具体而言,Rust包含两类编程语言:Safe Rust和Unsafe Rust。使用Safe Rust可以编写出高性能安全的应用程序和库,是Rust项目中的主要组成部分。Unsafe Rust使用“unsafe”关键字绕过一些安全检查,执行Safe Rust难以实现的一些操作,主要包括五种功能:(1)解引用裸指针;(2)调用不安全函数或方法;(3)访问或修改可变静态 ...
【技术保护点】
【技术特征摘要】
1.一种基于Rust语言的安全性增强模型开发方法,其特征在于,包括以下步骤:等价功能替代设计:依据事先设置的第一原则,针对访问或修改可变静态变量和union字段两类不安全操作,静态分析不安全原因,使用标准库函数和/或接口对两类不安全操作进行替换;内部不安全封装设计:依据事先设置的第二原则,对于无法直接进行替换的不安全操作,在不安全代码暴露为不安全之前,将所述无法直接进行替换的不安全操作正确的封装在内部不安全函数中;增加ACSL形式化规约设计:依据事先设置的第三原则,将ACSL形式化规约设计用于封装得到的内部不安全函数中,为内部不安全封装函数增加类ACSL规约验证,提供生命周期支持和限制不安全状态范围集合。2.如权利要求1所述的基于Rust语言的安全性增强模型开发方法,其特征在于,所述等价功能替代设计的步骤包括:可变静态变量类型的替代:使用Rust中的智能指针Mutex来替代可变静态变量的使用;同时编译器对智能指针Mutex运行借用检测,若识别到操作违反借用规则进行使用且系统在编译的时候,则可通过;若识别到操作违反借用规则进行使用且系统在运行时,则会panic并退出;union类型的替代:使用基于自动化特征检测和替代的方法来对union中的操作进行优化;通过检测union的使用,利用struct关键字来对union类型进行替换。3.如权利要求1所述的基于Rust语言的安全性增强模型开发方法,其特征在于,所述内部不安全封装设计的步骤包括:解引用裸指针的封装:通过调整不安全代码的架构,使用内部不安全函数对解引用裸指针的功能进行封装,把unsafe关键字包裹的解引用裸指针功能块转化为调度安全的库函数,在库函数内部使用内部不安全函数进行解引用裸指针的操作;不安全函数和trait的封装:对unsafe函数和trait进行封装优化设计,依据内部不安全性原理,调整unsafe函数块中不安全范围,使用内部不安全块进行替代。4.如权利要求1所述的基于Rust语言的安全性增强模型开发方法,其特征在于,所述增加ACSL形式化规约设计的步骤包括:解引用裸指针:使用
’
static来显式标注裸指针的生命周期;使用断言对程序运行到此处的状态进行约束,在解引用裸指针前插入断言,对程序执行到此次的内存合法性进行判断,若识到断言代码正确时,则判断运行在断言前的代码是合格的代码;不安全函数和trait:为封装后的不安全函数增加适当的前置和后置条件来注释函数;在函数被调用前,使用断言来检测当前调用环境所提供的状态是否满足要求;在前置条件满足的情况下,同样使用断言来检测后置条件注明函数返回状态。5.如权利要求1所述的基于Rust语言的安全性增强模型开发方法,其特征在于,所述第一原则为功能等效替代原则,用于对于有限类的不安全操作,首先使用功能等价的安全Rust功能进行替代;所述第二原则为内部不安全封装原理,用于对于不可避免并且不能被替代的不安全操作,使用内部不安全性对其进行封装;所述第三原则为增加类ACSL形式化验证原则,用于利用ACSL形式化规约思想对封装的内部不安全函数中的不安全状态集合进行限制。
6.一种基于Rust语言的安全性增强模型开发系统,其特征在于,包括:等价功能替...
【专利技术属性】
技术研发人员:董攀,江仁霜,黄辰林,丁滟,蹇松雷,谭郁松,李宝,任怡,王晓川,张建锋,谭霜,罗军,
申请(专利权)人:中国人民解放军国防科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。