本文主要是介绍Linux Rootkit之一:Linux Rootkit简介,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.1定义
Rootkit是一套由入侵者留在系统中的后门程序。Rootkit通常只有在系统已经被侵入并且获得root权限后才被安装进系统,并帮助入侵者长期控制系统,,搜集主机和网络信息,并隐藏入侵者的痕迹。也就是说,Rootkit需要持久并毫无察觉地驻留在目标系统中,对系统进行操纵、并通过隐秘渠道收集数据的程序。所以,Rootkit的三要素就是:隐藏、操纵、收集数据。不同的操作系统会有不同的Rootkit,Linux系统中的Rootkit就被称为LinuxRootkit。
1.2分类
LinuxRookit可以简单地分为用户态和内核级,一些新颖的LinuxRootkit技术(如BIOS、PIC、Boot)可以划分为新技术类型。其中用户态Rootkit可以通过替换一些二进制文件(如ps、netstat、ls等),从而实现进程隐藏、网络连接信息隐藏、文件隐藏等功能。内核Rootkit由于隐蔽性好、攻击能力强,逐渐成为了主流。内核Rootkit也可细分为基于LKM(LoadableKernel Modules)的Rookit和非基于LKM的Rootkit。
1.3功能
无论是那种形式的Rootkit,都需要实现以下功能:
(1)远程指令执行
通过网络向Rootkit所驻留的系统发送指令,从而控制远程主机;
(2)信息收集
收集系统的活动信息、网络上其它主机的数据信息等;
(3)文件隐藏
把目标主机上的特定文件隐藏起来,使其不能通过常规方法查看到,这样就可以隐藏一部分系统被控制的痕迹;
(4)进程隐藏
在控制目标主机或收集系统信息时会启动相关的进程,通过Rootkit可以实现对进程的隐藏;
(5)网络连接隐藏
将网络连接的端口信息隐藏,利用netstat等工具无法显示隐藏的信息,这样就可以隐秘地向远端发送信息;
(6)内核模块隐藏
将Rootkit自身在系统中安装的模块隐藏起来,提高自身生存能力。
这篇关于Linux Rootkit之一:Linux Rootkit简介的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!