- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式Linux系统安全性探究
嵌入式Linux系统安全性探究摘要:阐述了嵌入式Linux内核系统存在的安全性问题,重点分析了增强安全性若干种方法及原理,根据嵌入式产品受尺寸和成本约束的特点,给出了增加安全模块、设置软件防火墙和嵌入式系统特有的方法来增强系统的安全性。
关键词:嵌入式;Linux系统;LSM;系统安全;防火墙
中图分类号:TP309.1文献标识码:A文章编号:16727800(2012)008018502
作者简介:王友顺(1982-),男,硕士,郑州信息科技职业学院信息工程系助教,研究方向为嵌入式系统与应用;曲豪(1975-),男,郑州信息科技职业学院信息工程系助教,研究方向为嵌入式系统与应用。
0引言
社会发展日新月异,物联网离百姓生活越来越近,目前很多运行在局域网甚至Internet上的产品如雨后春笋般涌向市场,比如:智能家居、安卓手机等。这些产品在方便用户的同时也出现一些安全问题,系统置于网络上相当于暴露给所有人,故对嵌入式产品安全性研究刻不容缓。嵌入式产品由于尺寸、成本的约束注定不可能从硬件部分提供更多的安全措施,故提升安全性重点应考虑Linux内核。
1嵌入式Linux系统存在的安全问题
开源的Linux内核无论在功能上或性能上都有很多优点,但Linux内核属于开源项目,缺少提供商的安全保证,所以需要使用者最大限度地提升系统的安全性。根据实际情况裁剪Linux内核,并采取适当的安全措施可提升系统的安全性。掌握Linux核心技术、配合先进的安全模型、增强其安全性进而研发安全的操作系统非常有必要。Linux的安全性问题从机制角度可以有以下几点:
(1) Linux系统访问控制。Linux系统主流发行版本的访问控制属于自主访问控制;自主访问控制控制模式任何一个活动主体对应用户标识和组标识。显然自主访问控制模式的问题是忽略了用户的角色、程序可信性等安全信息,故不能提供有效的安全性保障。
(2) Linux系统管理。Linux系统中用户可以分为两类,一类是普通用户,另一类是管理员用户。Linux系统管理员用户拥有系统所有权限,包括用户管理、设备管理、审计管理和安全管理等;这样方便了管理员管理,易于用户操作,但是违背了“最小特权”管理原则。Linux系统的安全性只是建立在管理员必须正确设置系统功能、且不被冒充和不存在安全漏洞等一系列假设的基础上。显而易见这样的系统存在巨大的风险,假如系统管理员被非法控制,系统将没有安全性可言。
(3) Linux系统日志。Linux系统中的日志功能从设计到实现不是以系统安全为目标而是以内核调试为目的;此与系统安全审计有很大差距:第一,缺乏资源访问方面的记录;第二,不能详细记录系统发生的事件;最后,缺少必要数据分析与警告。
由此可见,嵌入式Linux内核自身的安全功能相当薄弱,对于安全性要求比较高的产品,则需要提高Linux内核的安全性。
2安全性问题解决方案
提升Linux安全性所采取措施主要有在Linux系统内核使用安全模块和安装必要的防火墙,还有一些嵌入式特有的安全措施。
(1) 使用安全模块LSM (Linux Security Modules)。2001年一次Linux内核峰会中美国国家安全局推出了他们的安全增强Linux(SELinux),与此同时Linux内核创始人提出,Linux内核作为一个开放的系统的确应该有一个通用的安全访问控制框架,不过也提出应该可以使用加载内核模块的方式来支持不同的安全模块, Linux内核的安全模块从此产生。下面可以通过图1来了解一下安全模块工作原理。
从图1中可知,Linux安全模块工作原理是通过使用函数回调的方法,系统根据用户配置来判断内核对象的访问。系统运行进程执行系统调用时找到I节点并分配相关资源,就在即将访问相应的对象时,系统立即调用Linux安全模块提供的函数,对安全模块提出疑问:“是否允许访问该对象?”,安全模块根据用户设定的安全策略进行判断该次访问是否具有相应的权限。在安全模块里可以调用不同的安全模块,使用较多的有SELinux 、Smack (Simplified Mandatory Access Control Kernel)、TOMOYO等。
图1安全模块工作原理
SELinux安全模块。该模块的使用使得系统由原来的自主访问机制改变为强制访问控制机制。但是SELinux安全模块并不适用于处理能力有限嵌入式产品,原因有以下几点:首先,SELinux模块的细粒度访问控制造成安全策略的复杂性,例如:Fedora发行版本里就超过800 000行,如此复杂的安全策略肯定不能应用于嵌入式系统;其次,在使用SELinux模块后,若要运行某一个进程时,需要给出所有要调用函数的权限才能运行,在
文档评论(0)