CentOS 8下YUM安裝OpenVAS(GVM)
一、前言
2020年底,GVM 10和GVM 11都已退休,并且不會(huì)再發(fā)布任何其他版本。Greenbone漏洞管理版本將使用基于日歷的版本控制,這將使識(shí)別哪個(gè)組件版本屬于哪個(gè)發(fā)行版變得更加容易。GVM-20.08是第一個(gè)使用基于日歷的版本控制(2020年8月)并對(duì)所有主要組件使用相同版本的版本。官方建議所有用戶和發(fā)行版都應(yīng)立即切換到GVM 20.08。
從GVM-20.08版本開始,支持的平臺(tái)如下:Redhat 8、Rocky 8、CentOS 8、Fedora 33、Fedora 34、Docker。本人在CentOS7平臺(tái)下測(cè)試出現(xiàn)各種問(wèn)題(如無(wú)法在安裝過(guò)程中自動(dòng)創(chuàng)建用戶等),無(wú)法完成安裝部署。
二、部分組件介紹
OSPd是共享相同通信協(xié)議的漏洞掃描程序的框架:OSP(開放掃描程序協(xié)議)。OSP為不同的安全掃描程序創(chuàng)建統(tǒng)一的界面,并在中央Greenbone Vulnerability Manager服務(wù)下始終提供其控制流和掃描結(jié)果。OSP在許多方面類似于GMP(Greenbone Management Protocol):基于XML的無(wú)狀態(tài)非永久連接。該設(shè)計(jì)支持使用相同的協(xié)議OSP包裝任意掃描程序,共享核心守護(hù)程序選項(xiàng),同時(shí)添加特定于掃描程序的參數(shù)和選項(xiàng)。項(xiàng)目地址:
https://github.com/greenbone/ospd
ospd-openvas是OSP服務(wù)器實(shí)現(xiàn),允許GVM遠(yuǎn)程控制OpenVAS掃描器。詳細(xì)請(qǐng)參閱:
https://github.com/greenbone/openvas。運(yùn)行后,您需要為Greenbone Vulnerability Manager配置OpenVAS,例如通過(guò)Web界面Greenbone Security Assistant。 然后,您可以創(chuàng)建掃描任務(wù)以使用OpenVAS。項(xiàng)目地址:
https://github.com/greenbone/ospd-openvas
Greenbone Vulnerability Manager——Greenbone漏洞管理(GVM)框架的數(shù)據(jù)庫(kù)后端,是安全掃描程序和用戶客戶端之間的中央管理服務(wù)。它管理所有漏洞管理配置和掃描結(jié)果的存儲(chǔ)。通過(guò)基于XML的Greenbone管理協(xié)議(GMP),可以訪問(wèn)數(shù)據(jù)、控制命令和工作流程。通過(guò)Open Scanner Protocol(OSP)可以控制像 OpenVAS這樣的掃描器。項(xiàng)目地址:
https://github.com/greenbone/gvmd
Greenbone Security Assistant是為Greenbone Security Manager設(shè)備開發(fā)的Web前端界面 。它連接到Greenbone Vulnerability Manager GVM,以提供功能齊全的用戶界面來(lái)進(jìn)行漏洞管理。Greenbone安全助手包括:GSA-用React編寫的網(wǎng)頁(yè)和GSAD-與GVM守護(hù)程序?qū)υ挼腍TTP服務(wù)器。項(xiàng)目地址:
https://github.com/greenbone/gsa
OpenVAS-Scanner——該存儲(chǔ)庫(kù)包含用于Greenbone漏洞管理(GVM)的掃描程序組件。這是Greenbone漏洞管理(GVM)解決方案的開放漏洞評(píng)估掃描程序(OpenVAS)。它用于Greenbone Security Manager設(shè)備,并且是功能齊全的掃描引擎,可以執(zhí)行網(wǎng)絡(luò)漏洞測(cè)試(NVT)的持續(xù)更新和擴(kuò)展的提要。項(xiàng)目地址:
https://github.com/greenbone/openvas-scanner
三、部署環(huán)境說(shuō)明
本文中使用本地VM虛機(jī)部署測(cè)試。
OS:CentOS Linux release 8.3.2011
IP:192.168.168.108
虛機(jī)配置:2核CPU、4G內(nèi)存、20G Disk
注:①系統(tǒng)為最小化安裝,部署前已完成系統(tǒng)初始化、內(nèi)核及安全優(yōu)化;
②Iptables防火墻已啟用,已開放80及443端口。
四、安裝基礎(chǔ)庫(kù)文件
- 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.安裝(會(huì)安裝不少依賴包)
- yum -y install gvm
## 安裝完成后的部分截圖

3.初始化配置
## 執(zhí)行初始化
- gvm-setup
## 此過(guò)程會(huì)配置NVT、scap數(shù)據(jù)、cert數(shù)據(jù)(需要比較長(zhǎng)的時(shí)間,請(qǐng)耐心等待)以及設(shè)置管理賬號(hào)及密碼。
## 更新下載NVT,此過(guò)程所需時(shí)間有點(diǎn)長(zhǎng),請(qǐng)耐心等待

## 更新下載GVMD_DATA

## 更新下載SCAP_DATA
## 更新下載CERT_DATA
## 設(shè)置GSAD管理員用戶密碼,默認(rèn)用戶為:admin。管理員用戶用于配置帳戶、手動(dòng)更新NVT并管理角色。本文中為默認(rèn)管理員用戶admin設(shè)置的密碼為:admin123456#
## 安裝配置完成
注:上圖中的提示"FirewallD is not running",是因?yàn)楸救擞脕?lái)測(cè)試安裝openvas的服務(wù)器禁用了CentOS8默認(rèn)的FirewallD防火墻,使用的是iptables防火墻。
4.相關(guān)服務(wù)腳本
OpenVAS Manager的進(jìn)程名稱為gvmd,啟動(dòng):systemctl start gvmd.service
OpenVAS Scanner的進(jìn)程名稱為ospd-openvas,啟動(dòng):systemctl start ospd-openvas.service
Greenbone Security Assistant的進(jìn)程名稱為gsad,啟動(dòng):systemctl start gsad.service
注:安裝配置完成后,所有服務(wù)都已配置開機(jī)啟動(dòng)。
5.更新 Feed
剛安裝完成時(shí)或每次使用OpenVAS前建議先手動(dòng)更新弱點(diǎn)數(shù)據(jù)庫(kù),以便有更好的掃描效果。后續(xù)可以使用腳本結(jié)合 Crontab 設(shè)置計(jì)劃任務(wù)自動(dòng)更新。更新會(huì)耗時(shí)許久,請(qǐng)耐心等候。
注:更新不能以特權(quán)用戶root身份執(zhí)行,以root用戶執(zhí)行會(huì)覆蓋具有非特權(quán)用戶的文件。需切換至gvm用戶下執(zhí)行。
- ## 切換至用戶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
可以透過(guò) Web 頁(yè)面里的 “Adminstration” → “Feed Status” 中查看更新狀態(tài)。
六、OpenVAS(GVM)基本使用操作
1.登陸
## 訪問(wèn)地址:https://IP,注:本文中測(cè)試服務(wù)器IP地址為192.168.168.108。服務(wù)器使用iptables防火墻,已開放80及443端口。
## 當(dāng)?shù)谝淮卧L問(wèn)時(shí),可能會(huì)出現(xiàn)不安全鏈接提示,請(qǐng)將此地址添加為安全例外。
## 以下界面提示證書存在錯(cuò)誤,是因?yàn)樵撜军c(diǎn)使用了不受信任的自簽名的SSL證書。如果確認(rèn)該站點(diǎn)沒(méi)問(wèn)題,點(diǎn)擊“高級(jí)”(點(diǎn)擊后即為“隱藏詳情”)后再單擊“繼續(xù)前往192.168.168.102(不安全)”選項(xiàng)。
## 輸入默認(rèn)用戶 admin 及上述步驟中設(shè)置的密碼 admin123456# 登陸。密碼是在上述安裝過(guò)程中設(shè)置的。

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

## 點(diǎn)擊頁(yè)面中左上角的“Edit My Settings”(帶一支筆的方框),在“General”選項(xiàng)中設(shè)定時(shí)區(qū)讓報(bào)告產(chǎn)出時(shí)間能符合自身規(guī)劃。

## 其他設(shè)定:
Defaults Settings選項(xiàng)中
- Default OpenVAS Scan Config:可設(shè)定掃描的深度,發(fā)現(xiàn)設(shè)備的 Host Discovery 與取得系統(tǒng)信息的 System Discovery,建議一般掃描選擇中間的 Full and fast 即可。
- Default Port List:指定掃描的 Port 類型,依據(jù)自身需求調(diào)整,可透過(guò) Configuration 來(lái)修改 Port Lists 內(nèi)容。
- Default Report Format:默認(rèn)掃描報(bào)告格式,可選擇XML、CSV、PDF、TXT等格式。

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