深入淺出理解作業系統安全

  • 2019 年 12 月 12 日
  • 筆記

引言

作業系統安全在電腦資訊系統的整體安全性中具有至關重要的作用,沒有作業系統提供的安全性,電腦業務系統的安全性是沒有基礎的。

什麼是作業系統

作業系統(英語:operating system,縮寫:OS)是管理電腦硬體與軟體資源的電腦程式,同時也是電腦系統的內核與基石。作業系統需要處理如管理與配置記憶體、決定系統資源供需的優先次序、控制輸入與輸出設備、操作網路與管理文件系統等基本事務。作業系統也提供一個讓用戶與系統交互的操作介面。

目前主流的伺服器作業系統有Windows、Linux、Sun Solaris 、IBM AIX、HP-UX等等。

什麼是作業系統安全

作業系統安全就是要確保作業系統自身是安全的,它可由作業系統自身安全配置、相關安全軟體以及第三方安全設備實現的。

作業系統安全的重要性

作業系統安全在電腦資訊系統的整體安全性中具有至關重要的作用,沒有作業系統提供的安全性,電腦系統的安全性是沒有基礎的。

作業系統安全是包括伺服器、終端/工作站等在內的電腦設備在作業系統層面的安全。終端/工作站是帶外設的台式機與筆記型電腦電腦,伺服器則包括B/S、C/S應用程式、網路、文件與通訊等伺服器。作業系統是構成業務資訊系統的主要部分,其上承載著各種應用。因此,作業系統安全是保護業務資訊系統安全的基礎。

作業系統安全涉及的控制點包括但不限於身份鑒別、訪問控制、安全審計、剩餘資訊保護、入侵防範、惡意程式碼防範和資源控制。

作業系統安全之身份鑒別

(1) 作業系統應對登錄作業系統的用戶進行身份標識和鑒別,例如:用戶至少要劃分為管理員組和普通用戶組。 (2) 作業系統管理員組的用戶身份標識應具有不易被猜測和冒用的特點,例如:將linux默認的root改名為admin。 (3) 作業系統口令應有複雜度要求,例如:大寫字母類、小寫字母類、數字類、符號類混合,每類最少1個,並每90天更換一次。 (4) 作業系統應啟用登錄失敗處理功能,例如:當連續輸入密碼錯誤5次後,暫停登錄10分鐘。 (5) 當對伺服器作業系統進行遠程管理時,應使用加密隧道方式,例如:使用ssh連接linux伺服器,防止鑒別資訊在網路傳輸過程中被竊聽。 (6) 應為作業系統的不同用戶分配不同的用戶名,確保用戶名具有唯一性,例如:管理員1的用戶名是adm1-XXX,普通用戶1的用戶名是usr1-XXX。

作業系統安全之訪問控制

(1) 應啟用作業系統訪問控制功能,依據安全策略控制用戶對資源的訪問,例如:僅授予user1用戶完成工作的最小目錄訪問許可權。 (2) 應根據作業系統管理用戶的角色分配許可權,實現管理用戶的許可權分離,僅授予管理用戶所需的最小許可權,例如:對於linux來說,root是管理員帳號,日常工作要使用普通帳號而不是用root。 (3) 應實現作業系統特權用戶的許可權分離。例如:誰可以使用su命令,誰可以使用sudo命令。 (4) 應及時刪除作業系統上多餘的、過期的帳戶,避免共享帳戶的存在,例如:linux要刪除全部多餘帳號,例如games帳號等。

作業系統安全之安全審計

(1) 審計範圍應覆蓋到伺服器和重要客戶端上的每個作業系統用戶,伺服器應使用堡壘機進行文字終端和圖形化終端的操作記錄;重要客戶端應採用終端數據防泄漏軟體,例如:對包含客戶姓名、號、手機號、號等敏感資訊的收集、傳輸、存儲、使用環節進行監控和審計。 (2) 作業系統審計內容應包括重要用戶行為、系統資源的異常使用和重要系統命令的使用等系統內重要的安全相關事件。例如:對於linux作業系統,應記錄root用戶對某個目錄執行 # rm -rf /xxx命令的時間。 (3) 作業系統審計記錄應包括事件的日期、時間、類型、主體標識、客體標識和結果等,例如:要記錄「誰、在什麼時間、訪問什麼系統、執行什麼操作、什麼時間退出系統的」。 (4) 應能夠根據作業系統審計記錄數據進行分析,並生成審計報表,例如:生成pdf文件。 (5) 應保護作業系統的審計進程,避免受到未預期的中斷,例如:保護linux audit daemon進程。 (6) 應保護作業系統審計記錄,避免受到未預期的刪除、修改或覆蓋等。例如:保護linux作業系統的審計配置文件和審計日誌,共有三個文件,/etc/sysconfig/auditd,/etc/audit/auditd.conf,/var/log/audit/audit.log。

作業系統安全之剩餘資訊保護

(1) 應保證作業系統用戶的鑒別資訊所在的存儲空間,被釋放或再分配給其他用戶前得到完全清除,無論這些資訊是存放在硬碟上還是在記憶體中,例如:當一台使用過的電腦分配給其他人員使用時,必須確保之前人員全部使用的記錄和數據被徹底清除,防止泄露敏感資訊。 (2) 應確保作業系統內的文件、目錄等資源所在的存儲空間,被釋放或重新分配給其他用戶前得到完全清除。例如:在linux環境中,當user1不再使用這台伺服器,應由root執行userdeluser1 –remove 回車,–remove 參數表示在刪除user1的同時,也刪除user1的家目錄/home/user1/下面的全部文件和子目錄。

作業系統安全之入侵防範

(1) 作業系統應能夠檢測到對重要伺服器進行入侵的行為,能夠記錄入侵的源IP、攻擊的類型、攻擊的目的、攻擊的時間,並在發生嚴重入侵事件時提供報警,這項功能通常需要額外的安全軟、硬體來實現。 (2) 作業系統應能夠對重要程式的完整性進行檢測,並在檢測到完整性受到破壞後具有恢復的措施,這項功能通常需要額外的安全軟、硬體來實現。 (3) 作業系統應遵循最小安裝的原則,僅安裝需要的組件和應用程式,並通過設置升級伺服器等方式保持系統修補程式及時得到更新,例如:伺服器作業系統上,不應安裝作業系統自帶的遊戲。

作業系統安全之資源控制

(1) 應通過設定終端接入方式、網路地址範圍等條件限制終端登錄,例如:設置可以訪問伺服器ssh的IP地址。 (2) 根據安全策略設置登錄終端的操作超時鎖定,例如:設置300秒內用戶無操作就斷開終端。 (3) 對重要伺服器進行監視,包括監視伺服器的CPU、硬碟、記憶體、網路等資源的使用情況,例如:在linux作業系統中,可以使用top命令進行監控。 (4) 限制單個用戶對系統資源的最大或最小使用限度,例如:linux作業系統可以限制用戶只能訪問特定目錄。

*本文作者:c9t9h5,轉載請註明來自FreeBuf.COM