Amazon Inspector Classic 的安全最佳實務 - Amazon Inspector Classic

這是 Amazon Inspector 經典的用戶指南。如需有關新 Amazon Inspector 查器的資訊,請參閱 Amazon Inspector 使用者指南。若要存取 Amazon Inspector 經典主控台,請在 https://console.aws.amazon.com/inspector/ 開啟 Amazon Inspector 主控台,然後在導覽窗格中選擇 Amazon Inspector 經典版

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon Inspector Classic 的安全最佳實務

使用 Amazon Inspector Classic 規則協助判斷您的系統是否已安全的設定。

重要

目前,您可以將以 Linux 或 Windows 作業系統為基礎的 EC2 執行個體包含在您的評估目標中。

在評估執行期間,本節中所述的規則會產生調查結果只要以執行 Linux 作業系統的 EC2 執行個體的問題。這些規則不會產生在 Windows 作業系統上執行的 EC2 執行個體的問題清單。

如需詳細資訊,請參閱 Amazon Inspector 受支援作業系統的傳統規則套件

停用 SSH 根登入

此規則有助於判斷 SSH 協助程式是否已設定允許做為來登入您的 EC2 執行個體。

嚴重性

中性

問題清單

您評估目標中有一個 EC2 執行個體設定為允許使用者透過 SSH 的根登入資料來登入。這會增加暴力破解攻擊成功的可能性。

解決方案

我們建議您設定您的 EC2 執行個體,以防止根帳戶透過 SSH 登入。反之,以非根使用者登入,且必要時使用 sudo 以提升權限。若要停用 SSH 根帳戶登入,請在 /etc/ssh/sshd_config 檔案中將 PermitRootLogin 設為 no,然後重新啟動 sshd

僅支援 SSH 版本 2

此規則有助於判斷您的 EC2 執行個體設定是否支援 SSH 通訊協定版本 1。

嚴重性

中性

問題清單

您評估目標中的 EC2 執行個體設定為支援 SSH-1,其中包含將大幅降低其安全性的固有設計缺陷。

解決方案

我們建議您將評估目標中的 EC2 執行個體設定為僅支援 SSH-2 和更新版本。若是 OpenSSH,您可在 /etc/ssh/sshd_config 檔案中設定 Protocol 2 來達到目標。如需詳細資訊,請參閱 man sshd_config

停用 SSH 密碼驗證

此規則有助於判斷您的 EC2 執行個體設定為支援透過 SSH 進行密碼驗證。

嚴重性

中性

問題清單

您評估目標中的 EC2 執行個體設定為支援透過 SSH 進行密碼驗證。密碼驗證易受暴力破解攻擊,應盡可能停用以金鑰為基礎的身份驗證。

解決方案

我們建議您停用在 EC2 執行個體上透過 SSH 進行密碼驗證,並啟用支援以金鑰為基礎的身份驗證。這會大幅減少暴力破解攻擊成功的可能性。如需詳細資訊,請造訪 https://aws.amazon.com/articles/1233/。如果已支援密碼驗證,請務必限制存取 SSH 伺服器的為信任的 IP 位址。

設定密碼最長期限

此規則有助於判斷您的 EC2 執行個體密碼設定最大期限。

嚴重性

中性

問題清單

您評估目標中的 EC2 執行個體密碼最大期限尚未設定。

解決方案

如果您使用的是密碼,我們建議您為評估目標中所有 EC2 執行個體的密碼設定最大期限。這需要使用者定期變更密碼,以降低密碼臆測攻擊成功的機率。若要為現有使用者修正此問題,請使用 chage 命令。若要為所有未來使用者設定密碼最大期限,請編輯 /etc/login.defs 檔案中的 PASS_MAX_DAYS 欄位。

設定密碼長度下限

此規則有助於判斷您的 EC2 執行個體密碼設定長度下限。

嚴重性

中性

問題清單

您評估目標中的 EC2 執行個體密碼長度下限尚未設定。

解決方案

如果您使用的是密碼,我們建議您為評估目標中所有 EC2 執行個體的密碼設定長度下限。強制執行最低密碼長度可減少密碼臆測攻擊成功的風險。您可以使用下列選項來執行這項作業。pwquality.conf文件: minlen。 如需詳細資訊,請參閲。https://linux.die.net/man/5/pwquality.conf

如果pwquality.conf在您的執行個體上沒有可用的,則可設定minlen選項使用pam_cracklib.so模組。如需詳細資訊,請參閱 man pam_cracklib

所以此minlen選項應設為 14 或更大。

設定密碼複雜性

此規則有助於判斷您的 EC2 執行個體上是否已設定密碼複雜性機制。

嚴重性

中性

問題清單

在您評估目標中的 EC2 執行個體上未設定密碼複雜性機制或限制。這將讓使用者能夠設定簡單的密碼,從而讓未經授權的使用者更有機會取得存取權並濫用帳戶。

解決方案

如果您使用的是密碼,我們建議您將評估目標中所有的 EC2 執行個體設定為密碼要求一定程度的密碼複雜性。方法是,在 pwquality.conf 檔案中使用下列選項:lcreditucreditdcreditocredit。如需詳細資訊,請參閱 https://linux.die.net/man/5/pwquality.conf

如果您的執行個體上沒有可用的 pwquality.conf,則可使用 pam_cracklib.so 模組來設定 lcreditucreditdcreditocredit 選項。如需詳細資訊,請參閱 man pam_cracklib

其中每個選項的預期值都小於或等於 -1,如下所示:

lcredit <= -1, ucredit <= -1, dcredit<= -1, ocredit <= -1

此外,remember 選項必須設定為 12 或更大。如需詳細資訊,請參閱 man pam_unix

啟用 ASLR

此規則有助於判斷您評估目標中 EC2 執行個體的作業系統上是否已啟用位址空間隨機化配置 (ASLR)。

嚴重性

中性

問題清單

您評估目標中的 EC2 執行個體尚未啟用 ASLR。

解決方案

為了改善評估目標安全性,我們建議您執行以在目標中所有 EC2 執行個體的作業系統上啟用 ASLR。echo 2 | sudo tee /proc/sys/kernel/randomize_va_space

啟用 DEP

此規則有助於判斷您評估目標中 EC2 執行個體的作業系統上是否已啟用資料執行防止 (DEP)。

注意

使用 ARM 處理器的 EC2 實例不支持此規則。

嚴重性

中性

問題清單

您評估目標中的 EC2 執行個體尚未啟用 DEP。

解決方案

我們建議您在評估目標中所有 EC2 執行個體的作業系統上啟用 DEP。使用緩衝區溢位技巧啟用 DEP 以保護您的執行個體免受安全威脅。

設定系統目錄許可

此規則會在包含二進位檔和系統組態資訊的系統目錄上檢查許可,確認只有根使用者 (使用根帳戶登入資料登入的使用者) 才具有這些目錄的寫入許可。

嚴重性

問題清單

在您評估目標的一個 EC2 執行個體包含非根使用者可寫入的系統目錄。

解決方案

為了改善評估目標安全性並防止惡意的本機使用者權限提升,請設定目標中所有 EC2 執行個體的系統目錄,僅能由使用根帳户證書登入資料的使用者寫入。