Pentest Toolkit - OpenVAS & GVM
OpenVAS 與 GVM 簡介
OpenVAS(Open Vulnerability Assessment System) 是一款開源的漏洞掃描器,用於自動化檢測網路與系統中的安全漏洞。它最初是從 Nessus 2.2 分支出來的開源項目,隨後由 Greenbone Networks 接手維護與開發,並成為 Greenbone Vulnerability Management(GVM) 框架的一部分。
GVM(Greenbone Vulnerability Management) 則是一個完整的漏洞管理系統,不僅包含 OpenVAS 掃描器,還提供 Web 介面、報告管理、資產管理、API 接口等功能,適合企業與個人用戶進行資安檢測與風險管理。
核心架構與組件
GVM 由多個模組組成,每個模組負責不同的功能,確保整個系統可以進行漏洞掃描、管理與報告產生。
| 組件名稱 | 功能描述 |
|---|---|
| OpenVAS Scanner | 執行實際的漏洞掃描,使用 NVT(Network Vulnerability Tests)來檢測系統中的安全漏洞。 |
| GVMd(Greenbone Vulnerability Manager Daemon) | 負責管理漏洞掃描、處理結果、與 OpenVAS Scanner 溝通,並提供 API 接口。 |
| GSAD(Greenbone Security Assistant Daemon) | 提供 Web 介面,允許使用者透過瀏覽器管理掃描任務、檢視報告等。 |
| gvmd | 負責管理漏洞資料庫(如 CVE、CPE、CVE Details)並 提供風險評估。 |
| ospd-openvas | 作為 OpenVAS Scanner 與 GVMd 之間的橋樑,允許透過 Open Scanner Protocol(OSP)與外部系統整合。 |
| GMP(Greenbone Management Protocol) | 用於與 GVMd 進行通訊,支援遠端 API 控制漏洞管理流程。 |
主要功能與技術細節
漏洞掃描與檢測
- OpenVAS 使用超過 100,000+ 條 NVT(Network Vulnerability Tests) 規則來檢測系統中的漏洞。
- 支援掃描 IP 網段、單一 IP、主機名稱、網域,並可進行深度系統檢測。
- 可掃描的系統包括 Linux、Windows、macOS、路由器、IoT 設備、雲端環境等。
- 能夠識別已知漏洞(CVE)、配置錯誤(Misconfigurations)及潛在風險。
風險評估與 CVSS 分析
- 掃描結果會依據 CVSS(Common Vulnerability Scoring System) 計算風險等級:
- 低風險(0.1 - 3.9)
- 中風險(4.0 - 6.9)
- 高風險(7.0 - 8.9)
- 嚴重風險(9.0 - 10.0)
- 可與 MITRE ATT&CK 框架整合,識別攻擊手法與可能的風險影響。
支援協議與服務掃描
- 網路層面:TCP/IP、UDP、ICMP
- 應用層協議:HTTP、HTTPS、FTP、SSH、SMB、SNMP、RDP、VNC
- 資料庫漏洞掃描:MySQL、PostgreSQL、MSSQL、Oracle
- 工控系統(ICS)掃描:MODBUS、DNP3、SCADA 協議
Web UI 與自動化 API 支援
- GSAD(Greenbone Security Assistant) 提供 Web 介面,可透過瀏覽器管理掃描與報告。
- GMP(Greenbone Management Protocol) 允許透過 API 進行自動化漏洞管理。
- 可與 SIEM(Security Information and Event Management)、SOC(Security Operations Center) 整合,提高資安監控能力。
報告與修復建議
- 掃描結果可以輸出為 HTML、PDF、XML、CSV、JSON 等格式。
- 提供詳細的漏洞描述、影響範圍、建議修補方式。
- 可與 CVE(Common Vulnerabilities and Exposures) 資料庫同步,確保漏洞資訊最新。
適用對象與應用場景
IT 安全管理人員
- 定期掃描企業網路,找出可能的安全漏洞,避免遭受駭客攻擊。
- 監控伺服器、路由器、防火牆等設備的漏洞狀況。
滲透測試人員(Penetration Testers)
- 在滲透測試(Penetration Testing)中使用 OpenVAS 來識別目標系統的漏洞。
- 作為 Kali Linux 工具組的一部分,與 Metasploit、Nmap 等工具搭配使用。
安全研究人員與開發者
- 研究新型漏洞,分析 CVE 資訊,測試修補方法。
- 透過 API 自動化掃描,整合至 DevSecOps 流程。