CentOS 8下YUM安裝OpenVAS(GVM)
一、前言
2020年底,GVM 10和GVM 11都已退休,并且不會再發布任何其他版本。Greenbone漏洞管理版本將使用基于日歷的版本控制,這將使識別哪個組件版本屬于哪個發行版變得更加容易。GVM-20.08是第一個使用基于日歷的版本控制(2020年8月)并對所有主要組件使用相同版本的版本。官方建議所有用戶和發行版都應立即切換到GVM 20.08。
從GVM-20.08版本開始,支持的平臺如下:Redhat 8、Rocky 8、CentOS 8、Fedora 33、Fedora 34、Docker。本人在CentOS7平臺下測試出現各種問題(如無法在安裝過程中自動創建用戶等),無法完成安裝部署。
二、部分組件介紹
OSPd是共享相同通信協議的漏洞掃描程序的框架:OSP(開放掃描程序協議)。OSP為不同的安全掃描程序創建統一的界面,并在中央Greenbone Vulnerability Manager服務下始終提供其控制流和掃描結果。OSP在許多方面類似于GMP(Greenbone Management Protocol):基于XML的無狀態非永久連接。該設計支持使用相同的協議OSP包裝任意掃描程序,共享核心守護程序選項,同時添加特定于掃描程序的參數和選項。項目地址:
https://github.com/greenbone/ospd
ospd-openvas是OSP服務器實現,允許GVM遠程控制OpenVAS掃描器。詳細請參閱:
https://github.com/greenbone/openvas。運行后,您需要為Greenbone Vulnerability Manager配置OpenVAS,例如通過Web界面Greenbone Security Assistant。 然后,您可以創建掃描任務以使用OpenVAS。項目地址:
https://github.com/greenbone/ospd-openvas
Greenbone Vulnerability Manager——Greenbone漏洞管理(GVM)框架的數據庫后端,是安全掃描程序和用戶客戶端之間的中央管理服務。它管理所有漏洞管理配置和掃描結果的存儲。通過基于XML的Greenbone管理協議(GMP),可以訪問數據、控制命令和工作流程。通過Open Scanner Protocol(OSP)可以控制像 OpenVAS這樣的掃描器。項目地址:
https://github.com/greenbone/gvmd
Greenbone Security Assistant是為Greenbone Security Manager設備開發的Web前端界面 。它連接到Greenbone Vulnerability Manager GVM,以提供功能齊全的用戶界面來進行漏洞管理。Greenbone安全助手包括:GSA-用React編寫的網頁和GSAD-與GVM守護程序對話的HTTP服務器。項目地址:
https://github.com/greenbone/gsa
OpenVAS-Scanner——該存儲庫包含用于Greenbone漏洞管理(GVM)的掃描程序組件。這是Greenbone漏洞管理(GVM)解決方案的開放漏洞評估掃描程序(OpenVAS)。它用于Greenbone Security Manager設備,并且是功能齊全的掃描引擎,可以執行網絡漏洞測試(NVT)的持續更新和擴展的提要。項目地址:
https://github.com/greenbone/openvas-scanner
三、部署環境說明
本文中使用本地VM虛機部署測試。
OS:CentOS Linux release 8.3.2011
IP:192.168.168.108
虛機配置:2核CPU、4G內存、20G Disk
注:①系統為最小化安裝,部署前已完成系統初始化、內核及安全優化;
②Iptables防火墻已啟用,已開放80及443端口。
四、安裝基礎庫文件
- yum -y install epel-release
- yum config-manager --set-enabled powertools
- yum -y install gnutls-utils libX11 libX11-common libXpm libjpeg libtiff net-snmp-utils nmap postgresql postgresql-server postgresql-contrib socat tcl teckit texlive
五、安裝GVM(OpenVAS)
1.配置yum源
- wget -q -O - http://www.atomicorp.com/installers/atomic |sh

2.安裝(會安裝不少依賴包)
- yum -y install gvm
## 安裝完成后的部分截圖

3.初始化配置
## 執行初始化
- gvm-setup
## 此過程會配置NVT、scap數據、cert數據(需要比較長的時間,請耐心等待)以及設置管理賬號及密碼。
## 更新下載NVT,此過程所需時間有點長,請耐心等待

## 更新下載GVMD_DATA

## 更新下載SCAP_DATA
## 更新下載CERT_DATA
## 設置GSAD管理員用戶密碼,默認用戶為:admin。管理員用戶用于配置帳戶、手動更新NVT并管理角色。本文中為默認管理員用戶admin設置的密碼為:admin123456#
## 安裝配置完成
注:上圖中的提示"FirewallD is not running",是因為本人用來測試安裝openvas的服務器禁用了CentOS8默認的FirewallD防火墻,使用的是iptables防火墻。
4.相關服務腳本
OpenVAS Manager的進程名稱為gvmd,啟動:systemctl start gvmd.service
OpenVAS Scanner的進程名稱為ospd-openvas,啟動:systemctl start ospd-openvas.service
Greenbone Security Assistant的進程名稱為gsad,啟動:systemctl start gsad.service
注:安裝配置完成后,所有服務都已配置開機啟動。
5.更新 Feed
剛安裝完成時或每次使用OpenVAS前建議先手動更新弱點數據庫,以便有更好的掃描效果。后續可以使用腳本結合 Crontab 設置計劃任務自動更新。更新會耗時許久,請耐心等候。
注:更新不能以特權用戶root身份執行,以root用戶執行會覆蓋具有非特權用戶的文件。需切換至gvm用戶下執行。
- ## 切換至用戶gvm
- su gvm
- ## 更新NVT
- greenbone-nvt-sync
- ## 更新GVMD_DATA
- greenbone-feed-sync --type GVMD_DATA
- ## 更新SCAP_DATA
- greenbone-feed-sync --type SCAP
- ## 更新CERT_DATA
- greenbone-feed-sync --type CERT
可以透過 Web 頁面里的 “Adminstration” → “Feed Status” 中查看更新狀態。
六、OpenVAS(GVM)基本使用操作
1.登陸
## 訪問地址:https://IP,注:本文中測試服務器IP地址為192.168.168.108。服務器使用iptables防火墻,已開放80及443端口。
## 當第一次訪問時,可能會出現不安全鏈接提示,請將此地址添加為安全例外。
## 以下界面提示證書存在錯誤,是因為該站點使用了不受信任的自簽名的SSL證書。如果確認該站點沒問題,點擊“高級”(點擊后即為“隱藏詳情”)后再單擊“繼續前往192.168.168.102(不安全)”選項。
## 輸入默認用戶 admin 及上述步驟中設置的密碼 admin123456# 登陸。密碼是在上述安裝過程中設置的。

## 登錄后首頁。
2.賬號管理
## 點擊”Administration“ → ”Users “,然后點擊頁面左側的"New User"(帶五角星的方框),新增賬號與指定角色。如下圖所示:
3.修改預設設定
## 點擊頁面右上角的用戶頭像圖標,選擇“My Settings”,如下圖所示:

## 點擊頁面中左上角的“Edit My Settings”(帶一支筆的方框),在“General”選項中設定時區讓報告產出時間能符合自身規劃。

## 其他設定:
Defaults Settings選項中
- Default OpenVAS Scan Config:可設定掃描的深度,發現設備的 Host Discovery 與取得系統信息的 System Discovery,建議一般掃描選擇中間的 Full and fast 即可。
- Default Port List:指定掃描的 Port 類型,依據自身需求調整,可透過 Configuration 來修改 Port Lists 內容。
- Default Report Format:默認掃描報告格式,可選擇XML、CSV、PDF、TXT等格式。

4.配置Scan Configs(本文中為測試,實際環境中請根據需求配置)
注:OpenVAS安裝部署后,系統默認已有6個ScanConfig,如下圖所示:
## 點擊Configuration → Scan Configs頁面,點擊頁面左側的"New Scan Config"(帶五角星的方框)。
## 在New Scan Config頁面中,“Name”選項值填寫:test,“Base”選項選擇“ Full and fast ”,點擊“Save”。
## 創建成功后如下圖所示:
5.配置Target
## 點擊Configuration → Targets 點擊頁面左上角“New Target”(帶五角星的方框)。
## 在New Target頁面中,“Name”選項值填寫:test,“Hosts”選項中的“Manual”值輸入對應的IP地址(本文中為OpenVAS服務器IP):192.168.168.108,"Port List"選項選擇“All IANA assigmed TCP adn UDP”,其他選項保持默認,點擊“Save”。
## 創建成功后如下圖所示:
6.配置Task
## 點擊 “Scans” → “Tasks”,如下圖所示:
## 在頁面左上角(帶五角星的方框),點擊“New Task”,如下圖所示:
## 在New Task頁面中,“Name”選項值填寫:test,"Scan Target"選項選擇上述步驟中創建的“test”,“Scan Config"選項選擇上述步驟中創建的“test”,其他選項保持默認,點擊Save。
## 創建成功后如下圖所示:
7.開始執行掃描
## 在剛剛創建的“Task”中點擊“Start”(朝右的三角形),即可立即執行掃描。掃描過程需要一段時間,可隨時查看掃描進度及結果。如下圖所示:
## 掃描中,如下圖所示:
## 掃描完成,如下圖所示:
8. 查看結果
## 當“Status”為Done是代表已經掃描完畢。
➢ Severity:由低至高顏色分別為藍、黃、紅,此三種類別分別會在“Scans” → “Results”中顯示數量。
## 點擊 "Last Report" 選項下的掃描完成日期時間,在切換的頁面中點擊"Results"可查看掃描結果。也可點擊頂部導航欄中的“Scans” → “Reports” 中查看掃描的報告,若報告很多也可透過上方的 Filter 來搜尋。如下圖所示:
## QoD:Quality of Detection,掃描的可靠度,最高為 100%。
## 導出掃描結果報告,點擊“Download foltered Report”(下圖中紅色框處的,朝下箭頭),在彈出的窗口中,“Report Format“選項中下拉選單選擇適合文件類型。點擊"OK"下載報告。
## 本文中使用Google Chrome瀏覽器,掃描報告下載到了Chrome瀏覽器設置的默認下載目錄中。
## Chrome瀏覽器底部有文件下載提示,下載完成后可直接點擊查看報告。