具體攻擊過程分析
格林威治時間禮拜四,11月19日下午5時左右,入侵者使用一個竊取到的密碼登陸到klecker伺服器(.debian.org)所在的開發 人員帳號上 (普通許可權帳號),接著通過HTTP取回一個本地核心木馬程式並使用該程式獲得root許可權,然後安裝了root -kit程式。入侵者然後使用同一帳號和密碼進入master伺服器並用同樣手段獲得root許可權並安裝了SuckIT root-kit。入侵者又使用同一帳號和密碼企圖進入murphy主機,操作失敗。murphy主機有帳號限制,只運行列表格服務器並且只有少數開發人員 才能登陸。此法無效,該攻擊者使用在master系統的root許可權訪問了管理帳號,該管理帳號用作檔案備份和訪問murphy主機。入侵者得逞,也在 murphy主機安裝了root-kit.
次日,攻擊者使用從master伺服器上竊取的帳號密碼登陸gluck伺服器,獲得root許可權後再次安裝了木馬程式SuckIT root-kit。
/sbin/init 被覆蓋的確切日期和時間和root-kit被安裝的確切時間均通過分析一一得知。分析人員同時也發現一可執行檔,該檔案用來擷取伺服器root訪問權.安全專家則發現,該木馬程式利用了Linux核心的漏洞。
一個brk系統呼叫的整數溢出被利用並覆蓋核心儲存空間(改變page保護點),攻擊者由此獲得核心儲存空間空間的控制權並可以改變儲存空間中的參數數值。
儘管這一核心漏洞已於9月份被Andrew Morton發現並在10月以來發布的核心版本中進行了少量修複。但是由於安全意識的疏忽並沒有人意識到該漏洞的嚴重性。所以,沒有任何Linux發行商 對此提出任何安全建議。導致駭客發現並利用該漏洞攻擊了debian伺服器。至此,通用缺陷和漏洞計劃指定該安全問題代號為CAN-2003-0961。
Linux 2.2.x 沒有此缺陷,因為通道檢查已經在此之前進行。同時確信Sparc和PA-RISC核心均無該漏洞,(Sparc和PA-RISC核心儲存於其他位置)。
我們不能把該木馬程式給任何陌生人,請理解我們的作法並不要向我們詢問有關此木馬程式的事項。
修複
伺服器關閉以後,我們建立了遭受攻擊的伺服器硬碟映像並轉移到隔離的伺服器。該映像同時分發給評鑑分析人員。之後,美國有三台伺服器 (master, murphy,gluck)重新安裝,經過相關服務的管理員調查之後一個接一個重新開放了帳號服務。klecker伺服器因為維護計劃將會延期開放,所以 安全文檔的重新線上放置會比其他服務更早。目前我們也沒有klecker控制台訪問能力,所以修複工作不得不進行遠程操作。在硬碟映像通過Serial Console登陸到有防火牆的本網伺服器後,root-kit程式被刪除,核心則被更換和加固。兩次檢查了二進位檔案和安全文檔,klecker服 務器將於未來幾周內重新安裝。
由於安全預防原因,所有LDAP的開發人員帳號被停用,重要主機的SSH Key被卸載,以保證不會收到攻擊。這樣,公用Debian運作包括上傳檔案和訪問CVS儲藏室都被停用。在quantz使用的所有密碼均被設定無效。所 有的SSH許可密匙也被卸載。新密碼可以在以下串連中擷取:https://alioth.debian.org/account/lostpw.php
當所有服務重新開放並保證伺服器足夠安全時,LDAP會被重新設定,開發人員便可建立新密碼。由於受攻擊的伺服器SSH重新安裝。將有新的RSA主機密匙和密匙指紋辨識器安裝於這些伺服器。
總結
自從受到攻擊的伺服器密碼遭到監聽,任何發送帶有密碼的資訊串連都被認為受到威脅。另外,如果你使用相同的密碼和帳號登陸Debian主機,我 們強烈建議你分別更換密碼和帳號。在伺服器進行引導和儲存的SSH key如果曾經用於訪問其他主機,該SSH key也必須被刪除。
擔心個人電腦有危險的開發人員可以通過運行chkrootkit進行檢查。目前的版本可以在下列地址找到:
deb http://lackof.org/taggart/debian woody/chkrootkit main
deb-src http://lackof.org/taggart/debian woody/chkrootkit main