萬盛學電腦網

 萬盛學電腦網 >> 安全資訊防護 >> 阻擊利用第三方軟件漏洞發起的攻擊

阻擊利用第三方軟件漏洞發起的攻擊

利用漏洞的攻擊是讓網管員非常頭疼的一類攻擊。該如何預防此類攻擊呢?

  提高防范意識

  管理員通常比較注意微軟發布的Windows漏洞,並會及時地為系統安裝補丁程序,但系統上運行第三方的服務程序卻常被忽略。比如前一段時間Serv-U服務遠程溢出漏洞就讓很多服務器成為黑客的“肉雞”。

  系統中運行的遠程訪問或數據庫服務等,都在不同程度上存在有漏洞,管理員應該同樣關注這些第三方的服務程序,注意廠商發布的漏洞,並及時地安 裝補丁或升級服務程序。此外,還有一類漏洞存在於處理文件的應用程序中,如微軟的Word文檔、圖形文件、Adobe的Pdf文檔、Realplay的視 頻文件等。當管理員打開這些帶有惡意溢出代碼的文件時,系統就為黑客敞開大門了。

  對付這類漏洞,首先需要管理員提高防范意識,同時也要求普通用戶不要輕易打開來歷不明的郵件,並及時安裝相應的補丁文件。一個簡單有效的辦法就是嚴格控制服務器上安裝的程序,保證服務器的簡潔性,關閉不需要的系統服務。

  注意異常連接和系統日志

  有種錯誤認識,認為系統安裝了防火牆和防病毒程序就能有效地防御針對漏洞的攻擊。但從TCP/IP分層結構來考慮,防火牆是工作在傳輸層的,而漏洞溢出攻擊的代碼往往是針對應用層的程序,因此對這類攻擊是無法檢測的。

  防火牆的特性是它能夠對所有進出的連接加以控制,僅依賴防火牆的默認配置規則是不夠安全的。管理員需要制定嚴格的訪問規則,僅打開需要對外提供服務的端口。這樣即使黑客能夠通過漏洞打開系統的某個端口,但由於該端口受防火牆的阻擋,黑客也無法建立連接。

  還有些攻擊程序是端口反彈型的,程序會在溢出後主動連接黑客計算機上 的某個端口,這樣黑客就能通過一個反向的連接來控制被攻擊的計算機。一般情況下,防火牆對進站連接的控制較嚴,而對於出站連接的管理較松,因此,黑客常常 能成功實施攻擊。所以,當發現異常的出站連接時,管理員需要認真分析,找出發起連接的進程,檢查進程的用戶名和連接的目的端口(如使用 ProcessExplorer程序),結合經驗判斷是正常的連接還是非法的反向連接。

  當發生溢出攻擊時,服務程序會出現意外錯誤,管理員還可以通過檢查應用程序的日志記錄,了解錯誤發生的來源、頻度、時間、類型等詳細內容,依此判斷是否遭受攻擊。

  合理限制服務程序的權限

  當黑客利用漏洞成功溢出後,得到一個遠程連接的Cmdshell,這個Cmdshell的權限往往繼承了被溢出的服務程序的初始權限,而大部 分服務都是運行在系統的System賬戶權限下的,該賬戶的權限甚至超過系統中的Administrator賬戶。也就是說,如果溢出成功,黑客將成為系 統中的管理員。

  雖然很大一部分系統內置的服務程序需要以System賬戶權限啟動,但也有不少服務程序可以選擇啟動時的用戶賬戶。對於這樣的服務程序,我們 可以在系統中建立一個較小權限的賬戶,並使用該賬戶啟動服務程序。這樣即使出現了漏洞,黑客也只能得到一個較小權限的Cmdshell。

  修改應用程序的安全屬性

  當黑客得到一個較小權限的Cmdshell,往往不會善罷甘休,可能通過上傳一個本地溢出的攻擊程序進一步擴大其權限。所以說,即使是較小權限的Cmdshell也是危險的。那麼,我們該如何阻止黑客得到Cmdshell呢?

  我們可以從提供Cmdshell環境的“cmd.exe”文件入手,通過修改Cmd的安全屬性來阻止黑客。

  在NTFS文件系統中,可以為不同賬戶設置不同的應用程序的權限,這裡通過添加一個最小權限的賬戶來限制cmd命令的使用。

  (1)添加賬戶

  使用命令“Netuserhidden$/add”添加一個屬於“users”組的“hidden”賬戶。同時為“hidden”賬戶設置足夠強壯的口令。

  提示:在賬戶名後加“$”符號可以建立隱藏賬戶,該賬戶在命令“netuser”下不顯示。

  (2)修改cmd.exe的安全屬性

  在Windows的System32目錄下找到“cmd.exe”文件,右鍵單擊文件,在文件的“屬性”中選擇“安全”欄目,刪除如圖1所示的所有用戶具有的權限。然後添加“hidden”用戶,並分配權限。

copyright © 萬盛學電腦網 all rights reserved