開源云原生安全治理平臺 HummerRisk
HummerRisk 是一個開源的云安全治理平臺,以非侵入的方式對云原生環境進行全面安全檢測,核心解決三個方面的問題,底層的混合云安全合規,中層的 K8s 容器云安全和上層的軟件安全。
特性
混合云安全治理
- 混合云安全合規檢測:對主流的公(私)有云資源進行安全合規檢測,例如等保 2.0 預檢、CIS 合規檢查、各種基線檢測,同時可自定義檢測規則。
- 漏洞檢測:基于漏洞規則庫,通過掃描等手段對指定的網絡設備及應用服務的安全脆弱性進行檢測。
- 合規報告:一鍵獲取合規報告,全面掌控安全態勢。
優勢是什么?
- 支持全面: 支持的幾乎所有公有云,包括:阿里云、騰訊云、華為云、火山引擎、百度云、青云、UCloud、Amazon Web Services、Microsoft Azure、Google Cloud,支持的私有云包括:OpenStack、VMware vSphere,并還在不斷的擴充支持的范圍。
- 容易上手: 只需綁定云賬號,就可以一鍵執行檢測。
- 開箱即用: 內置大量規則,并可按需自定義規則。
K8s 容器云安全
- K8s 資源態勢:可以關聯多個 K8s 集群,統一查看各個關聯環境的資源態勢。
- 環境檢測:根據 K8s 安全基線進行檢測,發現存在的配置錯誤、安全漏洞、危險動作等內容。
- 鏡像檢測:全面檢測鏡像相關的漏洞,包括操作系統、軟件包、應用程序依賴等方面。
- 容器檢測:對運行容器進行掃描檢測,發現存在的安全問題和風險內容。
- 部署檢測:檢測 K8s 的部署編排文件,在部署前發現其中的配置問題。
- 主機檢測:可以自定義檢測內容,發現底層主機/虛機中存在問題。
- 源碼檢測:檢測開發者的源代碼,提前發現其中的開源協議、依賴、漏洞、代碼等問題。
- SBOM 管理: SBOM 的可視化管理和分析,檢測 SBOM 的變更,快速發現和定位軟件供應鏈中的風險和漏洞,給出合理的處理建議。
優勢是什么?
- 兼容性: 支持多種 K8s 發行版。
- 獨立性: 中立產品,客觀檢測。
- 無侵入:無侵入式檢測。
軟件供應鏈安全
- 源碼檢測:檢測開發者的源代碼,提前發現其中的開源協議、依賴、漏洞、代碼等問題。
- 軟件依賴檢測:通過對軟件成分的分析,發現依賴漏洞,同時構建 SBOM。
- 鏡像依賴檢測:檢測鏡像中的各種依賴信息,并發現安全漏洞。
- SBOM 管理: SBOM 可視化管理和分析,監測 SBOM 變更,發現和定位軟件供應鏈中的風險和漏洞。
安裝
最簡單的方式只需兩步即可快速安裝 HummerRisk。準備一臺不小于 4 核 8G 內存的 64 位 Linux (建議首選 CentOS 7 以上) 主機, 以 root 用戶執行如下命令即可一鍵安裝 HummerRisk。
# 下載最新版本的安裝腳本
curl -sSL https://github.com/HummerRisk/HummerRisk/releases/latest/download/quick_start.sh -o quick_start.sh
# 執行安裝命令
bash quick_start.sh
# 安裝完成后配置文件 /opt/hummerrisk/config/install.conf
當然我們也可以手動部署,根據需要配置相關參數,建議使用外置的 MySQL 數據庫。
首先指定需要安裝的版本:
export hummerrisk_version=v0.2.0
然后下載對應的安裝包:
wget https://github.com/HummerRisk/HummerRisk/releases/download/{{ hummerrisk_version }}/hummerrisk-installer-{{ hummerrisk.version }}.tar.gz
解壓安裝包:
tar -xf hummerrisk-installer-{{ hummerrisk_version }}.tar.gz
cd hummerrisk-installer-{{ hummerrisk_version }}
打開 install.conf 配置文件,根據需要修改默認的配置文件。
$ vim install.conf
# 以下設置如果為空系統會自動生成隨機字符串填入
## 安裝配置
# 鏡像倉庫地址
HR_DOCKER_IMAGE_PREFIX=registry.cn-beijing.aliyuncs.com
# 數據持久化目錄
HR_BASE=/opt/hummerrisk
HR_DOCKER_DIR=/var/lib/docker
## Service web端口
HR_HTTP_PORT=${HR_HTTP_PORT}
# 當前版本
HR_CURRENT_VERSION=v1.0
## MySQL 數據庫配置, USE_EXTERNAL_MYSQL=1 表示使用外置數據庫, 請輸入正確的 MySQL 信息
HR_USE_EXTERNAL_MYSQL=${HR_USE_EXTERNAL_MYSQL}
HR_DB_HOST=${HR_DB_HOST}
HR_DB_PORT=${HR_DB_PORT}
HR_DB_USER=${HR_DB_USER}
HR_DB_PASSWORD=${HR_DB_PASSWORD}
HR_DB_NAME=${HR_DB_NAME}
## docker 配置
# docker 網段設置
HR_DOCKER_SUBNET=172.19.0.0/16
# docker 網關 IP
HR_DOCKER_GATEWAY=172.19.0.1
## Compose 項目設置
# 項目名稱
COMPOSE_PROJECT_NAME=hr
# 超時時間
COMPOSE_HTTP_TIMEOUT=3600
# docker 客戶端超時時間
DOCKER_CLIENT_TIMEOUT=3600
配置完成后然后執行如下所示命令開始安裝:
bash install.sh
安裝完成后使用 hrctl start 命令即可啟動。
使用
啟動完成后即可在瀏覽器中訪問其 web 服務。
默認登錄的賬戶為: admin, 密碼為 hummer。
登錄完成后即可進入到首頁,首頁概況性展示了檢測結果的核心信息,分為總覽、分析、活動記錄三個頁面,默認顯示概覽頁面。
總覽頁面展示用戶數、賬號數、規則數、結果數、任務數、安全評分等信息,以及云賬號統計、漏洞統計、虛機統計、軟件包溶劑、鏡像統計,通過日歷展示任務執行情況。
通過用戶自定義展示樣式與顏色,按分析周期、檢測人員、檢測類型、檢測賬號等信息進行分析。通過按檢測類型篩選、按檢測分組篩選、按檢測賬號篩選、按風險等級篩選、按檢測人員篩選、按時間節點篩選數據,獲取檢測結果。
其他就是常用的混合云安全、云原生安裝等操作了。比如云賬號設置,主要用來記錄云賬號認證信息,保存檢測參數,用于按檢測規則檢測云平臺資源。
如果需要做 K8s 檢測,在使用云原生安全掃描任務前需在 K8s 集群上安裝 tirvy-operator??梢灾苯邮褂脤?Helm Chart 進行一鍵安裝,如下所示命令:
# 1.添加 chart 倉庫
helm repo add hummer https://registry.hummercloud.com/repository/charts
# 2.更新倉庫源
helm repo update
# 3.開始安裝, 可以自定義應用名稱和NameSpace
helm upgrade --install trivy-operator hummer/trivy-operator \
--namespace trivy-system \
--set="image.repository=registry.cn-beijing.aliyuncs.com/hummerrisk/trivy-operator" \
--create-namespace --set="trivy.ignoreUnfixed=true"
# 4.檢測operator是否啟動成功
kubectl get pod -A|grep trivy-operator
trivy-system trivy-operator-69f99f79c4-lvzvs 1/1 Running 0 118s
安裝完成后要啟用 K8s 環境安裝檢測功能,需要綁定 K8s APIServer Url 和對應的 Token 信息,然后才能生成安全漏洞結果。
在云原生檢測結果列表,點擊 統計按鈕? 進入詳情列表,點擊 狀態按鈕 就可以查看日志與報告了。
除此之外還有很多相關功能,并且我們還可以根據自身的需求自定義云資源檢測規則,更多相關功能可以查看官方文檔 https://docs.hummerrisk.com 了解更多相關信息。
Git 倉庫:https://github.com/HummerRisk/HummerRisk。