動作

OpenVAS6

出自 Itsmw

簡介

網路弱點(vulnerability )

  • 定義
    當一台可上網的電腦,存在網路服務程式,例如:Apache網頁伺服器、網頁服務(Xoops, Joomle, WordPress ...etc)、FTP Server ...等,而這些程式若存在一些程式漏洞,使得他人可以直接經由網路取得主機之高級權限、植入或直接遠端命令執行惡意程式,那麼就代表其有弱點存在。
  • 影響
    • 當網路主機被攻入,那麼可能影響有:資訊外洩、寄廣告信、成為攻擊他人的跳板、網頁被植入惡意程式,造成他人瀏覽便中毒、變成釣魚網頁...等。
    • 網管接到資安通報,必須停機處理,甚至要重灌。
  • 預防
    • 新程式引用
      引入新的網頁程式,要先做弱點掃描,確定安全無虞後再使用。若掃描後有問題,但又非用不可,至少必須限定在安全區域(網段)內。
    • 程式碼更新
      網頁程式用了一段時間,要去留意下載來源有無新版,或安全性更新,若有一定要去更新,不要嫌麻煩,因為被入侵後會更麻煩。
    • 定期掃描
      由於駭客手法日新月異,所以網管人員至少必須每年用最新版的掃描軟體,對已安裝的主機或網頁服務掃描。




弱點掃描

弱點掃描(vulnerability scanner ):使用電腦軟體(software),對網路主機進行掃描,試圖找出主機上任何可能的被入侵點。這一類的軟體大多已是商業化而價格不菲,還好自由軟體也有類似的方案,最著名的就是 OpenVAS ,它是全功能型的軟體,利用各式規則列,從主機安裝軟體的版本,到網頁程式漏洞無一不查,唯一的缺點是,它必須建構在 Linux 之上。因此,若只想針對網頁程式碼漏洞掃描,了解它能否擋得住 XSS, SQL Injection 攻擊,那麼方便操作,可在 Windows 上運行的自由軟體 OWASP ZAP 是個不錯的方案,以下本文將會為大家介紹,ZAP 及 OpenVAS6 的使用時機與操作簡介。

  • OWASP ZAP -> 網頁弱點掃描 :XSS , SQL Injection, Include Inject...etc
  • OpenVAS -> 主機整體掃描: OS, Network Service...etc



OWASP ZAP

軟體簡介

  • 軟體名稱
    OWASP ZAP:OWASP Zed Attack Proxy
  • 軟體歷史
    由於網頁弱點掃描軟體: Paros 自 2006 年後幾乎沒有更新,因此 OWASP 組織,便以它的原始碼為基礎分支出 ZAP 專案,繼續修改原始碼以應付不斷變動的攻擊行為。
  • OWASP
    開放網路軟體安全計畫 (Open Web Application Security Project)
    它是一個公益性質的國際組織,該組織有多項計畫,除了本文要介紹的 ZAP 外,每年公佈的 Top 10 安全威脅是一項很重要的指標。
  • 軟體使用
  • 安裝前注意
    • 本軟體會啟用 TCP 8080 通訊埠


安裝

由於本軟體目前尚未有繁體中文版,加上為使大多數的網管人員方便學習,本文是以 Windows 7 為例,來進行 OWASP ZAP 安裝及使用介紹。若是使用 Linux 作業系統,請參考上文 youtube 連結中的安裝介紹篇。

  • 若要藉由瀏覽器的操作來進行掃描,可把憑證匯入,並設妥 proxy 功能
    • 直接 Double Click 安裝
    • 產生並把 SSL 憑證匯入 firefox 瀏覽器,這部份做法與 Ubuntu 上安裝 ZAP 的做法一樣,請參考該影片第 1:50 之後的畫面。




使用

  • 啟動 OWASP ZAP
    • 其實啟動後,直接輸入 IP ->「攻擊」就可進行掃描,並不一定非得經瀏覽器不可。
  • 打開 firefox / 選項 / 進階 / 網路 - 設定 / 手動設定 Proxy: localhost 8080
    Firefox proxy 8080.jpg
  • 輸入網址->「攻擊」->產生 HTML 報告
    ZAP 1.jpg



離開

  • 取消瀏覽器的 localhost 8080 proxy 設定
  • 關閉 ZAP 程式



Linux + OpenVAS6 虛擬機器篇

OpenVAS 弱點掃描軟體,採用自由軟體授權。在本文,筆者已在 Linux 作業系統上安裝 OpenVAS 6.X 版,並以虛擬機器(VirtualBox)型式發佈。大家只要下載→滙入 VirtualBox →啟動 Linux →完成掃描→産生報表。

共通:VirtualBox 安裝

準備 VirtualBox



建立 OpenVAS 6 伺服環境

Debian7 + OpenVAS 6 Server 方案

本版是以 GNU/Linux Debian 7 為基底,加上 2014年2月的 OpenVAS 6 ,本版特色如下:

  1. Debian 7 只提供文字介面。
  2. OpenVAS 具有強力掃描能力,可分析出大多數主機弱點。
  3. 可由 Windows 連線至 OpenVAS6 Server ,直接掃描並下載報表。



運作簡介

DebVas-Use.png



Debian7 + OpenVAS6 VM檔下載



滙入 Virtualbox

  1. 「檔案」/「滙入應用裝置」
  2. 「開啟應用裝置」→挑 DebVas-20140219.ova→「下一步」
  3. 「滙入」.....等....等...等



啟動 VM

  • 注意
    1. 採用 DHCP 自動取得 IP ,建議在有 DHCP 的網路環境下使用。
    2. 只提供純文字介面,所以請依下面順序啟用 OpenVAS 服務。
  • 啟用服務細說
    1. VM 的環境(設定值):網路改成「橋接式模式」
      Deb7vas net bridgemode.png
    2. 啟動 「Debian7」(含 OpenVAS6)
    3. 登入取得 IP Address
      • 登入帳號密碼
        帳號:root
        密碼:d654321
      • 查看取得的 IP Address
        root@debvas:~# ifconfig
Deb7vas ifconfig.png



啟動掃描前置作業

  1. 同步各種弱點資料庫
    • root@debvas:~# openvas-nvt-sync
      註:系統會問要不要整合資料庫(migration),按「y」。
    • root@debvas:~# openvasmd --rebuild
    • root@debvas:~# openvas-scapdata-sync
    • root@debvas:~# openvas-certdata-sync
  2. 啟動 OpenVAS 服務
    • root@debvas:~# service openvas-scanner start
    • root@debvas:~# service openvas-manager start
    • root@debvas:~# service openvas-administrator start
    • root@debvas:~# service greenbone-security-assistant start



進入掃描畫面

  • 找一台同網段之 Windows ,啟動瀏覽器(firefox, chrome...etc),輸入網址「https://xxx.xxx.xxx.xxx:9392」
  • 帳號:admin
  • 密碼:d654321
Deb7vas client login.png



關閉 VM

  • 報表輸出完畢後,要關閉機器運作。請回到 Debian7 內,下關機指令
    root@debvas:~# shutdown -h now



Lubuntu + OpenVAS6 Server 方案

這是在 2013年7月時,以當時的 openvas 6 製作出來的版本,當時的 OpenVAS 6 程式尚未十分穩定,能掃出的弱點非常有限。本版特色:

  1. OpenVAS 6 程式碼較舊,掃描結果不太理想。
  2. Linux 本身有視窗介面 :所有操作皆可在虛擬機內完成。
  3. 完成的報表必須在虛擬機啟動網頁瀏覽器,經由網路送寄出(eMail 或 雲端磁碟)才收得到。


今年仍要使用本版之注意事項

由於此版是在 2013 年建立的,只要是 2014 年以後才下載使用的人,除了下列的執行順序外,要再重建自我簽核的憑證才可。過程如下:

  • admin@lu1204:~$ sudo -i
  • root@lu1204:~# openvas-mkcert-client -m om -i


Lubuntu_OpenVAS6 VM檔下載



滙入 Virtualbox

  1. 「檔案」/「滙入應用裝置」
  2. 「開啟應用裝置」→挑 LuOpenvas6_20130722.ova→「下一步」
  3. 「滙入」.....等....等...等



啟動 VM

  1. VM 的環境(設定值)維持預設狀態就好,不必再做修改
  2. 啟動 Lubuntu_OpenVAS6
  3. 登入帳號密碼
    帳號:openvas
    密碼:654321
  4. 故意去動一下視窗大小,裡面的 Lubuntu Linux 才會依目前的解析度自動調整。



啟動掃描前置作業

  1. 第一步打開終端機,切換成 root 身份
    • 「開始選單」/「附屬應用程式」/「LX終端機」
    • openvas@lu1204:~& sudo -i
    • [sudo] Password for openvas:(←輸入 openvas 的密碼 654321)
    • root@lu1204:~# _
  2. 若「第一次」若「很久沒做過」,請先依序執行下面指令:
    • root@lu1204:~# openvas-nvt-sync ; openvas-nvt-sync
    • root@lu1204:~# openvas-scapdata-sync
    • root@lu1204:~# openvas-certdata-sync
    • root@lu1204:~# openvasmd --rebuild
  3. 再繼續執行以下指令
    • root@lu1204:~# openvassd
      (參加2013-08-09新任資訊組長研習的夥伴,當天失敗是因上面這一行忘了執行,補做就好,給您們帶回的 LuOpenVAS VM 檔是OK的。)
    • root@lu1204:~# openvasmd
    • root@lu1204:~# openvasad
    • root@lu1204:~# gsad --http-only


  • 若出現 「Login failed: OMP Service is down.」
    1. 對 Lubuntu 重開機
    2. 在執行啟動指令前(openvasxx...),先以 root 身份完成以下三個動作。
      • root@lu1204:~# openvasmd --rebuild
      • root@lu1204:~# openvasmd --update
      • root@lu1204:~# openvasmd --migrate



進入掃描畫面

完成了上面手續,便可「縮小」終端機,打開瀏覽器進行掃描的動作。

  1. Lubuntu 桌面介紹
    LubuntuDesktop1.png

  2. 啟動內建的 chrome 瀏覽器,登入弱點掃描-》http://localhost
    Gsdweb login.png

共通:掃描暨報表操作

  1. 開始掃描
    Gsdweb startscan.png
    掃描的過程,必須按 F5 重新整理網頁,才可獲取最新的掃描進度。
  • 預設掃描的方式是採用「full and fast」,比較掃不出大問題。

  • 若要深入掃描,可以點「New task 」圖示,重建一個專案,改變掃描方式,但 target 仍選同一個 IP 位址。
    OpenVAS NewTask.jpg

    OpenVAS NewTask2.jpg



產生報表

  1. 點「日期」進入報表畫面
    OpenVAS6 REP1.jpg

  2. 下載 Full report ,以避免無重大弱點時,報表內容過於精簡
    OpenVAS6 REP2.jpg



Ubuntu + OpenVAS 5 (Stable) 自行安裝篇

由於OpenVAS6 是目前仍開發中的版本,加上筆者提供的虛擬機器版是2013年7月時由原始碼裝起來的,感覺掃描起來的結果不是那麼好。因此筆者在此補一下原 OpenVAS 5 在 Ubuntu 12.04 底下安裝及使用的文件。另外筆者時間有限,所以在文字上的解釋不多,僅依步驟把指令呈現出來,敬請見諒。

系統要求

  • Ubuntu 12.04 任一版本
  • 可以上網(不論是 private ip 或 public ip 皆可)



安裝設定

目前 PPA 上的 OpenVAS Stable 版是 Version 5,OpenVAS 6 仍在發展中,除了功能看起來仍未完善外,在 Ubuntu 12.04 上也不太好裝。因此下文是以 OpenVAS 5 為主:

  • 切換成 root 身份
    root@ub1204:~# sudo -i
  • 安裝
    • 依 PPA 方式加入 OpenVAS 套件庫
      root@ub1204:~# add-apt-repository ppa:openvas/stable
    • 更新套件清單
      root@ub1204:~# apt-get update
    • 安裝所需軟體
      root@ub1204:~# apt-get install openvas-scanner openvas-manager openvas-administrator greenbone-security-assistant openvas-cli openvas-check-setup gsd xsltproc sqlite3
  • 設定
    • 設定金鑰
      root@ub1204:~# openvas-mkcert
    • 下載網路弱點檢測庫(Network Vulnerability Tests :NVT)
      root@ub1204:~# openvas-nvt-sync(耗時良久請耐心等待)
    • 建立系統帳號 om
      root@ub1204:~# openvas-mkcert-client -n om -i
    • 把安裝時自動啟動的 openvas 相關服務關閉
      • root@ub1204:~# service openvas-scanner stop
      • root@ub1204:~# service openvas-manager stop
      • root@ub1204:~# service openvas-administrator stop
      • root@ub1204:~# service greenbone-security-assistant stop
    • 載入 plugins
      root@dns:~# openvassd
    • 整理檢測庫
      • root@ub1204:~# openvasmd --migrate
      • root@ub1204:~# openvasmd --rebuild(耗時良久請耐心等待)
    • 停止 openvassd
      root@ub1204:~# killall openvassd
  • 建立 admin 帳號
    • 啟動 openvas 相關服務
      • root@ub1204:~# service openvas-scanner start(耗時良久請耐心等待)
      • root@ub1204:~# service openvas-manager start
      • root@ub1204:~# service openvas-administrator start
      • root@ub1204:~# service greenbone-security-assistant start
    • 建立屬於 Admin 群組的 admin 帳號
      root@ub1204:~# openvasad -c add_user -n admin -r Admin
      Enter password:(輸入密碼)



OpenVAS5 使用

每次重開機後,請依下面順序執行:

  • 切換成 root 身份
    root@ub1204:~# sudo -i
  • 更新檢測庫
    root@ub1204:~# openvas-nvt-sync
  • 啟動 openvas 相關服務
    • root@ub1204:~# service openvas-scanner start(耗時良久請耐心等待)
    • root@ub1204:~# service openvas-manager start(有時會出現 ERROR 字樣,不要理會)
    • root@ub1204:~# service openvas-administrator start
    • root@ub1204:~# service greenbone-security-assistant start
  • 使用網頁介面登入處理
    • https://localhost:9392/
      帳號:admin
      密碼依設定時自訂的密碼而定
    • 登入後使用的方式與本文前面 OpenVAS 6 的操作大致雷同,請參考前文。唯一較大的差異是,他必須手動增加被掃描的主機:
      1. 增加被掃主機 ip :「Configuration」/「Targets」-> Port List 改選:「OpenVAS Default」
      2. Create Task 後:會自動跳到首頁,點右側 Action 的三角形 Play 小圖示,開始掃描。
      3. 「Scan Management」/「New Task」