在IT行業中,虛拟化技術正在從日趨成熟的主流的服務器虛拟化、存儲虛拟化技術蔓延到網絡的各個角落。這裡我們實際做測評的時候,也發現客戶上雲的趨勢越來越高,目前還采用的實體機的已經比較少了,所以我們這裡就來看一下客戶用的比較多的vmware ESXI系統,針對于等保2.0的保護需求是怎樣的。
系統版本查看
這裡就略過安裝的步驟了,配置好訪問IP後,就可以直接輸入IP地址訪問我們的VMware ESXI系統了。
VMware ESXi 底層是一個定制版的Linux系統。可通過在控制台開啟SSH服務進入Linux系統(默認是關閉SSH服務)。
可在此處開啟SSH管理,個人認為,這個SSH管理其實就是類似安全設備(如防火牆)一樣的命令行界面,你在應用層面操作的内容都會反饋到命令行界面中。
查看版本:
應用層面:
SSH登錄:
vmware -v
一、身份鑒别
1. 應對登錄的用戶進行身份标識和鑒别,身份标識具有唯一性,身份鑒别信息具有複雜度要求并定期更換
應用層面:
1)對登錄的用戶進行身份标識和鑒别
通過用戶名 口令的方式
2)身份标識唯一性
默認不允許添加同名用戶
3)身份标識複雜度
首先判斷用戶當前口令是否為複雜口令,至于什麼算複雜口令,這裡就不再贅述了。
确認強制口令策略:主機→管理→系統→高級設置→對應鍵值為:Security.PasswordQualityControl
值具體代表什麼什麼意思,這裡放在下面底層操作系統進行說明
4)身份鑒别信息定期更換
确認強制口令策略:主機→管理→系統→高級設置→對應鍵值為:Security.PasswordMaxDays
曆史密碼記錄
對應鍵值:Security.PasswordHistory
當手動修改密碼的時候會顯示這樣的提示,防止用戶口令到期後使用相同口令刷新口令更改日期
操作系統層面
這裡我們登錄到系統底層,對登錄的用戶進行身份标識和鑒别、身份标識具有唯一性與上述一緻,這裡主要說明口令複雜度模塊。
登錄底層系統後,他的口令複雜度配置文件在:
/etc/pam.d/passwd
1)pam_passwdqc模塊
是一個簡單的密碼強度檢查模塊
以下選項可以傳遞給身份驗證模塊:
① min=N0,N1,N2,N3,N4
(min=disabled,24,12,8,7)不同類型的密碼/密碼短語允許的最小密碼長度。關鍵字disabled可用于禁止給定類型的密碼,無論其長度如何。每個後續數字都不得大于前一個。
N0:僅用于由一個字符類中的字符組成的密碼。字符類包括:數字、小寫字母、大寫字母和其他字符。還有一種特殊的非ASCII字符類,但不能分類,但假定為非數字。
N1:用于密碼,該密碼由不符合密碼要求的兩個字符類中的字符組成。
N2:用于密碼短語,除了滿足此長度要求之外,密碼短語還必須包含足夠數量的單詞。
N3、N4用于由三個和四個字符類的字符組成的密碼。
在計算字符類别的數量時,不計算用作第一個字符的大寫字母和用做最後一個字符的數字。除了足夠長之外,還要求密碼包含足夠多的不同字符,已用于字符類和檢查時所依據的最小長度
② max=N [最大=40]
允許的最大密碼長度,用于防止用戶設置對于某些系統服務而言可能太長的密碼。
N=8被特殊對待:max = 8時,長度超過8個字符的密碼不會被拒絕,但會被截斷為8個字符以進行強度檢查,并會警告用戶。這是為了兼容傳統的DES密碼散列,它截斷密碼為8個字符。
如果使用傳統散列,請務必将max=8設置為重要值,否則某些弱密碼将通過檢查。
③ passphrase=N
密碼短語所需的字數,或者以0禁用用戶選擇對密碼短語的支持。如果密碼中被識别出了常用的短語,那麼最小長度就為必須為N2設置的值,常用單詞的最小識别長度為N(由passphrase确定)。
④ match=N、similar=permit|deny
如果發現本次修改的密碼跟老密碼有4個substring的長度類似,就認為是弱密碼。(match=4 similar=deny)
⑤ random=N [,only]
随機生成的密碼短語的大小,或以0禁用此功能。
⑥ enforce=none|users|everyone
可以使用該模塊配置警告僅限密碼,但實際上不強制使用強密碼。users代表除root賬戶。
⑦ retry=N
修改密碼可重試的次數,返回密碼修改錯誤
⑧ disable_firstupper_lastdigit_check
默認情況下,對于輸入的密碼,如果第一個字母是大寫字母,或者最後一個字母為數字,則不會計入密碼字符的種類。比如:Fuck1234,由于第一個F是大寫字母,所以會被認為,該密碼隻有小寫字母和數字兩種字符。用disable_firstupper_lastdigit_check 禁止了這種識别。
2)針對圖中配置詳解
password requisite /lib/security/$ISA/pam_passwdqc.so retry=3 min=disabled,disabled,disabled,7,7
①隻包含一種字符的密碼,拒絕
②隻包含兩種字符的密碼,拒絕
③拒絕
④隻包含三種字符的密碼,最小長度7位
⑤隻包含四種字符的密碼,最小長度為7位
有效的密碼應該是由大小寫字母、數字和其他字符混合組成。你可以用7個字符長密碼,至少包含這4個類中的3個字符。
但以密碼開頭的大寫字母和以結束它的數字,不計入其使用的字符類數(經測試,Zhufuy@1、zhuFuy1密碼設置不成功,密碼zhuFuy@成功)。
所以VMware ESXI 默認口令複雜度配置大緻是這個規則。
另外,不知道是不是我這裡環境的問題,如果配置口令最大使用期限,使用ssh首次登錄時,它會提示:
它居然強制給你用随機生成的密碼?上述hanoi&call5Also就是新生成的口令,可以使用該口令登錄系統。
2. 應具有登錄失敗處理功能,應配置并啟用結束會話、限制非法登錄次數和當登錄連接超時自動退出等相關措施
1)登錄失敗處理功能
在web界面查看:主機→管理→系統→高級設置→對應鍵值為:Security.AccountLockFailures 、Security.AccountUnlockTime
默認:相同賬戶登錄失敗次數達到5次後,鎖定該賬戶900秒。
登錄失敗次數達到設置阈值後,即使輸入正确口令也顯示密碼不正确
2)操作超時
控制台超時,默認情況下,可在此處查看配置:默認為900秒
也可在高級設置中配置:主機→管理→系統→高級設置→對應鍵值為:
UserVars.HostClientSessionTimeout
當自主設置過值後,已覆蓋會變為true
同時應用程序超時的 √ 會消失
3. 當進行遠程管理時,應采取必要措施防止鑒别信息在網絡傳輸過程中被竊聽
這個隻要觀察遠程管理web界面時,使用的是http還是https
默認采用https
4. 應采用口令、密碼技術、生物技術等兩種或兩種以上組合的鑒别技術對用戶進行身份鑒别,且其中一種鑒别技術至少應使用密碼技術來實現
默認為用戶名 口令的方式進行身份鑒别
該條現場核查是否采用雙因素認證
二、訪問控制
1. 應對登錄的用戶分配賬戶和權限
用戶在此添加:主機→管理→安全和用戶
如果用戶無權相關操作的時候訪問會被拒絕,這裡我沒有授予test賬戶登錄管理的權限。
在主機→權限中添加權限
然後可查看對應角色對應web界面的系統功能
針對這條條款,我們就需要去看他系統中有哪些賬戶,然後權限是怎樣分配的。
2. 應重命名或删除默認賬戶,修改默認賬戶的默認口令
主機→管理→安全和用戶
查看是否存在root、admin、administrator等易猜解賬戶。
3. 應及時删除或停用多餘的、過期的賬戶,避免共享賬戶的存在
該條同理, 在主機→管理→安全和用戶查看
詢問管理人員,确認每個賬戶用途,是否存在多餘、過期賬戶,确認是否存在多人共用同一賬戶情況存在,有無共享賬戶存在。
4. 應授予管理用戶所需的最小權限,實現管理用戶的權限分離
三權分立原則,實現管理用戶的權限分離
一般現場核查,确認是否存在管理員、操作員、審計員等類型賬戶,如果隻有一個超管賬戶那肯定不符合
5. 應由授權主體配置訪問控制策略,訪問控制策略規定主體對客體的訪問規則
授權主體一般為該系統管理員,然後在主機→管理→安全和用戶 中查看各用戶的權限分配情況,即為授權主體配置的主客體訪問控制規則,默認符合
6. 訪問控制的粒度應達到主體為用戶級或進程級,客體為文件、數據庫表級
主體為用戶,客體一般對應系統菜單權限功能
這裡個人給默認符合
7. 應對重要主體和客體設置安全标記,并控制主體對有安全标記信息資源的訪問
主要查看系統是否具有強制訪問控制機制,該條默認不符合。
三、安全審計
1. 應啟用安全審計功能,審計覆蓋到每個用戶,對重要的用戶行為和重要安全事件進行審計
1)審計服務
web界面:主機→管理→服務,對應服務名稱為:vmSyslogd,确認狀态欄是否為正在運行即可
選中該服務,可對其進行策略配置。(默認情況下,随主機啟動和停止,開機自啟日志服務)
2)審計内容
具體審計的内容可在:主機→監控→日志中查看
3)日志級别
web界面:主機→管理→系統→高級設置
涉及參數:Config.HostAgent.log.level
默認值為info級别
● 信息等級
同一個服務所産生的信息也是有差别的,有啟動時僅通知系統而已的一般信息(information),有出現還不至于影響到正常運行的警告信息(warn),還有系統硬件發生嚴重錯誤時,所産生的重大問題信息(error)。基本上,Linux内核的syslog将信息分為8個主要的等級,根據syslog.h定義,信息名稱與數值的對應如下:
8 none:不記錄
7 debug:用來debug(除錯)時産生的數據
6 info:僅是一些基本的信息說明而已
5 notice:雖然是正常信息,但比info還需要被注意到的一些内容
4 warning(warn):警示的信息,可能有問題,但是還不至于影響到某個daemon運行的信息
3 err(error):一些重大的錯誤信息,例如配置文件的某些設置值造成該服務無法啟動的信息說明,通常借由err的錯誤告知,應該可以了解到該服務無法啟動的問題
2 crit:比error還要嚴重的錯誤信息,這個crit是臨界點(critcal)的縮寫,這個錯誤已經很嚴重了
1 alert:警告,已經很有問題的等級,比crit還要嚴重
0 emerg(panic):疼痛等級,意指系統已經幾乎要宕機的狀态,很嚴重的錯誤等級。通常大概隻有硬件出問題,導緻整個内核無法順利運行,就會出現這樣的等級信息。
個人認為這裡至少要設置error及以上等級的策略才算符合,不然光記錄crit、alert、emerg等級的事件日志量之類的首先會少,而且不利于排錯。
2. 審計記錄應包括事件的日期和時間、用戶、事件類型、事件是否成功及其他與審計相關的信息
1)查看日志
vmware esxi日志包含事件的日期、時間、主客體标識及結果等基本信息,默認符合
選中相應日志類型,可查看對應日志信息
或右鍵在新窗口打開查看對應日志信息
2)查看系統當前時間
web界面查看:主機→管理→系統→時間和日期
确認當前時間是否與實際一緻,因為當前時鐘不對,無法保證日志的準确性
如果有時鐘服務器,确認NTP服務是否開啟,服務器IP地址是否配置正确。
3. 應對審計記錄進行保護,定期備份,避免受到未預期的删除、修改或覆蓋等
1)輸出到日志服務器
web界面查看:主機→管理→系統→高級設置
涉及參數:Syslog.global.logHost
我們可查看該參數來确認是否配置了收集該系統的日志服務器
輸出到日志服務器,也就滿足了對審計記錄進行保護這條要求。
同時需要确定留存的日志時間,是否達到了法律法規要求(至少六個月),該條在《網絡安全等級保護測評高風險判定指引》中有過說明。
這裡插播一個小事件:記得有一個用戶,他們做了等保,然後出了安全事件,某管理員通過虛拟機的管理平台将所有虛拟機删除,導緻數據丢失,系統無法正常運行。不過好像是還好有離線的數據備份,數據這塊還能恢複回來,但是這造成的危害也是很大的。當時網警看了下等保報告,說為啥這個虛拟機的管理平台沒有作為測評對象,如果權限這塊沒做好,提出問題就是客戶自身沒落實到位。所以說該虛拟機管理平台的權限管控還是有需要的,同時也需要對日志進行保護,到時候能溯源,所以虛拟機的管理平台對于等保中的要求也是需要進行一下落實的。
2)日志本地保存
如果日志沒有發送至日志服務器,或定期備份,僅本地存儲的話,就要去看它本地的輪替策略是否做過
①web界面:主機→管理→系統→高級設置
涉及參數:syslog.global.defaultrotate、syslog.global.defaultsize
syslog.global.defaultrotate代表保留的日志輪替個數,默認為8
syslog.global.defaultsize代表每個日志文件的輪替的大小值,單位為kb,默認為1024
這裡就需要确認該日志輪替規則是否能滿足日常的業務需求,能否避免審計記錄受到未預期的覆蓋,同時應用層面任何用戶無法删除、修改日志。另外根據高風險判例指引,确認日志留存時間是否達到6個月以上。
②如果用戶開啟了SSH管理,就能通過SSH登錄到底層操作系統,就要考慮操作系統底層的日志文件權限了。
日志服務配置文件:/etc/vmsyslog.conf,參數與web界面的一緻
存儲在底層系統中的日志文件權限,根據web界面的在/var/log目錄下查看:
發現都是做了鍊接的,查看源文件,權限均為600
所以默認情況下,權限基本是符合的,這裡就需要确認日志有無留存到6個月以上即可。
4. 應對審計進程進行保護,防止未經授權的中斷
這裡我通過web界面root賬戶(最高權限),無法關閉該服務
然後我登錄到操作系統底層,關閉對應的進程,發現他會自啟
所以默認情況下,審計進程無法被中斷,默認符合
四、入侵防範
1. 應遵循最小安裝的原則,僅安裝需要的組件和應用程序
web界面:主機→管理→軟件包
默認情況下該版本安裝了72項軟件包,大部分為驅動程序、管理插件、組件間的支持程序、支持庫等。
這裡有興趣的小夥伴可自行查詢,每種類型是幹嘛用的,一般感覺沒人會去動,如果會去動的人,也是懂VMware ESXI了,詢問下管理員裝了什麼即可,一般給默認符合。
2. 應關閉不需要的系統服務、默認共享和高危端口
1)服務
web界面:主機→管理→服務,查看當前運行的服務
也可在系統底層查看chkconfig --list |grep on
這裡一般隻看web界面服務的狀态,确認運行的服務是否有些不為必要。
2)端口
這邊web界面無法直接查看端口情況,這塊我們可以通過工具進行端口探測,或者登錄到底層操作系統查看
使用命令:
esxcli network ip connection list
這裡是有開啟防火牆的,很多端口是無法從外部進行訪問的,一般默認開放的就22、80、443等。
部分端口說明:
80 web通訊端口
443 vSphere Client、vCenter Server、vSphere Web Access Client等相關組件通信端口
22 SSH服務
3. 應通過設定終端接入方式或網絡地址範圍對通過網絡進行管理的管理終端進行限制
① web界面:網絡→防火牆規則,可查看相應規則
針對于web管理方式,涉及名稱:vSphere Web Client
我們可以點擊編輯設置,勾選僅允許從以下網絡連接,并輸入對應的ip地址
經測試,除31段的地址,其餘地址将無法訪問該web界面。
② SSH管理
同樣也在網絡→防火牆規則,可查看相應規則
涉及名稱SSH服務器
配置方法與上述相同,經測試僅針對SSH方式管理,web方式訪問不受限制。
4. 應提供數據有效性檢驗功能,保證通過人機接口輸入或通過通信接口輸入的内容符合系統設定要求
這條實際操作的話一般就要進行滲透測試了,但一般等保公司不會這麼去做,所以最簡單的方法就是去網上找一下對應vmware的版本是否有數據校驗性的漏洞存在,也有不适用的說法,該條款在應用層面進行核查。
5. 應能發現可能存在的已知漏洞,并在經過充分測試評估後,及時修補漏洞
同理,該條也是去尋找已爆出的漏洞,再确認該漏洞是否有進行修補。這個我感覺有點難驗證,畢竟大家基本都是安裝好了就不會去動它了。一般詢問管理員,沒有發現存在已知漏洞的手段等,默認不符合。
6. 應能夠檢測到對重要節點進行入侵的行為,并在發生嚴重入侵事件時提供報警
該條款在操作系統層面核查,個人認為不适用,大多情況下都不會開SSH管理,而且這個為成熟的商業軟件,你說去底層的操作系統上安裝,感覺有點不切實際,主要操作我們都是通過web界面形式來操作的。
五、惡意代碼防範
1. 應采用免受惡意代碼攻擊的技術措施或主動免疫可信驗證機制及時識别入侵和病毒行為,并将其有效阻斷
同理該條款在操作系統層面核查,該項不适用。
六、可信驗證
1. 可基于可信根對計算設備的系統引導程序、系統程序、重要配置參數和應用程序等進行可信驗證,并在應用程序的關鍵執行環節進行動态可信驗證,在檢測到其可信性受到破壞後進行報警,并将驗證結果形成審計記錄送至安全管理中心
默認不符合。
七、數據完整性
1. 應采用校驗技術或密碼技術保證重要數據在傳輸過程中的完整性,包括但不限于鑒别數據、重要業務數據、重要審計數據、重要配置數據、重要視頻數據和重要個人信息等
涉及的數據:鑒别數據、重要審計數據、重要配置數據
鑒别數據、重要配置數據,傳輸過程中的完整性一般靠傳輸協議保證,針對vmware esxi就看他是否使用https協議進行數據傳輸。
對于重要審計數據,如果采用的是syslog協議是無完整性保護。
2. 應采用校驗技術或密碼技術保證重要數據在存儲過程中的完整性,包括但不限于鑒别數據、重要業務數據、重要審計數據、重要配置數據、重要視頻數據和重要個人信息等
涉及的數據:鑒别數據、重要審計數據、重要配置數據
詢問管理人員是有對這些數據進行了存儲完整性保護,默認不符合。
八、數據保密性
1. 應采用密碼技術保證重要數據在傳輸過程中的保密性,包括但不限于鑒别數據、重要業務數據和重要個人信息等
涉及的數據:鑒别數據
傳輸過程中還是查看是否使用https協議進行數據傳輸。
2. 應采用密碼技術保證重要數據在存儲過程中的保密性,包括但不限于鑒别數據、重要業務數據和重要個人信息等
鑒别數據默認存儲在/etc/shadow文件中,該版本采用SHA-512算法存儲
九、數據備份恢複
1. 應提供重要數據的本地數據備份與恢複功能
個人認為該設備為計算資源提供層,無需備份。
要備份的虛拟機資源已在操作系統相關測評對象中進行了說明,我們這裡是以一個對象作為整個測評内容的,有些是将數據與系統分開測評,所以寫法上可能會有些出入。
2. 應提供異地實時備份功能,利用通信網絡将重要數據實時備份至備份場地
該設備為計算資源提供層,無需備份
3. 應提供重要數據處理系統的熱冗餘,保證系統的高可用性
這邊就要詢問管理人員vmware底層是否采用集群、熱備方式部署,保證計算資源的高可用。
總結:
這個vmware零零散散也扯了這麼多,不過大多公司好像沒有将他列為必須的測評項,目前也沒有什麼合适的作業指導書,文章僅代表個人觀點,如有不正确的歡迎在評論區讨論、指正。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!