檢視次數:
自動修復功能讓客戶能夠在其基礎設施上運行自我修復的 Lambda 函數,從而能夠即時修復安全和治理失敗。請參閱我們的 GitHub 頁面以獲取我們支援的自動修復 Lambda 函數列表。
如需有關在大型企業中實施自動修復以及撰寫自訂 Lambdas 以填補安全漏洞的詳細資訊,請參閱:如何使用 Cloud Risk Management 平台新增安全性和合規性自動修復
注意
注意
Example Scenario:使用者透過 S3 存取控制清單 (ACLs) 將 S3 儲存桶設為公開可讀。

自動修復如何運作 上層主題

步驟

  1. Cloud Risk Management 將此風險識別為規則失敗
  2. Cloud Risk Management 發送通知到指定的 SNS 頻道。
  3. SNS 主題觸發 Orchestrator Lambda Function,然後呼叫 S3 bucket 自動修復功能。
  4. AutoRemediateS3-001 函數更新 S3 儲存桶的 ACL,並解決規則失敗問題,從而消除安全漏洞。

後續步驟

auto-remediate-y5t5mt=985a7f48-3a9e-4c13-847a-16665b7e885b.png

設定自動修復 上層主題

步驟

  1. 請遵循官方無伺服器文件上的指示,安裝並提供您AWS帳戶的存取權給無伺服器框架。建立自動修復存儲庫的工作副本,並遵循以下指示:
  2. 建立 Auto-remediation 儲存庫的工作副本:
    1. 在 Linux / Mac OS X / Windows 上安裝 Git,如果您的系統中尚未安裝
    2. 執行以下 Git 命令:git clone https://github.com/cloudconformity/auto-remediate.git
    step-2-set-up-auto-remediate-gszqhf=8dcfead7-491a-47c6-9ab7-29f80fe14a4c.png
    3. 將目錄更改為自動修復資料夾中的 functions:cd auto-remediate/functions
    4. 使用命令:nano config.js來配置存取規則
    step-4-set-up-auto-remediate-sxxhts=4984f86d-5d6d-4459-979c-18f09138ead2.png
    {.zoom}
    5. 「config.js」 檔案中的所有規則均設定為
    'enabled': false 預設為關閉以防止配置錯誤。您需要手動啟動規則,將值更改為
    'enabled': true
    step-5-set-up-auto-remediate-cgtgyl=d1164a6c-e6dc-4f0b-b1f1-68b25bddd478.png
    6. 完成更改後:
    • 執行鍵盤操作「Ctrl-O」以寫出變更
    • 「輸入」 以確認更改
    • 透過鍵盤操作「Ctrl-X.」退出命令行編輯器
    7. 執行下列命令:
    -  Move one level up to the "auto-remediate" folder using the command:
     `cd ..`
    -  Make node:modules folder available to AWS using the command:
    `npm install`  
    
    ![](img/rules/step-7=25759750-007c-4e3c-9a01-e896e23815a1-set-up-auto-remediate-gcsmxd=3df4e1ab-863d-4cf9-b019-43fb485f8103.png){.zoom}
    
    8. 執行以下命令以部署自動修復:
    serverless deploy --region [您 AWS 帳戶的區域]
    範例
    serverless deploy --region us-east-2
    注意
    注意
    !!! 注意 "" 為了自我修復功能,我們建議在與您AWS帳戶相同的區域部署自動修復。檢查失敗的偵測與部署區域無關,因為它是由RTMCloud Risk Management Bot執行的。
    step-8-set-up-auto-remediate-y2seyb=cffae1c6-588f-43e4-a758-d01603986b62.png
    9. 部署成功時:
    - An SNS topic named **CloudConformity** is automatically created in your AWS account.  
    
    step-9a-set-up-auto-remediate-vennsp=a5d8e742-1d6c-45f1-85cd-93426f9cf25a.png
    • 名為 「autoremediate-v1-AutoRemediateOrchestrator」 的 Lambda Function 已自動訂閱至 「CloudConformity」 SNS 主題。
    step-9b-set-up-auto-remediate-faliqv=2ec7630e-2fad-4187-b16d-4dc0c69b51e1.png
    10. 在Cloud Risk Management平台上整合Amazon SNS 通訊頻道,並選擇您希望啟用的通知:
    - [Automatic notifications](toggle-automatic-notifications.xml) - failed checks are automatically resolved when a message is published to your SNS channel.
    - [Manual notifications](toggle-manual-notifications.xml) - you can view the **Send via SNS** button on Check failures. Click on the button to resolve the failure.
    

後續步驟

在部署自動修復後啟用或關閉規則 上層主題

步驟

  1. 在您的 AWS Console 中,移至:「服務」「Compute」「Lambda」「Functions」
  2. 搜尋並選擇:「auto-remediate-v1-AutoRemediateOrchestrator」
    step-2-enable-rules-d3pv6x=63a048ba-b6f4-4472-9a89-1075cb8e6090.png
  3. 更改設定:
    前往 「組態」「功能碼」「環境」「auto-remediate-v1」「functions.」
  4. 選擇「config.js」並修改您的自動修復規則配置。
    step-4-enable-rules-ij5zyy=0eb1ba5f-f4b2-4814-83c7-386d16f0efdb.png

測試自動修復部署 上層主題

步驟

  1. 驗證您在配置Amazon SNS 通道時選擇的通信觸發器是:
    要麼設置為默認發送所有檢查的通知,或
    您可以在「規則」下特別選擇「EC2-002」
  2. 請按照啟用規則的指示,驗證「AutoRemediateEC2-002」規則是否已啟動。
    step-2-test-deployment-f4xygj=8d6a2ded-6c72-440c-9ea1-617a2b6d9673.png
  3. 在您的 AWS Console 中,移至:「服務」「Compute」「EC2 Security Groups」
    step-3-test-deployment-bydcts=73d91ddc-c13d-4a28-84e3-7c3c295097ab.png
  4. 點擊 「Create Security Group」
    1. 輸入名稱、描述,並選擇 VPC
    2. 「Security group rules」「Inbound,」下方,點擊「新增規則」
      • 選擇類型:「SSH」
      • Source: 「Anywhere」
      • 點擊 「建立」 !!! 注意 ""

使用手動通知進行解決 上層主題

如果您僅已啟動手動通知,請按照以下步驟解決失敗問題:

步驟

  1. 前往所有檢查報告並按以下方式過濾規則:
    • 規則:EC2-002(不受限制的 SSH 存取)
    • Only show checks created less than:1天
  2. 在檢查失敗時,點擊「Send via SNS」

驗證自動修復解決方案 上層主題

步驟

  1. 在您的 AWS Console 上,前往「服務」「Compute」「EC2」「Security Groups.」 您會看到您在步驟 4 中建立的安全群組已不再可用。
    step-1-verify-resolution-y1iv54=e1e0a43c-ba7b-4eb0-b9f0-2a6b811617d4.png
  2. 在您的 AWS Console 上,前往 **Services > Compute > Lambda > Functions > 選擇 {auto-remediate function} > Monitoring。**您也可以查看 lambda 監控圖表,以了解 「auto-remediate-v1-AutoRemediateOrchestrator」 及其子功能是否被觸發。
    step-2-verify-resolution-ljjg9w=9d6d5c2c-f4fd-467d-8e6c-4e7f3e12fa4e.png

對自動修復專案的貢獻 上層主題

您可以分叉並修改我們的自動修復程式碼,但Cloud Risk Management不會對分叉的程式碼提供技術支援中心。不過,您可以提交拉取請求至我們的自動修復程式碼,若獲得批准,程式碼將由我們的客戶成功團隊提供支援。