内核的实时监控技术
基于上述种种不足,我们提出了在Linux内核中实现进程实时监控的原理和技术。该技术主要分为以下几个步骤(见图):
首先,在“干净”的系统环境下,全面地运行系统中的安全进程,分析和搜集Linux环境下这些进程的相关信息(包括进程ID号、进程名称、进程可执行映像、进程的开始时间、进程的父进程等主要信息),形成一张“系统安全进程列表”,作为进程监控的依据。
接着,监控代码在进程调度过程中实时地搜集系统中运行进程的信息。如果发现进程不在“系统安全进程列表”当中,则马上通过终端输出该进程的PID号、名称、进程的可执行映像等信息,或者通过声音向用户报警,等待用户处理,在这个等待的过程中,终止调度该进程,直到用户做出响应(放行该进程或者杀死该进程)。
在第二步当中,如果超级用户(系统管理员)放行了该进程,则可以将该进程加入“系统安全进程列表”,以完善该列表;如果是一般用户在使用过程当中放行了某个进程,那么,需要将该用户的用户名和身份记录下来,并且将放行的进程记录下来存为日志,那么,当超级用户(系统管理员)无论是在审核用户行为还是在修改“系统安全进程列表”时,都是一个有力的依据。
另外,在系统运行过程当中,如果发现“系统安全进程列表”当中的某些重要的进程(包括kswapd、bdflush等)不在运行,则马上将该进程“遗失”的信息存入文件,以备在系统的恢复过程当中,对它们进行针对性的恢复,根据不同的情况,有的需要马上停机,恢复进程,有的则可以现场恢复。
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/
领测软件测试网最新更新
关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073