作者:
伯紀,阿裡雲基礎軟體部作業系統安全工程師,從事Alibaba Cloud Linux 的等保加強、CIS加強以及機密計算等相關工作。
曉賈,阿裡雲基礎軟體部作業系統産品專家,從事Alibaba Cloud Linux 的産品化相關工作。
背景資訊
CIS全名Center for Internet Security,是一個美國的第三方安全組織,他們緻力于采用線上社群的模式與大公司、政府機構、學術機構一起打造優秀的安全實踐解決方案(各種benchmarks)。目前各個公司釋出的Linux作業系統大多都已經提供CIS benchmark,包括
Alibaba Cloud Linux 2,CentOS、Ubuntu等,詳情可以參見
CIS網站。目前釋出CIS benchmark已經成為很多阿裡雲客戶對于OS安全的重要評判依據之一。
Alibaba Cloud Linux 2 (原Aliyun Linux 2)不僅是阿裡雲官方作業系統鏡像,也是ACK的首選預設系統鏡像。Alibaba Cloud Linux 2在2019年8月16日正式通過了CIS組織的全部認證流程并釋出對應的
CIS Aliyun Linux 2 Benchmark version 1.0.0。
CIS Aliyun Linux 2 Benchmark version 1.0.0加強項分類說明
CIS Aliyun Linux 2 Benchmark version 1.0.0是最新的CIS Aliyun Linux 2 Benchmark。您可以對其進行下載下傳,具體操作,請參見
下載下傳CIS Aliyun Linux 2 Benchmark version 1.0.0進行下載下傳。它一共包含204項,按照每一項所處的安全level分為Level 1(168項)和Level 2(36項)。其中Level 1與Level 2的主要差別如下:
- Level 1是說明此加強條目是基礎項加強且基本不會帶來較大的性能影響
- Level 2說明此條目适用于安全性更高的場景,且可能會對系統帶來性能開銷。
此外CIS Aliyun Linux 2 Benchmark從計分(Scoring Information) 的次元分為了Scored和Not Scored兩類,其中
- Scored:意味着此條目會納入計分項,如果驗證系統是安全的,則加分,如果不安全,則減分。
- Not Scored:意味着無論是否安全,都不納入計分項,也就是說不增減分。
綜上,CIS Aliyun Linux 2一共204項,可以分為四類:
- Level 1 Sorced(共145項)
- Level 1 Not Scored(共21項)
- Level 2 Scored(共33項)
- Level 2 Not Scored(共3項)
因為Level 2可能會影響性能且Not Scored項不納入計分,是以對節點的Alibaba Cloud Linux 2作業系統,ACK叢集隻針做Level 1 Sorced項的安全加強。
ACK使用Alibaba Cloud Linux 2 CIS加強版
在建立ACK叢集時,您可以選擇啟用CIS加強,這樣叢集在建立時會自動配置對應的CIS加強項,使得ACK叢集所有節點的Alibaba Cloud Linux 2鏡像滿足CIS Aliyun Linux 2 Benchmark version 1.0.0中大部分Level 1 Scored項的加強要求。關于具體滿足的加強項,請參見
ACK CIS加強叢集滿足的CIS Level 1 Scored加強項清單圖1. CIS加強配置圖

- 注意:為了滿足CIS Level 1的加強要求,ACK會在CIS加強的Alibaba Cloud Linux 2作業系統中預設建立ack_cis這個普通使用者。
經過對CIS Aliyun Linux 2 Benchmark version 1.0.0所有Level 1 Scored(共145項)進行分析和測試,我們對除下表所列的17項以外的128項(88%以上)進行了安全加強。
表1. ACK叢集中未加強的CIS Level 1 Scored項清單
加強項 | 未加強的原因 |
---|---|
1.1.2 Ensure /tmp is configured(Scored) | 涉及到分區的修改 |
1.1.18 Ensure sticky bit is set on all world-writable directories (Scored) | 影響ACK管控邏輯 |
1.7.1.1 Ensure message of the day is configured properly(Scored) | 需要删除Alibaba Cloud Linux 2系統MOTD中的使用指南的連結 |
3.1.1 Ensure IP forwarding is disabled (Scored) | 對ACK的terway的元件有影響 |
3.5.1.1 Ensure default deny firewall policy (Scored) | 需要使用者設定自己的防火牆政策 |
3.5.1.2 Ensure loopback traffic is configured (Scored) | 需要使用者設定自己的loopback規則 |
3.5.1.4 Ensure firewall rules exist for all open ports (Scored) | 需要使用者對開放的端口設定防火牆政策 |
3.5.2.1 Ensure IPv6 default deny firewall policy (Scored) | 需要使用者設定自己的IPv6防火牆政策 |
3.5.2.2 Ensure IPv6 loopback traffic is configured (Scored) | 需要使用者設定自己的 IPv6 loopback規則 |
4.2.1.4 Ensure rsyslog is configured to send logs to a remote log host (Scored) | 需要使用者配置rsyslog來設定自己的遠端log host |
4.2.3 Ensure permissions on all logfiles are configured (Scored) | 改動檔案太多,存在潛在風險 |
5.2.10 Ensure SSH root login is disabled (Scored) | 需要使用者自行建立其它登入賬号或者選擇VNC等非ssh登入方式,然後才能禁用root登入 |
5.2.18 Ensure SSH access is limited (Scored) | 需要使用者配置允許登入的使用者群組 |
5.2.3 Ensure permissions on SSH private host key files are configured(Scored) | 掃描腳本有誤,ssh_keys的Gid被寫死未998, 但實際系統不一定是998(可能是996等) |
5.3.2 Ensure lockout for failed password attempts is configured (Scored) | benchmark給出的修複建議跟Alibaba Cloud Linux 2系統對應的配置檔案差異較大,建議謹慎修改 |
6.1.11 Ensure no unowned files or directories exist (Scored) | |
6.1.12 Ensure no ungrouped files or directories exist (Scored) |
如果您需要修複ACK叢集中這些沒修複的CIS Level 1 Scored項,您可以參考CIS Aliyun Linux 2 Benchmark version 1.0.0手冊,每一項都有以下内容,您可根據該項的Remediation部分進行修複,然後按照Audit檢查您的修複是否生效。
- Profile Applicability:該項屬于Level 1還是Level 2
- Decription:加強條目的簡單介紹。
- Rationale:用于描述條目的細節和背景,告訴讀者這麼加強的意義和原因。
- Audit:關鍵項,用于判斷檢測系統是否達标的腳本。根據此腳本的運作傳回值來判斷是否需要加強。
- Remediation:關鍵項,如果Audit環節判斷系統需要進行加強,那此環節就是執行腳本進行安全處理。
- Impact:影響,主要來描述如果不進行正确配置可能會導緻的影響。
- References:參考文獻。
- CIS Controls:此條目對應的CIS control文檔的講解,需要注冊後才能下載下傳。
CIS Aliyun Linux 2 Benchmark version 1.0.0下載下傳步驟
- 通路 CIS Benchmark官方首頁
- 按圖中所示分類同時標明
和Operating Systems
Linux
- 找到Aliyun Linux CIS Benchmark,并點選
, 如下圖所示Download CIS Benchmark
- 在CIS下載下傳界面填寫個人的基本資訊,然後點選
Get Free Benchmarks Now
- 過幾分鐘後,你填寫的郵箱會收到CIS的郵件,如下圖,點選
Access PDFs
- 進入下載下傳界面找到最近通路的
并點選CIS Aliyun Linux 2 Benchmark v1.0.0
即可Download PDF
使用CIS-CAT掃描工具驗證ACK叢集的CIS加強效果
如果您想驗證ACK叢集的CIS加強效果,可以使用CIS官網提供的
CIS-CAT工具進行掃描驗證。CIS-CAT是一個安全配置評估軟體工具,即掃描工具,它能夠詳細地提供目标系統的評估結果。通過運作該工具,可以得到目标系統在指定CIS Benchmark profile的合規分數,同時還會針對不合規的配置給出修複步驟。
CIS-CAT 分為 Lite和Pro版,
Lite提供功能有限,且僅支援的系統包括Windows 10, Ubuntu 18.04和Google Chrome等,是以不支援Alibaba Cloud Linux 2作業系統,是以無法掃描ACK叢集的CIS加強效果。
CIS-CAT Pro具有v4和v3兩個版本系列。以v4為例,本文将闡述如何使用CIS-CAT Pro進行掃描驗證ACK叢集的CIS加強效果。
- 注冊成為 CIS SecureSuite會員 後,下載下傳CIS-CAT Pro工具
- 登入到ACK叢集的某個Alibaba Cloud Linux 2作業系統的節點
- 安裝CIS-CAT需要的java環境
yum -y install java-1.8.0-openjdk java-1.8.0-openjdk-devel
cat > /etc/profile.d/java8.sh <<EOF
export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which javac)))))
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
EOF
source /etc/profile.d/java8.sh
- 使用CIS-CAT Pro工具(以
為例)進行掃描, 其中Assessor-CLI-v4.0.23.zip
-
: 用來選擇Benchmark的類型(作業系統和對應的版本類型)。-b
-
:用來選擇掃描的Level,因ACK隻對CIS Level 1 scored進行掃描,是以掃描時選擇Level 1。-p
unzip Assessor-CLI-v4.0.23.zip
cd Assessor-CLI
chmod +x ./Assessor-CLI.sh
./Assessor-CLI.sh -b ./benchmarks/CIS_Aliyun_Linux_2_Benchmark_v1.0.0-xccdf.xml -p "Level 1" -html
- 檢視掃描結果,如下圖所示,根據 CIS-CAT Pro Assessor v4中User Guide Assessor文檔的Report部分 的使用指南, 具體解釋如下:
-
: 所選擇的benchmark的加強項總數,Total # of Results
總共204項。CIS_Aliyun_Linux_2_Benchmark_v1.0.0
-
: 所選Level 的Scored項總數,Level 1一共145項。Total Scored Results
-
: 所選Level的 Scored項中目前系統通過的總數,CIS加強的ACK叢集每個節點通過的Level 1 Scored項為128項。Total Pass
-
: 所選Level的 Scored項中目前系統未通過的總數,CIS加強的ACK叢集每個節點未通過的Level 1 Scored項為17項。Total Fail
-
: 所選Level的Scored項中掃描腳本執行出錯的項,這裡CIS-CAT Pro都正确傳回,是以結果為0。Total Error
-
: 所選Level的Scored項中,CIS-CAT無法判斷是否滿足安全加強标準的項,這裡結果為0。Total Unknown
-
: 所選的benchmark中與目前作業系統不比對的項。在Alibaba Cloud Linux 2上執行CIS_Aliyun_Linux_2_Benchmark_v1.0.0的CIS-CAT Pro掃描不存在不比對的項。Total Not Applicable
-
: 與Total Not Checked
一樣同屬于Not Scored。Total Informational
-
: 所選benchmark中未檢查的加強項。CIS-CAT Pro對Level 1進行檢查,是以這裡未檢查的加強項為所有的Level 2(共36項)。Total Not Selected
-
: 需要手動評估是否滿足,在所選Level中屬于Not Scored。Total Informational
ACK CIS加強的意義
目前越來越多的企業開始全面擁抱雲原生,并充分利用雲原生基礎設施。雲原生技術已經無處不在, 作為雲原生服務的提供者,阿裡雲将會持續、高速發展雲原生技術。而安全是雲原生不可或缺的重要組成部分,Alibaba Cloud Linux 2 作為阿裡雲官方作業系統鏡像和ACK的首選預設鏡像, 提高Alibaba Cloud Linux 2的安全水位對于雲原生非常重要。為此,阿裡雲衆多專家投入CIS benckmarks的分析和研究,經過大量測試,制定了
适合ACK叢集的CIS Level 1 Scored加強項清單。ACK支援對基于Alibaba Cloud Linux 2作業系統的叢集進行CIS加強具有以下意義:
- 為ACK客戶提供CIS加強的方案,來滿足客戶對于阿裡雲更加簡單、快捷、穩定、安全的使用的需求。當使用者建立ACK叢集時,如果選擇Alibaba Cloud Linux 2, 就可以選擇啟動配置CIS加強,使叢集在建立時自動執行對應的CIS加強項,直接滿足大部分CIS Level Scored加強項的要求。
- 托管版ACK叢集 專有版ACK叢集 都支援CIS加強,無論您是托管版的使用者還是專有版的使用者,都能通過選擇CIS加強選項來提供ACK叢集的安全水位(CIS Level 1 Scored計分項通過88%以上)。
- 阿裡雲在雲産品開發和傳遞的過程中将安全作為重要組成部分,将合規融入到産品的“血液”中,把安全植入産品的“骨髓”裡,能夠幫助有CIS加強訴求的客戶更加快速便捷的上雲。