如果想知道主機目前正在運作的服務,相信多數的網管人員腦海裡浮現的第一個解決方案,應該就是利用Nmap掃描軟體來掃描系統。自Nmap軟體推出以來,挾著其優異的掃描能力及免費的優點,早已成為掃描軟體的代名詞。
圖3所示為執行的範例(..bak為備份檔案),其中的「-p 80」代表僅針對通訊埠80的服務進行掃描,如果讀者的網站伺服器有支援SSL功能,便可設定通訊埠為443(-p 443)。
|
▲圖3 http-backup-finder執行範例。 |
http-auth
在很多的情況下,所開發的網頁程式需要權限的控管,而在HTTP通訊協定中其實也有提供許多利用認證的方式來控管網頁。
當設定完成相關的網頁認證後,也可利用Nmap所提供的「http-auth」Script來掃描網頁,以確定所使用的網頁認證的認證方式。此Script僅提供一個參數,如下所述:
圖4為執行範例,其中的「Basic realm」為其所使用的網頁認證型式。
|
▲圖4 http-auth執行範例。 |
http-email-harvest
在個人資料保護法通過後,國人對於個人的隱私也越來越重視。也因此網站管理者對於網站所公開的資訊也必須相當注意,以免在無意間洩漏了個人的相關資訊,例如E-mail資訊經常在管理人員的疏忽下而被置放在網站的公開資訊中。
Nmap提供了「http-email-harvest」Script,可用來擷取網站內的E-mail資訊,以便得知網站中有多少的E-mail相關資訊。「http-email-harvest」Script提供了如表5所示的參數。
表5 http-email-harvest使用參數
|
▲圖5 http-email-harvest執行範例。 |
如圖5為「http-email-harvest」Script的執行範例,利用這個Script可以取得網站中已公開的E-mail相關資訊。
http-brute
一般網站經常會利用HTTP通訊協定中的基本認證來對相關的網頁進行控管,如果帳號及密碼設定得過於簡單,就非常可能被暴力破解法所破解(利用猜測帳號密碼的方式進行攻擊)。
Nmap也提供了一種利用猜測帳號密碼來測試基本認證的方式,可用來測試基本認證中的帳號…密碼強度是否足夠。「http-brute」Script所提供的參數如表6所述。
表6 http-brute可用參數
如圖6為執行範例,其中的指令為針對本機上的基本認證網頁,以暴力猜測法的方式來測試是否可取得帳號及密碼等資訊。
|
▲圖6 以暴力猜測法來測試是否能夠取得帳號及密碼。 |
http-methods
http-methods這個Script主要是應用來檢測網站伺服器上所支援的方法(Method),常用的方法如表7所述。
表7 http-methods常用方法
執行指令如圖7所示,可以檢查網站伺服器上是否有危險的方法。
|
圖7 檢查網站伺服器上是否存在著危險的方法。 |
在一般正常上線運作的網站伺服器中,是不應該開啟DELETE與PUT方法,因為此兩種方法都會提供惡意的使用者上傳或刪除網路伺服器內檔案的權限。
但在實務經驗上,經常會發現有些網站伺服器在開發程式的階段,為了方便而開啟了DELETE與PUT等相關方法,但在程式開發完成正式上線之後,卻忘了關閉這些危險的方法,因而讓惡意使用者可以利用這些方法對網站伺服器上的檔案造成極大的危害。
結語
本文僅說明幾個常用的Script,事實上這個版本的Nmap具備了四百多個的Script,提供不同的掃描思惟。就「弱點掃描」的角度而言,筆者認為其中有幾個Script(如偵測預設檔案、備份檔案等),就可用來與市面上幾個較有知名度的弱點掃描軟體互補,提供系統更周全的資安健檢,此部分就請有興趣的讀者繼續研究吧!
<本文作者:吳惠麟,多年資安經驗,喜好利用開源碼建構相關解決方案。現任職於台灣學術網路危機處理中心(TACERT)。著有「資訊安全原理與實驗」。TACERT官方網址:http://cert.tanet.edu.tw/>