Aqua發佈了一篇當今威脅您的 AWS 環境的五種錯誤配置
AWS 是一個強大的雲端平台,可以讓企業建立和部署各種應用程式。然而,AWS 也有一些安全風險,如果不正確地配置,可能會導致資料洩露、服務中斷或其他攻擊。本報告將介紹 AWS 環境中常見的五種安全錯誤配置,並提供一些防範方法。
1. 使用預設或弱密碼
使用預設或弱密碼是一個常見的安全錯誤配置,可能會讓攻擊者輕易地破解或竊取帳號資訊。AWS 提供了多種服務,如 EC2、S3、RDS 等,每個服務都需要設定密碼或金鑰來存取。如果使用預設或弱密碼,可能會讓攻擊者利用暴力破解、字典攻擊或社交工程等手法,來竊取敏感資料或控制資源。
為了防止這種安全錯誤配置,建議採取以下幾個措施:
- 使用強密碼,至少包含八個字元,並且包含大小寫字母、數字和特殊符號。
- 定期更換密碼,並避免重複使用相同或相似的密碼。
- 使用多因素驗證(MFA),在輸入密碼之外,還需要輸入一個由手機或其他裝置產生的隨機驗證碼。
- 使用 AWS Secrets Manager 或其他工具來管理和旋轉密碼和金鑰,避免將它們儲存在程式碼或配置檔中。
2. 過度授權 IAM 角色和策略
過度授權 IAM 角色和策略是另一個常見的安全錯誤配置,可能會讓攻擊者獲得不必要的權限,從而執行惡意操作。AWS 的 Identity and Access Management (IAM) 服務可以讓管理員設定不同的角色和策略,來控制使用者和服務對 AWS 資源的存取權限。如果角色和策略設定得過於寬鬆或不明確,可能會讓攻擊者利用權限提升、跨帳號存取或其他技巧,來竊取資料或破壞系統。
為了防止這種安全錯誤配置,建議採取以下幾個措施:
- 遵循最小權限原則(Principle of Least Privilege),只給予使用者和服務所需的最小權限,並定期審核和更新角色和策略。
- 使用 IAM 條件子句(Condition Elements),來限制存取權限的範圍和條件,例如 IP 位址、時間、區域等。
- 使用 IAM 角色委派(IAM Role Delegation),來將角色委派給受信任的實體,例如 AWS 服務、其他 AWS 帳號或外部身份提供者,避免直接將金鑰或密碼傳遞給第三方。
- 使用 AWS Config 或其他工具來監控和記錄 IAM 的配置變化,並及時發現和修復任何不符合預期的配置。
3. 開放不必要的網路端口
開放不必要的網路端口是第三個常見的安全錯誤配置,可能會讓攻擊者利用端口掃描或其他工具,來發現和利用系統的弱點。AWS 提供了多種服務,如 VPC、EC2、ELB 等,每個服務都需要設定網路端口來允許或拒絕流量的進出。如果端口設定得過於開放或不清楚,可能會讓攻擊者利用端口來執行遠端程式碼、中間人攻擊、分散式阻斷服務攻擊(DDoS)等。
為了防止這種安全錯誤配置,建議採取以下幾個措施:
- 使用安全群組(Security Groups)和網路 ACL(Network ACLs),來控制 VPC 中的入站和出站流量,並只開放必要的端口,例如 80(HTTP)、443(HTTPS)、22(SSH)等。
- 使用私有子網(Private Subnets)和公有子網(Public Subnets),來隔離不同的資源,並只將需要對外提供服務的資源放在公有子網中,例如負載平衡器、防火牆等。
- 使用 VPN 或其他加密技術,來保護敏感資料的傳輸,並避免使用明文協定,例如 HTTP、FTP、Telnet 等。
- 使用 AWS Inspector 或其他工具來掃描和檢測系統中的任何開放端口或漏洞,並及時修補或關閉它們。
4. 暴露 S3 桶或其他儲存服務
暴露 S3 桶或其他儲存服務是第四個常見的安全錯誤配置,可能會讓攻擊者存取或竊取儲存在雲端的敏感資料。AWS 提供了多種儲存服務,如 S3、EBS、EFS 等,每個服務都需要設定存取控制清單(ACLs)、桶策略(Bucket Policies)、加密等。如果儲存服務設定得過於寬鬆或不正確,可能會讓攻擊者利用 URL 或 API 來列舉或下載儲存桶中的資料。
為了防止這種安全錯誤配置,建議採取以下幾個措施:
- 使用 S3 存取點(S3 Access Points),來管理對 S3 桶中資料的存取權限,並只允許受信任的實體存取。
- 使用 S3 區塊公共存取(S3 Block Public Access),來阻止對 S3 桶或物件的任何公共存取,並避免使用公共讀取或寫入權限。
- 使用 S3 加密(S3 Encryption),來保護 S3 桶中資料。
好的,我會繼續寫完報告。以下是報告的後續部分:
5. 未更新或修補系統和應用程式
未更新或修補系統和應用程式是第五個常見的安全錯誤配置,可能會讓攻擊者利用已知的漏洞或缺陷,來入侵或破壞系統。AWS 提供了多種服務,如 EC2、Lambda、ECS 等,每個服務都需要定期更新或修補,以保持最新的安全性和功能。如果系統和應用程式設定得不及時或不完整,可能會讓攻擊者利用舊版的軟體或套件,來執行惡意程式碼、竊取資料或發動攻擊。
為了防止這種安全錯誤配置,建議採取以下幾個措施:
- 使用 AWS Systems Manager 或其他工具,來自動化和管理系統和應用程式的更新或修補,並避免使用過時或不受支援的軟體或套件。
- 使用 AWS Shield 或其他工具,來保護系統和應用程式免受 DDoS 攻擊,並減少停機或服務降級的風險。
- 使用 AWS WAF 或其他工具,來防止常見的網路攻擊,如 SQL 注入、跨站腳本(XSS)、跨站請求偽造(CSRF)等,並保護網站和 API 的安全。
- 使用 AWS Security Hub 或其他工具,來整合和分析系統和應用程式的安全資訊,並及時發現和回應任何安全事件或威脅。
AWS 環境中的安全錯誤配置是一個嚴重且普遍的問題,可能會導致嚴重的後果。為了避免這種問題,建議採取以下幾個步驟:
- 設定強密碼和多因素驗證,並使用密碼管理工具。
- 遵循最小權限原則,並使用 IAM 角色委派和條件子句。
- 只開放必要的網路端口,並使用安全群組和網路 ACL。
- 阻止 S3 桶或其他儲存服務的公共存取,並使用加密和存取點。
- 定期更新或修補系統和應用程式,並使用防火牆和監控工具。
詳情請看:
Five Misconfigurations Threatening Your AWS Environment Today