您所在的位置:首页 > 拍案惊奇 > 后门技术及rootkit工具-Knark分析及防范(二)

后门技术及rootkit工具-Knark分析及防范(二)

http://dengxiaojin.com.cn | 2018/5/26 21:30:02

四、Knark软件包的安装和使用
该软件包的核心软件是knark,c,它是一个Linux LKM(loadable kernel-module)。运行命令"make"来编译knark软件包,通过"insmod knark"命令来加载该模块。当knark被加载,隐藏目录/proc/knark被创建,该目录下将包含以下文件:
author 作者自我介绍
files  系统中隐藏文件列表
nethides  在/proc/net/[tcp|udp]隐藏的字符串
pids 被隐藏的pids列表,格式类似于ps命令输出
redirects  被重定向的可执行程序入口列表
该软件包编译以后将有下面这些工具软件(它们都依赖于被加载的模块knark.o。除了taskhack.c,其用于直接修改/dev/kmem)


入侵者入侵以后往往将knark的各种工具存放在/dev/某个子目录下创建的隐藏子目录,如/dev/.ida/.knard等等。
五、检测系统是否被安装了Knark
Knark的作者Creed,发布了一个工具:knarkfinder.c来发现Knark隐藏的进程。
检查系统是否安装有Knark的最直接有效的方法是以非特权用户身份来运行Knark的一个软件包如:rootme,看该用户是否能获得root权限。由于目前Knark目前没有认证机制,因此入股系统被安装了Knark任何一个本地用户运行这个程序都能获得root权限。
还有一个最有效的发现系统是否被knark或者类似的rootkit所感染的方法就是使用kstat来检测,具体参考本站的Nexeon写的解决方案文章:检测LKM rootkit。
六、Knark防范
防止knark最有效的方法是阻止入侵者获得root权限。但是在使用一切常规的方法进行安全防范以后,防止knark之类的基于LKM技术的rootkit的方法是:
创建和使用不支持可加载模块的内核,也就是使用单块内核。这样knark就不能插入到内核中去了。
使用lcap (http://pweb.netcom.com/~spoon/lcap/)实现系统启动结束以后移除内核LKM功能,这样可以防止入侵者加载模块。然而这种方法存在一定的问题,入侵者可以在获得root权限以后修改启动脚本,在lcap启动之前来加载knark模块从而逃避lcap的限制。



本文章由华宇娱乐 www.pc899.com的作者提供
图片新闻
  • 家庭装修 选“猫”还是“狗”
  • 和比亚迪一起向绿色进发 “新能源 环保主义”活动三城大招募
  • “酸性体质”说存疑 排酸肉抗癌无效