被入侵系統恢復指南
發表于:2007-05-25來源:作者:點擊數:
標簽:
本文主要講述UNIX或者NT系統如果被侵入,應該如何應對。 注意:你在系統恢復過程中的所有步驟都應該與你所在組織的 網絡安全 策略相符。 A.準備工作 1.商討安全策略 如果你的組織沒有自己的安全策略,那么需要按照以下步驟建立自己的安全策略。 1.1.和管理人
本文主要講述UNIX或者NT系統如果被侵入,應該如何應對。
注意:你在系統恢復過程中的所有步驟都應該與你所在組織的
網絡安全策略相符。
A.準備工作
1.商討安全策略
如果你的組織沒有自己的安全策略,那么需要按照以下步驟建立自己的安全策略。
1.1.和管理人員協商
將入侵事故通知管理人員,可能在有的組織中很重要。在be aware進行事故恢復的時候,網絡管理人員能夠得到內部各部門的配合。也應該明白入侵可能引起傳媒的注意。
1.2.和法律顧問協商
在開始你的恢復工作之前,你的組織需要決定是否進行法律調查。
注意CERT(Computer Emergency Response Team)只提供技術方面的幫助和提高網絡主機對安全事件的反應速度。它們不會提出法律方面的建議。所以,對于法律方面的問題建議你咨詢自己的法律顧問。你的法律顧問能夠告訴你入侵者應該承擔的法律責任(民事的或者是刑事的),以及有關的法律程序。
現在,是你決定如何處理這起事故的時候了,你可以加強自己系統的安全或者選擇報警。
如果你想找出入侵者是誰,建議你與管理人員協商并咨詢法律顧問,看看入侵者是否觸犯了地方或者全國的法律。根據這些,你可以報案,看看警方是否愿意對此進行調查。
針對與入侵事件,你應該與管理人員和法律顧問討論以下問題:
如果你要追蹤入侵者或者跟蹤網絡連接,是否會觸犯法律。
如果你的站點已經意識到入侵但是沒有采取措施阻止,要承擔什么法律責任。
入侵者是否觸犯了全國或者本地的法律。
是否需要進行調查。
是否應該報警。
1.3.報警
通常,如果你想進行任何類型的調查或者起訴入侵者,最好先跟管理人員和法律顧問商量以下。然后通知有關執法機構。
一定要記住,除非執法部門的參與,否則你對入侵者進行的一切跟蹤都可能是非法的。
1.4.知會其他有關人員
除了管理者和法律顧問之外,你還需要通知你的恢復工作可能影響到的人員,例如其他網絡管理人員和用戶。
2.記錄恢復過程中所有的步驟
毫不夸張地講,記錄恢復過程中你采取的每一步措施,是非常重要的?;謴鸵粋€被侵入的系統是一件很麻煩的事,要耗費大量的時間,因此經常會使人作出一些草率的決定。記錄自己所做的每一步可以幫助你避免作出草率的決定,還可以留作以后的參考。記錄還可能對法律調查提供幫助。
B.奪回對系統的控制權
1.將被侵入的系統從網絡上斷開
為了奪回對被侵入系統的控制權,你需要將其從網絡上斷開,包括播號連接。斷開以后,你可能想進入UNIX系統的單用戶模式或者NT的本地管理者(local administrator)模式,以奪回系統控制權。然而,重啟或者切換到單用戶/本地管理者模式,會丟失一些有用的信息,因為被侵入系統當前運行的所有進程都會被殺死。
因此,你可能需要進入C.5.檢查網絡嗅探器節,以確定被侵入的系統是否有網絡嗅探器正在運行。
在對系統進行恢復的過程中,如果系統處于UNIX單用戶模式下,會阻止用戶、入侵者和入侵進程對系統的訪問或者切換主機的運行狀態。
如果在恢復過程中,沒有斷開被侵入系統和網絡的連接,在你進行恢復的過程中,入侵者就可能連接到你的主機,破壞你的恢復工作。
2.復制一份被侵入系統的影象
在進行入侵分析之前,建議你備份被侵入的系統。以后,你可能會用得著。
如果有一個相同大小和類型的硬盤,你就可以使用UNIX命令dd將被侵入系統復制到這個硬盤。
例如,在一個有兩個SCSI硬盤的
Linux系統,以下命令將在相同大小和類型的備份硬盤(/dev/sdb)上復制被侵入系統(在/dev/sda盤上)的一個精確拷貝。
# dd if=/dev/sda of=/dev/sdb
請閱讀dd命令的手冊頁獲得這個命令更詳細的信息。
還有一些其它的方法備份被侵入的系統。在NT系統中沒有類似于dd的內置命令,你可以使用一些第三方的程序復制被侵入系統的整個硬盤影象。
建立一個備份非常重要,你可能會需要將系統恢復到侵入剛被發現時的狀態。它對法律調查可能有幫助。記錄下備份的卷標、標志和日期,然后保存到一個安全的地方以保持數據的完整性。
C.入侵分析
現在你可以審查日志文件和系統配置文件了,檢查入侵的蛛絲馬跡,入侵者對系統的修改,和系統配置的脆弱性。
1.檢查入侵者對系統軟件和配置文件的修改
a.校驗系統中所有的二進制文件
在檢查入侵者對系統軟件和配置文件的修改時,一定要記住:你使用的校驗工具本身可能已經被修改過,操作系統的內核也有可能被修改了,這非常普遍。因此,建議你使用一個可信任的內核啟動系統,而且你使用的所有分析工具都應該是干凈的。對于UNIX系統,你可以通過建立一個啟動盤,然后對其寫保護來獲得一個可以信賴的操作系統內核。
你應該徹底檢查所有的系統二進制文件,把它們與原始發布介質(例如光盤)做比較。因為現在已經發現了大量的特洛伊木馬二進制文件,攻擊者可以安裝到系統中。
在UNIX系統上,通常有如下的二進制文件會被特洛伊木馬代替:telnet、in.telnetd、login、su、ftp、ls、ps、netstat、ifconfig、find、du、df、libc、sync、inetd和syslogd。除此之外,你還需要檢查所有被/etc/inetd.conf文件引用的文件,重要的網絡和系統程序以及共享庫文件。
在NT系統上。特洛伊木馬通常會傳播病毒,或者所謂的"遠程管理程序",例如Back Orifice和NetBus。特洛伊木馬會取代處理網絡連接的一些系統文件。
一些木馬程序具有和原始二進制文件相同的時間戳和sum校驗值,通過校驗和無法判斷文件是否被修改。因此,對于UNIX系統,我們建議你使用cmp程序直接把系統中的二進制文件和原始發布介質上對應的文件進行比較。
你還可以選擇另一種方法檢查可疑的二進制文件。向供應商索取其發布的二進制文件的MD5校驗值,然后使用MD5校驗值對可疑的二進制文件進行檢查。這種方法適用于UNIX和NT。
b.校驗系統配置文件
在UNIX系統中,你應該進行如下檢查:
檢查/etc/passwd文件中是否有可疑的用戶
檢查/etc/inet.conf文件是否被修改過
如果你的系統允許使用r命令,例如rlogin、rsh、rexec,你需要檢查/etc/hosts.equiv或者.rhosts文件。
檢查新的SUID和SGID文件。下面命令會打印出系統中的所有SUID和SGID文件:
#find / ( -perm -004000 -o -perm -002000 ) -type f -print
對于NT,你需要進行如下檢查:
檢查不成對的用戶和組成員
檢查啟動登錄或者服務的程序的注冊表入口是否被修改
檢查"net share"命令和
服務器管理工具共有的非驗證隱藏文件
檢查pulist.ext程序無法識別的進程
2.檢查被修改的數據
入侵者經常會修改系統中的數據。所以建議你對web頁面文件、ftp存檔文件、用戶目錄下的文件以及其它的文件進行校驗。
3.檢查入侵者留下的工具和數據
入侵者通常會在系統中安裝一些工具,以便繼續監視被侵入的系統。
入侵者一般會在系統中留下如下種類的文件:
網絡嗅探器
網絡嗅探器就是監視和記錄網絡行動的一種工具程序。入侵者通常會使用網絡嗅探器獲得在網絡上以明文進行傳輸的用戶名和密碼。(見C.5)
嗅探器在UNIX系統中更為常見。
特洛伊木馬程序
特洛伊木馬程序能夠在表面上執行某種功能,而實際上執行另外的功能。因此,入侵者可以使用特洛伊木馬程序隱藏自己的行為,獲得用戶名和密碼數據,建立后門以便將來對系統在此訪問被侵入系統。
后門
后門程序將自己隱藏在被侵入的系統,入侵者通過它就能夠不通過正常的系統驗證,不必使用安全缺陷攻擊程序就可以進入系統。
安全缺陷攻擊程序
系統運行存在安全缺陷的軟件是其被侵入的一個主要原因。入侵者經常會使用一些針對已知安全缺陷的攻擊工具,以此獲得對系統的非法訪問權限。這些工具通常會留在系統中,保存在一個隱蔽的目錄中。
入侵者使用的其它工具
以上所列無法包括全部的入侵工具,攻擊者在系統中可能還會留下其它入侵工具。這些工具包括:
系統安全缺陷探測工具
對其它站點發起大規模探測的腳本
發起拒絕服務攻擊的工具
使用被侵入主機計算和網絡資源的程序
入侵工具的輸出
你可能會發現入侵工具程序留下的一些日志文件。在這些文件中可能會包含被牽扯的其它站點,攻擊者利用的安全缺陷,以及其它站點的安全缺陷。
因此,建議你對系統進行徹底的搜索,找出上面列出的工具及其輸出文件。一定要注意:在搜索過程中,要使用沒有被攻擊者修改過的搜索工具拷貝。
搜索主要可以集中于以下方向:
檢查UNIX系統/dev/目錄下意外的ASCII文件。一些特洛伊木馬二進制文件使用的配置文件通常在/dev目錄中。
仔細檢查系統中的隱藏文件和隱藏目錄。如果入侵者在系統中建立一個一個新的帳戶,那么這個新帳戶的起始目錄以及他使用的文件可能是隱藏的。
檢查一些名字非常奇怪的目錄和文件,例如:...(三個點)、..(兩個點)以及空白(在UNIX系統中)。入侵者通常會在這樣的目錄中隱藏文件。對于NT,應該檢查那些名字和一些系統文件名非常接近的目錄和文件。
4.審查系統日志文件
詳細地審查你的系統日志文件,你可以了解系統是如何被侵入的,入侵過程中,攻擊者執行了哪些操作,以及哪些遠程主機訪問了你的主機。通過這些信息,你能夠對入侵有更加清晰的認識。
記住:系統中的任何日志文件都可能被入侵者改動過。
對于UNIX系統,你可能需要查看/etc/syslog.conf文件確定日志信息文件在哪些位置。NT通常使用三個日志文件,記錄所有的NT事件,每個NT事件都會被記錄到其中的一個文件中,你可以使用Event Viewer查看日志文件。其它一些NT應用程序可能會把自己的日志放到其它的地方,例如ISS服務器默認的日志目錄是c:winntsystem32logfiles。
以下是一個通常使用的UNIX系統日志文件列表。由于系統配置的不同可能你的系統中沒有其中的某些文件。
messages
messages日志文件保存了大量的信息??梢詮倪@個文件中發現異常信息,檢查入侵過程中發生了哪些事情。
xferlog
如果被侵入系統提供FTP服務,xferlog文件就會記錄下所有的FTP傳輸。這些信息可以幫助你確定入侵者向你的系統上載了哪些工具,以及從系統
下載了哪些東西。
utmp
保存當前登錄每個用戶的信息,使用二進制格式。這個文件只能確定當前哪些用戶登錄。使用who命令可以讀出其中的信息。
wtmp
每次用戶成功的登錄、退出以及系統重啟,都會在wtmp文件中留下記錄。這個文件也使用二進制格式,你需要使用工具程序從中獲取有用的信息。last就是一個這樣的工具。它輸出一個表,包括用戶名、登錄時間、發起連接的主機名等信息,詳細用法可以使用man last查詢。檢查在這個文件中記錄的可疑連接,可以幫助你確定牽扯到這起入侵事件的主機,找出系統中的哪些帳戶可能被侵入了。
secure
某些些版本的UNIX系統(例如:RedHat Linux)會將tcp_wrappers信息記錄到secure文件中。如果系統的inetd精靈使用tcp_wrappers,每當有連接請求超出了inetd提供的服務范圍,就會在這個文件中加入一條日志信息。通過檢查這個日志文件,可以發現一些異常服務請求,或者從陌生的主機發起的連接。
審查日志,最基本的一條就是檢查異?,F象。
5.檢查網絡嗅探器
入侵者侵入一個UNIX系統后,為了獲得用戶名和密碼信息,一般會在系統上安裝一個網絡監視程序,這種程序就叫作嗅探器或者數據包嗅探器。對于NT,入侵者會使用遠程管理程序實現上述目的。
判斷系統是否被安裝了嗅探器,首先要看當前是否有進程使你的網絡接口處于混雜(Promiscuous)模式下。如果任何網絡接口處于promiscuous模式下,就表示可能系統被安裝了網絡嗅探器。注意如果你重新啟動了系統或者在單用戶模式下操作,可能無法檢測到Promiscuous模式。使用ifconfig命令就可以知道系統網絡接口是否處于promoscuous模式下(注意一定使用沒有被侵入者修改的ifconfig):
#/path-of-clean-ifconfig/ifconfig -a
有一些工具程序可以幫助你檢測系統內的嗅探器程序:
cpm(Check Promiscuous Mode)--UNIX可以從以下地址下載:
ftp://coast.cs.purdue.edu/pub/tools/unix/cpm/
ifstatus--UNIX可以從以下地址下載:
ftp://coast.cs.purdue.edu/pub/tools/unix/ifstatus/
neped.c可以從以下地址的到:
ftp://apostols.org/AposTolls/snoapshots/neped/neped.c
一定要記住一些合法的網絡監視程序和協議分析程序也會把網絡接口設置為promiscuous模式。檢測到網絡接口處于promicuous模式下,并不意味著系統中有嗅探器程序正在運行。
但是,在Phrack
雜志的一篇文章:(Phrack Magazine Volume 8,Issue 53 July 8,1998,article 10 of 15, Interface Promiscuity Obscurity)中,有人提供了一些針對FreeBSD、Linux、HP-UX、IRIX和Solaris系統的模塊,可以擦除IFF_PRO
MISC標志位,從而使嗅探器逃過此類工具的檢查。以此,即使使用以上的工具,你沒有發現嗅探器,也不能保證攻擊者沒有在系統中安裝嗅探器。
現在,LKM(Loadable Kernel Model,可加載內核模塊)的廣泛應用,也增加了檢測難度。關于這一方面的檢測請參考使用KSAT檢測可加載內核模塊。
還有一個問題應該注意,嗅探器程序的日志文件的大小會急劇增加。使用df程序查看文件系統的某個部分的大小是否太大,也可以發現嗅探器程序的蛛絲馬跡。建議使用lsof程序發現嗅探器程序打開的日志文件和訪問訪問報文設備的程序。在此,還要注意:使用的df程序也應該是干凈的。
一旦在系統中發現了網絡嗅探器程序,我們建議你檢查嗅探器程序的輸出文件確定哪些主機受到攻擊者威脅。被嗅探器程序捕獲的報文中目的主機將受到攻擊者的威脅,不過如果系統的密碼是通過明文傳輸,或者目標主機和源主機互相信任,那么源主機將受到更大的威脅。
通常嗅探器程序的日志格式如下:
-- TCP/IP LOG -- TM: Tue Nov 15 15:12:29 --
PATH: not_at_risk.domain.com(1567) => at_risk.domain.com(telnet)
使用如下命令可以從嗅探器程序的日志文件中得到受到威脅的主機列表:
% grep PATH: $sniffer_log_file | awk '{print $4}' |
awk -F( '{print $1}'| sort -u
你可能需要根據實際情況對這個命令進行一些調整。一些嗅探器程序會給日志文件加密,增加了檢查的困難。
你應該知道不只是在嗅探器程序日志文件中出現的主機受到攻擊者的威脅,其它的主機也可能受到威脅。
建議你參http://www.cert.org/advisories/CA-94.01.ongoing.network.monitoring.attacks.html獲得更為詳細的信息。
6.檢查網絡上的其它系統
除了已知被侵入的系統外,你還應該對網絡上所有的系統進行檢查。主要檢查和被侵入主機共享網絡服務(例如:NIX、NFS)或者通過一些機制(例如:hosts.equiv、.rhosts文件,或者kerberos服務器)和被侵入主機相互信任的系統。
建議你使用CERT的
入侵檢測檢查列表進行這一步檢查工作。
http://www.cert.org/tech_tips/intruder_detection_checklist.html
http://www.cert.org/tech_tips/win_intruder_detection_checklist.html
7.檢查涉及到的或者受到威脅的遠程站點
在審查日志文件、入侵程序的輸出文件和系統被侵入以來被修改的和新建立的文件時,要注意哪些站點可能會連接到被侵入的系統。根據經驗那些連接到被侵入主機的站點,通常已經被侵入了。所以要盡快找出其它可能遭到入侵的系統,通知其管理人員。
D.通知相關的CSIRT和其它被涉及的站點
1.事故報告
入侵者通常會使用被侵入的帳戶或者主機發動對其它站點的攻擊。如果你發現針對其它站點的入侵活動,建議你馬上和這些站點聯絡。告訴他們你發現的入侵征兆,建議他們檢查自己的系統是否被侵入,以及如何防護。要盡可能告訴他們所有的細節,包括:日期/時間戳、時區,以及他們需要的信息。
你還可以向CERT(計算機緊急反應組)提交事故報告,從他們那里的到一些恢復建議。
中國大陸地區的網址是:
http://www.cert.org.cn
2.與CERT調節中心聯系
你還可以填寫一份事故報告表,使用電子郵件發送http://www.cert.org,從那里可以得到更多幫助。CERT會根據事故報告表對攻擊趨勢進行分析,將分析結果總結到他們的安全建議和安全總結,從而防止攻擊的蔓延??梢詮囊韵戮W址獲得事故報告表:
http://www.cert.org/ftp/incident_reporting_form
3.獲得受牽連站點的聯系信息
如果你需要獲得頂級域名(.com、.edu、.net、.org等)的聯系信息,建議你使用interNIC的whois
數據庫。
http://rs.internic.net/whois.html
如果你想要獲得登記者的確切信息,請使用interNIC的登記者目錄:
http://rs.internic.net/origin.html
想獲得亞太地區和澳洲的聯系信息,請查詢:
http://www.apnic.net/apnic-bin/whois.pl
http://www.aunic.net/cgi-bin/whois.aunic
如果你需要其它事故反應組的聯系信息,請查閱FIRST(Forum of Incident Response and Security Teams)的聯系列表:
http://www.first.org/team-info/
要獲得其它的聯系信息,請參考:
http://www.cert.org/tech_tips/finding_site_contacts.html
建議你和卷入入侵活動的主機聯系時,不要發信給root或者postmaster。因為一旦這些主機已經被侵入,入侵者就可能獲得了超級用戶的權限,就可能讀到或者攔截送到的e-mail。
E.恢復系統
1.安裝干凈的操作系統版本
一定要記住如果主機被侵入,系統中的任何東西都可能被攻擊者修改過了,包括:內核、二進制可執行文件、數據文件、正在運行的進程以及內存。通常,需要從發布介質上重裝操作系統,然后在重新連接到網絡上之前,安裝所有的安全補丁,只有這樣才會使系統不受后門和攻擊者的影響。只是找出并修補被攻擊者利用的安全缺陷是不夠的。
我們建議你使用干凈的備份程序備份整個系統。然后重裝系統。
2.取消不必要的服務
只配置系統要提供的服務,取消那些沒有必要的服務。檢查并確信其配置文件沒有脆弱性以及該服務是否可靠。通常,最保守的策略是取消所有的服務,只啟動你需要的服務。
3.安裝供應商提供的所有補丁
我們強烈建議你安裝了所有的安全補丁,要使你的系統能夠抵御外來攻擊,不被再次侵入,這是最重要的一步。
你應該關注所有針對自己系統的升級和補丁信息。
4.查閱CERT的安全建議、安全總結和供應商的安全提示
我們鼓勵你查閱CERT以前的安全建議和總結,以及供應商的安全提示,一定要安裝所有的安全補丁。
CERT安全建議:
http://www.cert.org/advisories/
CERT安全總結:
http://www.cert.org/advisories/
供應商安全提示:
ftp://ftp.cert.org/pub/cert_bulletins/
5.謹慎使用備份數據
在從備份中恢復數據時,要確信備份主機沒有被侵入。一定要記住,恢復過程可能會重新帶來安全缺陷,被入侵者利用。如果你只是恢復用戶的home目錄以及數據文件,請記住文件中可能藏有特洛伊木馬程序。你還要注意用戶起始目錄下的.rhost文件。
6.改變密碼
在彌補了安全漏洞或者解決了配置問題以后,建議你改變系統中所有帳戶的密碼。一定要確信所有帳戶的密碼都不容易被猜到。你可能需要使用供應商提供的或者第三方的工具加強密碼的安全。
澳大利亞CERT發表了一篇choosing good passwords的文章,可以幫助你選擇良好的密碼。
F.加強系統和網絡的安全
1.根據CERT的UNIX/NT配置指南檢查系統的安全性
CERT的UNIX/NT配置指南可以幫助你檢查系統中容易被入侵者利用的配置問題。
http://www.cert.org/tech_tips/unix_configuration_guidelines.html
http://www.cert.org/tech_tips/win_configuration_guidelines.html
查閱安全工具文檔可以參考以下文章,決定使用的安全工具。
http://www.cert.org/tech_tips/security_tools.html
2.安裝安全工具
在將系統連接到網絡上之前,一定要安裝所有選擇的安全工具。同時,最好使用Tripwire、aide等工具對系統文件進行MD5校驗,把校驗碼放到安全的地方,以便以后對系統進行檢查。
3.打開日志
啟動日志(logging)/檢查(auditing)/記帳(a
clearcase/" target="_blank" >ccounting)程序,將它們設置到準確的級別,例如sendmail日志應該是9級或者更高。經常備份你的日志文件,或者將日志寫到另外的機器、一個只能增加的文件系統或者一個安全的日志主機。
4.配置防火墻對網絡進行防御
現在有關防火墻的配置文章很多,在此就不一一列舉了。你也可以參考:
http://www.cert.org/tech_tips/packet_filtering.html
G.重新連接到Internet全
完成以上步驟以后,你就可以把系統連接回Internet了。
H.升級你的安全策略
CERT調節中心建議每個站點都要有自己的計算機安全策略。每個組織都有自己特殊的文化和安全
需求,因此需要根據自己的情況指定安全策略。關于這一點請參考RFC2196站點安全手冊:
ftp://ftp.isi.edu/in-notes/rfc2196.txt
1.總結教訓
從記錄中總結出對于這起事故的教訓,這有助于你檢討自己的安全策略。
2.計算事故的代價
許多組織只有在付出了很大代價以后才會改進自己的安全策略。計算事故的代價有助于讓你的組織認識到安全的重要性。而且可以讓管理者認識到安全有多么重要。
3.改進你的安全策略
最后一步是對你的安全策略進行修改。所做的修改要讓組織內的所有成員都知道,還要讓他們知道對他們的影響。
原文轉自:http://www.kjueaiud.com
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
|