Linux下的RootKit简单介绍和分析

本文对Linux中的Rootkit进行简单介绍,主要用于防护方案对Rootkit的防御效果介绍。

RootKit分为用户态rootkit和内核级rootkit。内核级rootkit可分为基于LKM的rootkit(又细分为系统调用表修改类以及VFS层rookit等)和非LKM的rootkit(如系统调用表重定向等)。Linux下还有BIOS、PCI、Boot(NTLDR、BCD、Grub)等更新颖技术的rootkit。

下面用表格形式说明几种典型的代表:

典型代表

控制方式

内核版本

隐藏/反检测特点

备注

Lrk5

主动连接

2.6.x

替换用户态ls,ps,netstat等

第一代用户态rootkit,代码较多,安装简洁,容易上手

Knark-0.59

主动连接

2.2.x

Knark0.59具有以下特性:

  1. 隐藏或显示文件或目录;
  2. 隐藏进程;
  3. 隐藏TCP或UDP连接
  4. 程序执行重定向
  5. 改变一个运行进程的UID/GID的工具
  6. 非授权地、特权程序远程执行守护进程

Linux 2.2内核下功能强大的LKM。调用表修改类rootkit通过修改导出的系统调用表,对与攻击行为相关的系统调用进行替换,隐藏攻击者的行踪。

Sk-1.3b

主动连接

反向链接

2.2.x

2.4.x

Sk后门服务端程序为静态ELF文件,压缩之后就几十K的大小;

Sk采用动态隐藏的方式来隐藏指定的内容,包括文件、进程、网络连接;

Sk2可以感染系统的elf文件达到自启动的目的,也可以通过替换系统的init文件来实现自动启动

全称suckit(super user control kit),运行于Linux 2.4内核下最经典的非LKM层rootkit。并没有修改系统调用跳转表的内容,而是首先拷贝了系统调用表,然后将拷贝的系统调用表安装入侵者的意图进行修改,执行入侵者改写的系统调用相应函数。然后将system_call从旧的系统调用表上移开,指向新的系统调用表

Adore-ng-056-wztfix

主动连接

反向链接

2.4.x-2.6.x

Adore-ng稳定性较好;

Adore-ng后门服务端程序具体环境动态编译;

须使用客户端手动的去隐藏指定的进程、网络和文件

Linux 2.4-2.6经典的LKM;VFS层rootkit,并不修改系统调用层的内容,而是通过修改VFS层的具体处理函数,如替换VFS层的file_ops等函数,来实现信息隐藏目的。

WNPS

主动连接

反向链接

2.6.x

隐藏指定文件

隐藏文件中特定的内容

隐藏进程

动态隐藏网络连接、进程

隐藏自身模块

保护相关模块、进程、文件不被跟踪

2.6内核通用

Ddrk

主动连接

2.6.x

隐藏性好

隐藏进程

隐藏网络连接

隐藏自身模块

是一个Linux结合sk和adore-ng优点,内核态+用户态的rootkit

Linux下Rootkit介绍相关推荐

  1. linux中有fd set函数吗,LINUX下FD_SET介绍

    刚刚了解了linux下select系统调用,函数原型是 #include #include int select(int maxfdpl, fd_set *readset, fd_set *write ...

  2. 「docker实战篇」python的docker爬虫技术-在linux下mitmproxy介绍和安装(四)

    原创文章,欢迎转载.转载请注明:转载自IT人故事会,谢谢! 原文链接地址:「docker实战篇」python的docker爬虫技术-在linux下mitmproxy介绍和安装(四) 上次说了fiddl ...

  3. linux下MQTT介绍和开发

    一.简述  MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级 ...

  4. Linux下tmpfs介绍及使用

    tmpfs介绍 tmpfs是一种虚拟内存文件系统,而不是块设备.是基于内存的文件系统,创建时不需要使用mkfs等初始化 它最大的特点就是它的存储空间在VM(virtual memory),VM是由li ...

  5. python爬虫灰产_「docker实战篇」python的docker爬虫技术-在linux下mitmproxy介绍和安装(四)...

    上次说了fiddler的抓包和参数介绍,通过fiddler抓包工具可以完成app和web端的数据,这次介绍另一款抓包公司mitmproxy,可以和python语言结合通过爬虫抓取数据. 源码:http ...

  6. 【运维安全】Linux下rootkit把木马程序的使用

    文章目录 实验环境 Rootkit概述 环境准备 1. 上传软件包 2. 解压软件包 3. 安装依赖包 安装adore-ng 测试命令是否运行 rootkit木马的使用 提权演示 1. 创建普通用户便 ...

  7. linux下tmpfs是什么文件,Linux下tmpfs介绍及使用

    tmpfs介绍 tmpfs是一种虚拟内存文件系统,而不是块设备.是基于内存的文件系统,创建时不需要使用mkfs等初始化 它最大的特点就是它的存储空间在VM(virtual memory),VM是由li ...

  8. linux tmpfs作用,Linux下tmpfs介绍与使用

    1 Tmpfs是什么 tmpfs是Linux/Unix系统上的一种基于内存的文件系统.tmpfs可以使用您的内存或swap分区来存储文件.由此可见,tmpfs主要存储 暂存的文件. 优势 : 1. 动 ...

  9. linux的rootkit工具包,Linux下rootkit后门检测工具chkrootkit

    一.安装编译工具包 yum install gcc gcc-c++ make yum install glibc-static 二.安装chkrootkit cd /usr/local/src/ wg ...

最新文章

  1. php支付宝h5 app,H5网站接入支付宝的支付接口
  2. 看麻了!35岁奥地利总理辞职当码农
  3. 面试题系列(10):一个大型电商网有大量的图片,加载很慢,你有哪些方法优化这些图片的加载?...
  4. w3school入门自学免费网站推荐
  5. 分析lammps文件_LAMMPS学习系列(24)
  6. 有趣的python代码实例_Python之路:200个Python有趣的小例子一网打尽
  7. String变量的两种创建方式
  8. OD调试器调试Delphi程序按钮事件断点方法
  9. Java| 编译和反编译
  10. python实现分层随机抽样算法_python分层随机抽样
  11. R语言基础画图/绘图/作图
  12. 2022-2028年全球与中国便携式茶包市场现状及未来发展趋势分析报告
  13. 又一家边缘计算公司融资啦!!!
  14. 服务器tpm性能指标,如何计算TPM的关键指标OEE?
  15. 看得见的数据结构Android版之开篇前言
  16. 真香!一行代码搞定微信支付回调
  17. PTA第八章7-2 统计英文单词个数
  18. 基于Apache Curator框架的ZooKeeper基本用法详解
  19. 天池比赛——Docker基础镜像搭建,容器导出镜像
  20. turtle之绘制美国队长的盾牌

热门文章

  1. 唐桥云会议分组讨论——新的参会互动方式
  2. 基于AVpro视频播放器的展馆视频播放
  3. 域控知识与安全01:域控知识基础
  4. ora-20085 ora-06512错误解决
  5. chrome 导入html书签,怎么把谷歌浏览器书签导出来?怎么将书签导入到别的浏览器中?...
  6. JavaScript 鼠标移入移出状态(onmouseover、onmouseout)
  7. 在智能制造背景下,传统工厂何去何从?
  8. 什么是json数据?json数据应该怎么设计
  9. Undetected
  10. 推荐最适合IT人自学的视频网站、社区网站