,来引用current指针,current指向当前进程的PCB,而current->uid,current->gid便是当前进程的用户标识和用户组标识。root 的uid是0,而普通用户的uid一般不小于500。
3)?????? 限定模块只能从特定的目录插入内核,比如/root目录。因为hackers不知道这一限制,所以擅自插入模块将引起系统报警。
4)?????? 更高级的方法:添加用于保护内核的代码,然后重新编译内核,使之具有较强的安全防范能力。具体方法可以参考Moshe Bar的《Linux技术内幕》。
?
最后,我想说明,Linux是一个能带给人乐趣的系统,而LKM方面的攻防都涉及了大量的内核源代码和操作系统方面的知识。Linux Kernel Hacking 也成了Linux社区和Linux Kernel Mail List里最热门的话题。要想使系统的安全性得到保证,只有不断学习、探讨、研究,并亲自动手实践。也只有这样,才能领略到其中无穷的乐趣。请记住:Linux安全,从内核作起。
本文中所有代码均在RedHat 7.3中测试通过。
?
?
?
?
?
?
[参考书目]
《Linux技术内幕》 Moshe Bar 著,清华大学出版社
《Linux设备驱动程序》 Rubini &Corbet 著,中国电力出版社
《Linux内核2.4版源代码分析大全》李善平等著 机械工业出版社
上一页 [1] [2] [3] [4]