云安全中心通過實時檢測GitHub平臺公開源代碼中存在的阿里云賬號或RAM用戶的訪問密鑰AccessKey(以下簡稱:AK)信息,可識別出AK是否泄露,并提供相應的告警,建議您及時查看并處理外泄的AK事件。本文介紹AK泄露檢測的原理及如何處理泄露事件。
功能原理
云安全中心AK泄露檢測功能支持實時檢測GitHub平臺公開源代碼(多為企業員工私自上傳并不小心公開)中是否含有AK信息,在發現AK泄露時向您發送通知,幫助您及時發現數據外泄的風險。
目前云安全中心僅支持檢測Github平臺中的AK泄露,不支持其他平臺。
企業員工如果將不可公開的公司源碼上傳至GitHub等平臺,可能會導致阿里云賬號的AK信息在外網環境泄露,AK泄露可能會讓您失去該賬號下所有資源的控制權。
只有AccessKey ID和AccessKey Secret(以下簡稱SK)同時泄露時,該訪問密鑰才可以被第三方利用。云安全中心在檢測到阿里云賬號或RAM用戶的AK信息泄露時,會根據SK是否有效,采用不同的方式向對應的阿里云賬號發送通知,支持的通知方式如下:
AK泄露檢測頁面告警:只要檢測到AK泄露,無論SK是否有效,都會提供告警。
語音通知:只有在檢測到泄露的SK信息有效時,會根據您設置的接收人實時發送語音通知。
控制臺彈框提示:在檢測到泄露的SK信息有效時,您訪問阿里云控制臺首頁或多數云產品控制臺時會彈框提示。
根據通知設置發送告警通知:只有檢測到泄露的SK信息有效時,才會根據您設置的通知方式(站內信、郵件或短信)發送通知。
設置AK泄露告警通知
云安全中心支持對AK泄露情報提供告警通知,通知的方式包括短信、語音、郵件、站內信。
云安全中心默認開啟AK泄露告警通知。您也可以根據需要,在云安全中心控制臺通知設置頁面短信/郵件/站內信頁簽中,自定義AccessKey 泄露情報的通知方式。設置后,您只能通過已選中的方式收到通知。具體操作,請參見通知設置。
由于AK泄露風險安全風險高,為了能及時接收到通知,建議您選中所有通知方式。
默認情況下,僅賬號聯系人會收到通知。需要其他聯系人收到通知時,您可以參考下述步驟添加聯系人。
處理AK泄露事件
收到AK泄露告警通知后,表示您阿里云賬號或RAM用戶的AK和SK信息已外泄。請第一時間處理AK泄露事件。處理完成后,請在云安全中心控制臺對該AK告警事件進行處理。具體操作如下:
登錄云安全中心控制臺。在控制臺左上角,選擇需防護資產所在的區域:中國或全球(不含中國)。
在左側導航欄,選擇 。
在AK泄露檢測頁面,查看并處理AK泄露事件。
查看AccessKey泄露檢測詳情
您可以在AK泄露檢測列表中,選擇一個檢測記錄,單擊其操作列的詳情,查看詳細的情報信息。單擊文件詳情區域的用戶名、文件名、倉庫名等鏈接,可以跳轉GitHub對應頁面,查看AK信息泄露的源頭。
處理檢測出的AK泄露事件
云安全中心不支持自動處理或一鍵處理AK泄露事件,您需要手動處理完AK泄露事件后,再前往云安全中心控制臺標注AK泄露處理狀態。手動處理AK泄露事件的方法如下:
聯系相關人員刪除或隱藏GitHub相關內容。
在確保核心業務不受影響的前提下,即不再需要使用該AccessKey通過API訪問阿里云資源時,刪除或禁用已泄露的AccessKey,啟用新的AccessKey。具體操作,請參見刪除RAM用戶的AccessKey和禁用RAM用戶的AccessKey。
手動處理完AK泄露事件后,您需要在AK泄露檢測列表中定位到具體事件,單擊其操作列的處理,選擇AK事件處理方式,并單擊立即處理。
處理方式包含我已手動刪除、我已手動禁用 AK、加白名單三種。
說明您針對該AK泄露已處理了所有的AK泄露來源、并手動確認處理方式后,該AK泄露事件的狀態會變為已處理。
如果選擇加入白名單處理,該檢測項處理狀態變為已加白名單,并進入已處理列表。
需要恢復檢測時,您可從已處理列表進入AK泄露詳情頁,進行取消白名單操作。
查看AK調用記錄
通過查看AK調用記錄,可以確定在AK泄露后AK是否被攻擊者利用過,以了解AK泄露的影響范圍。下文介紹通過操作審計服務按照時間線查看AK調用事件的操作步驟。
如何需要從AK訪問的云產品角度查看調用記錄,您可以使用操作審計的AccessKey審計功能。具體操作,請參見查詢AccessKey日志。
在云安全中心控制臺AK泄露檢測頁面,獲取需要查看的AccessKey ID。
登錄操作審計控制臺。
在左側導航欄,選擇
。在頂部導航欄選擇您想查詢事件的地域。
選擇類型為AccessKey ID,輸入待查詢的AccessKey ID,并選擇查詢時間段。
查看該AccessKey ID的調用事件列表,單擊目標事件操作列的查看事件詳情,可查看事件的詳細記錄信息。
關于管控事件參數的更多信息,請參見管控事件結構定義。
持續關注AK異常調用
及時處理了AK泄露事件后,建議您持續關注AK調用異常,防止類似事件的發生,以及在泄露發生時快速響應,縮小事件影響范圍。下述內容提供了三種不同的方式,您可以根據實際需要選擇。
從攻擊視角監測AK異常調用
云安全中心根據多年沉淀的安全攻防經驗和大模型,可以檢測常見的AK調用異常,例如調用AK的IP地址在近期發起過攻擊行為、該IP在云上批量調用多個用戶的AK、調用的API較為敏感且該AK出現過泄露等。下文介紹在云安全中心控制臺查看AK異常調用告警的具體操作。
登錄云安全中心控制臺。在控制臺左上角,選擇需防護資產所在的區域:中國或全球(不含中國)。
在左側導航欄,選擇 。
將告警類型選擇為云產品威脅檢測,查看是否存在AK異常調用告警。
如果存在AK異常調用告警,您需要查看告警詳情,及時確認該AK調用是否為正常行為。
(可選)配置安全告警通知。
您可以在云安全中心控制臺系統配置>通知設置頁面,配置安全告警的通知方式,以便能及時收到AK調用異常告警。免費版僅支持配置站內信通知方式。具體操作,請參見通知設置。
監測阿里云賬號調用AK等異常
操作審計服務提供了內置告警,可監控阿里云賬號調用AK及AK異常調用。您可以在操作審計控制臺啟用內置告警AK使用的異常頻率告警和Root賬號AK使用檢測,以便能在出現AK異常調用時收到通知。具體操作,請參見啟用并設置事件告警。
基于歷史行為檢測AK異常調用
操作審計服務提供的審計事件洞察(Insights事件)功能,可以基于歷史行為分析調用率異常的AK,及時發現異常行為。開通并查看Insights事件的具體操作,請參見通過操作審計控制臺查詢Insights事件。
使用建議
不使用阿里云賬號(主賬號)AccessKey。更多信息,請參見不使用主賬號AccessKey。
避免直接將AccessKey信息硬編碼到代碼中,可通過配置環境變量的方法管理AccessKey。更多信息,請參見憑據的安全使用方案。
使用私有的Github代碼倉庫來管理代碼,或搭建企業內部的代碼托管系統,防止源代碼和敏感信息泄露。