[发明专利]一种VxWorks系统驱动层块设备数据访问控制方法有效
申请号: | 201410509089.4 | 申请日: | 2014-09-28 |
公开(公告)号: | CN104318152B | 公开(公告)日: | 2017-04-12 |
发明(设计)人: | 戴跃伟;薛朋骏;翟江涛 | 申请(专利权)人: | 江苏科技大学 |
主分类号: | G06F21/50 | 分类号: | G06F21/50;G06F21/30;G06F21/60 |
代理公司: | 南京经纬专利商标代理有限公司32200 | 代理人: | 楼高潮 |
地址: | 212003 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 vxworks 系统 驱动 设备 数据 访问 控制 方法 | ||
技术领域
本发明涉及嵌入式操作系统的访问控制,具体是涉及一种VxWorks系统驱动层块设备数据访问控制方法,属于嵌入式系统安全技术领域。
背景技术
VxWorks系统本身在块设备数据安全上并没有做任何措施,田力、袁佳斌在《嵌入式系统的VxWorks安全性问题研究》一文中提出VxWorks安全内核机制,提出安全标记以及基于多策略的强制访问控制等安全机制,实现了对Wind任务、信号量(二进制/互斥/计数信号量)、消息队列、管道、事件等的安全标记和强制访问控制,提高了VxWorks系统的安全性。但是文中对于VxWorks系统块设备中数据的访问控制研究较少,数据的访问控制依然是个重要的问题。王晋东、董文超等人在《VxWorks系统访问控制机制设计与实现》一文中提出一种访问控制机制,在I/O系统的上层采用安全接口访问敏感数据,安全接口中的安全I/O库函数提供一种数据保护方法,防止敏感数据外泄。安全接口、访问控制接口和安全信息库一起提供安全服务。但是如果在VxWorks系统被侵入的情况下,入侵者可以通过直接调用VxWorks系统的I/O接口绕过安全接口库函数,以访问VxWorks系统重要数据。这是由于文中提出的安全接口中的安全I/O库(sec_ioLib)与VxWorks系统原有的ioLib库(Basic I/O Routines)同处于I/O系统的上层,直接使用ioLib库则可跳过sec_ioLib库。因此,VxWorks系统仍然存在安全性问题。
发明内容
本发明的目的是为了克制上述现有技术存在的问题和不足,提供一种VxWorks系统驱动层块设备数据访问控制方法。
本发明的控制方法是在驱动层对块设备数据进行访问控制,通过在块设备驱动层和dosFs文件系统驱动层嵌入访问监控器,使任务在通过I/O系统访问块设备中数据时进入访问监控器,访问监控器匹配权限库,根据匹配结果对此次访问进行控制,从而提高块设备中数据的安全性。
为了达到上述目的,本发明解决技术问题所采取的技术方案是:
一种VxWorks系统驱动层块设备数据访问控制方法,包括如下步骤:
步骤1、设置权限库
设置VxWorks系统中任务对块设备的访问权限库,VxWorks系统启动时加载该权限库。
步骤2、设置块设备到CBIO设备封装结构
对块设备接口做基本的封装来创建CBIO设备。
步骤3:在块设备驱动层嵌入访问监控器
在块设备读、写函数入口插入块设备层访问监控器函数,dosFs文件系统层的操作传递到块设备驱动层后,根据当前任务ID和块设备匹配权限库,当匹配成功确认有读、写权限,则继续执行块设备读、写操作,否则返回ERROR到dosFs文件系统驱动层,结束调用。
步骤4、在dosFs文件系统驱动层嵌入访问监控器
(I)获取dosFs文件系统驱动层的dosFsRead()函数信息
获取内存中dosFs文件系统驱动层的dosFsRead()函数的汇编指令代码、机器码和dosFsRead()函数入口的内存位置,提取其代码特征。
(II)设计dosFs文件系统驱动层访问监控器
dosFs文件系统驱动层访问监控器根据当前任务ID和块设备匹配权限库,当匹配成功,将处理器的寄存器数据恢复到进入dosFsRead()函数前数据,执行dosFsRead()函数入口第一条汇编指令,预留一条空指令以存放跳转指令;当匹配不成功,则将处理器的寄存器数据恢复到进入dosFsRead()函数前数据,执行dosFsRead()函数入口第一次寄存器入栈操作,预留一条空指令以存放跳转指令。
(III)在dosFs文件系统驱动层嵌入访问监控器
根据步骤4(I)计算获得dosFsRead()函数入口的内存位置和返回ERROR汇编指令代码的内存位置,根据dosFs文件系统驱动层访问监控器函数入口的内存位置,计算合成一条从dosFsRead()函数入口跳转到dosFs文件系统驱动层访问监控器入口的跳转指令机器码,并将该跳转指令机器码覆盖到dosFsRead()函数入口的内存位置。
(IV)完善dosFs文件系统驱动层访问监控器
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏科技大学,未经江苏科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410509089.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种退火炉隔热板装置
- 下一篇:易调节的步进炉升降油缸斜轨装配