跳到主要內容
節省工具箱Jason Tools
專案分享

jt-ipam IP 探測:整合 Nmap 與指紋比對的設備辨識

Jason Cheng 發布 瀏覽 2 次
jt-ipam IP 探測:整合 Nmap 與指紋比對的設備辨識
本文目錄
  1. 探測項目
  2. 判讀依據
  3. 實際探測結果
  4. 安全與限制
  5. 探測結果保存
  6. 結論
  7. 參考資料

「這個 IP 有回應,但到底是什麼設備?上面跑了哪些服務?」

網管應該多少都遇過這種情況。只知道 IP 還不夠,接下來通常得查名稱、掃連接埠、看服務回應,再自己把線索湊起來。技術不難,但要花超多時間。而大多數的 IT 或網管,最缺的除了錢以外,就是時間。

這次幫 jt-ipam 加上了「IP 探測」,把 Nmap、Recog 指紋比對、名稱查詢,以及 IPAM 既有的設備資料整合起來。管理員在 IP 頁面按下「探測」,就會交給該子網路指派的掃描代理執行,再由伺服器整理與判讀結果。

探測項目

  • 名稱查詢
    DNS 反解、NetBIOS、mDNS
  • 服務辨識
    開放的 TCP 連接埠、服務產品與版本
  • 回應資訊
    服務 banner、網頁標題、HTTP Server 標頭、TLS 憑證、SSH 主機金鑰,以及 SMB、RDP 回報的資訊
  • OS 指紋
    TCP/IP 作業系統指紋探測
  • Recog
    有安裝指紋庫時,進一步比對 banner、網頁標題與憑證,補充辨識結果

掃描範圍是 Nmap 最常用的前 1000 個 TCP 埠,再加上 23 個有助於辨識設備的連接埠,涵蓋 PVE/PBS、WinRM、BMC、MikroTik、Docker/Kubernetes,以及攝影機、NVR 等服務。

按下探測後,會在背景同時進行多個面向的探測,可以離開這個頁面,隨時回來檢視進度,完成時也會通知發起的人。

按下探測後,在背景進行多個面向的探測,可以離開頁面隨時回來看進度
按下探測後,在背景進行多個面向的探測,可以離開頁面隨時回來看進度

判讀依據

判讀時有先後順序:

  1. 優先看服務實際回報的產品資訊
  2. 再參考 Nmap 設備類別、特徵埠、OS 指紋與網路卡廠牌
  3. 最後跟 jt-ipam 已有的裝置記錄、LibreNMS、Wazuh、RustDesk、OCS 與虛擬化平台的資料合併判斷

這部分用的是規則與指紋比對,不是丟給 AI 猜,每個結論都會附上依據。設備辨識難免有誤判,所以我很在意「為什麼判斷它是這種設備」也要看得到,方便管理者沿著證據往下查。

實際探測結果

NAS

本文首圖就是對一台 NAS 實際探測的結果,可以看到取得 Synology DSM、DiskStation,以及 OpenSSH、nginx、Samba 等服務。往下還能查看各連接埠讀到的詳細資訊,例如服務 banner 與網頁標題。

網路攝影機

對一台 IPCam 實際探測,綜合網頁伺服器、憑證、ONVIF 服務等多種資訊判斷,推測出這是一台網路攝影機。結果頁的「判斷依據」會列出是哪些證據導向這個結論。

IPCam 探測結果:綜合多種資訊推測為網路攝影機,並列出判斷依據
IPCam 探測結果:綜合多種資訊推測為網路攝影機,並列出判斷依據

iPhone

對 iPhone 實際探測,開放的連接埠很少,但從 OS 指紋、網路卡廠牌與 iphone-sync 服務,最終判斷其類型為手機或平板。

iPhone 探測結果:從 OS 指紋與服務判斷為手機或平板
iPhone 探測結果:從 OS 指紋與服務判斷為手機或平板

安全與限制

主動探測畢竟會碰到別人的設備,這部分設了幾道限制:

  • 只做唯讀識別
    不嘗試登入任何服務
  • 有時間上限
    每次探測最多 300 秒
  • 腳本固定在代理程式內
    使用的 Nmap 腳本寫死在掃描代理裡,伺服器不能任意指定其他腳本
  • 避開工控協定
    刻意排除 Modbus、S7 等工控協定的版本探測,避免影響老舊的 PLC
  • 只限管理員
    探測功能只有管理員可以使用

注意:工控環境的老舊 PLC 對非預期的封包很敏感,即使已經排除工控協定,對生產線網段的設備探測前,仍請先跟現場人員確認。

探測結果保存

每次探測的結果都會保存,也能跟上一次的探測比較,看哪些服務新開、哪些關掉了。關掉分頁不會中斷工作,之後再回來看即可。

把查詢、探測、判讀與歷史結果直接留在 IPAM 裡,下次再遇到這個 IP,就有歷史資料可以接著查,不用重新來一次。

結論

「這個 IP 是什麼設備」這個問題,以前要開好幾個工具、自己拼湊線索;現在按一個按鈕,等幾分鐘,結論和證據都整理好了。

我最在意的不是它猜得多準,而是每個結論都看得到依據。猜錯了可以馬上看出是哪條證據誤導,這樣的工具才能放心交給團隊使用。

參考資料

Jason Cheng

Jason Cheng

企業開源技術顧問,專注架構規劃與實務導入

關於作者 →

延伸閱讀