iT邦幫忙

2023 iThome 鐵人賽

DAY 17
0
Security

一個人的藍隊系列 第 17

OpenVAS 弱點掃描設定與檢測執行

  • 分享至 

  • xImage
  •  

上一篇安裝完成之後,我們就沒有進行後續操作
就是解釋一下架構而已
今天我們就來建立一組配置來執行掃描吧!

小提醒
無論任何的掃描工具
商業的、開源的、便宜的、貴的、評價好的、評價差的
任何的掃描工具,都有漏判跟誤判的可能性
我再說一次
從來沒有人可以越過我的劍圍!
阿...不是
我是要說
絕對不可能有掃描軟體跟你保證不會有誤判跟漏判

OpenVAS(Greenbone)弱點掃描設定與執行

簡單先描述一下掃描的設定流程

  1. 設定掃描配置( Scan Config)
    • 設定掃描時要檢查的弱點模組
  2. 設定目標(Target)
    • 設定掃描時要檢查的目標
    • IP 或 Domain 清單
    • 掃描的 Port
  3. 設定任務(Task)
    • 設定任務,將 Sacn Confing 跟 Target 給串接
    • 設定掃描速率
  4. 執行掃描(Scan)
    • 執行掃描
  5. 產出報告
    • 選擇格式

【步驟零】
登入我們的OpenVAS(Greenbone)

【步驟一】
Configuration -> Scan configs
可以使用原本預設的這些 Scan configs
但我推薦自己複製一份起來使用
我們可以直接 clone 一份 Full and fast 的設定
修改名稱與設定,例如修改成 General,
或這你使用更客製化的名稱避免混淆也行
然後也可以加個 comment

Scan config 的地方我們可以設定以下掃描相關細節

  • Edit Network Vulnerability Test Families
  • Edit Scanner Preferences
  • Network Vulnerability Test Preferences

其實主要就是要掃描的弱點模組
這邊你如果清楚要掃描的主機或是參數用途
可以去調整數值或是新增或移除選項
像這邊範例當中我就把 Windows 的項目都取消勾選

https://ithelp.ithome.com.tw/upload/images/20231002/20114110I6xdYtboQa.png

https://ithelp.ithome.com.tw/upload/images/20231002/20114110xKaPyIunPH.png

【步驟二】
接著設定目標系統
Configuration -> Targets
左上角點選 New Target

  • IP 或 Domain 清單
  • 掃描的 Port
  • 主機發現的方式
  • 針對一些服務可以配置憑證

這邊我們設定 Wazuh Server 的 IP
這邊還有兩個很重要的任務
第一個是要配置好要掃描的 Port 清單
第二個是主機發現的方式
如果弱點存在你沒掃描的 Port,你也檢測不到漏洞
如果沒有配置好主機發現,當掃描範圍是大量的 IP,可能會錯過主機

https://ithelp.ithome.com.tw/upload/images/20231002/20114110ddapMUaDmd.png

【步驟三】
接著設定Task任務
Scans -> Tasks
左上角點選 New Task
任務這邊我們可以把剛剛設定的目標跟Scan config給串接起來
然後可以在針對這次的任務來設定一些細節,像是

  • 排程掃描
  • QoD
  • 掃描的速率

https://ithelp.ithome.com.tw/upload/images/20231002/2011411028W8Dvm5nu.png

【步驟四】
Scans -> Tasks
按下開始執行掃描
如果有需要也可以暫停再繼續
有時候它自己有問題也會不穩定暫停

https://ithelp.ithome.com.tw/upload/images/20231002/20114110GzRXM0un2n.png

【步驟五】
產出報告
直接點選Task進去或是點選到Report都可以看到結果
這邊可以看到結果報告的資訊
點選左上角也可以下載報告
可以選擇不同的格式,通常比較好閱讀是PDF跟CSV
如果要做後續資料處理通常都是CSV跟XML

值得注意提一下的是Anonymous XML
Anonymous XML跟XML的差別在於
Anonymous XML當中的IP會被隨機換掉
也就是說你在看Anonymous XML報告的時候
裡面的IP不會是真實主機的IP

https://ithelp.ithome.com.tw/upload/images/20231002/20114110S3sKncXxdS.png

https://ithelp.ithome.com.tw/upload/images/20231002/201141109c9g5Gu3LX.png

小提醒
掃描結果有列出CPE
也可以透過NIST官方網站來透過CPE去確認弱點清單
例如:cpe:2.3:a:apache:tomcat:9.0.0:m27::::::
https://nvd.nist.gov/vuln/search/results?adv_search=true&isCpeNameSearch=true&query=cpe%3A2.3%3Aa%3Aapache%3Atomcat%3A9.0.0%3Am27%3A*%3A*%3A*%3A*%3A*%3A*

然後我們這次掃描
沒有意外應該會發現有一個Wazuh的高風險
這個就待明天揭曉了~
https://ithelp.ithome.com.tw/upload/images/20231002/201141103057MPQ1dC.png

gvm-tools

補充一下
前面有提到過可以利用 gvm-tools 來操作 gvmd
這邊簡單帶過一下
gvm-tools 有三種可以利用 CLI 的程式

分別是

  • gvm-cli
  • gvm-script
  • gvm-pyshell

然後 gvm-tools 的通訊連接有三種連接方式
1.Using a Unix Domain Socket
2.Using TLS
3.Using SSH

一般看到的範例都是走 socket
舉例來說要用 cli 取得 task 清單

sudo runuser -u _gvm -- gvm-cli --gmp-username admin --gmp-password xxxxxx socket --xml "<get_tasks/>" | less

如果要用 gvm-script 來取得 task 清單

sudo runuser -u _gvm -- gvm-script --gmp-username admin --gmp-password xxxxxx socket list-tasks.gmp.py

script 可以看官方有很多腳本
https://github.com/greenbone/gvm-tools/tree/main/scripts
關於 script 的地方其實也是不少坑坑洞洞

這邊文章也不好解釋跟實作
就不深入介紹了


上一篇
OpenVAS 開源弱點檢測平台架設與架構說明
下一篇
Wazuh agent 密碼驗證機制
系列文
一個人的藍隊30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言