当前位置: 技术问答>linux和unix
Linux系统中,如何实现对内存或SD卡的一块区域限制访问?只允许我的特定程序访问?
来源: 互联网 发布时间:2017-02-03
本文导语: 现在有这样一个需求:在Linux操作系统中,希望在SD卡内中划出一块空间,用来存储某些特殊文件。而我希望,除了我自己编写的专用程序之外,其他任何程序都无法访问这块存储空间(其实质就是希望某些特殊文件...
现在有这样一个需求:在Linux操作系统中,希望在SD卡内中划出一块空间,用来存储某些特殊文件。而我希望,除了我自己编写的专用程序之外,其他任何程序都无法访问这块存储空间(其实质就是希望某些特殊文件只能被我的程序访问,其他任何程序,就算知道有这个文件的存在,但是都不能访问)。应该如何实现?是不是需要修改内核?谢谢。
|
那就修改系统调用open ,打开指定文件时检查一下uid,只允许特定的uid成功返回
|
首先,修改SD驱动,调节空间为你要给大家使用的空间大小。
然后,为剩余的空间安装特定修改后的驱动,在这个驱动里,只支持特定操作。这样,普通程序就无法访问该区域。
然后,为剩余的空间安装特定修改后的驱动,在这个驱动里,只支持特定操作。这样,普通程序就无法访问该区域。
|
内核加个ko模块,hook open接口, 判断用户名。
|
换个简单的方法,
你系统启动,你就启动你的程序独占打开那个文件,这样就限制了其他程序去读写它了.
你系统启动,你就启动你的程序独占打开那个文件,这样就限制了其他程序去读写它了.
|
配置用户权限就可以了
|
对文件加密吧
|
任何权限都不行呗 即使内核可以任意改都不怕
那就如2楼所说 加密这个文件
那就如2楼所说 加密这个文件
|
你说的这种情况在kernel中是用权限的管理来实现的 你可以参照
|
如果攻击者有了root权限,你怎样都白搭!