iT邦幫忙

2025 iThome 鐵人賽

DAY 19
0
Security

安全助手養成 Vibe UP系列 第 19

Day 19:用 VirusTotal 補強外部資產監控

  • 分享至 

  • xImage
  •  

🎯 今日目標

建置一個 N8N workflow,定期使用 VirusTotal API 對從 Shodan 抓到的外網資產(IP / domain / URL)做補強偵測與情資豐富(threat verdict、malware / malicious indicators、historical detections),並將結果與 Shodan 資料合併後寫入資料庫/Google Sheets、及時通報高風險項目。


1️⃣ 問題場景

  • Shodan 主要告訴你「哪個 IP 在外面能被看到、哪些 port/服務暴露」,但無法直接說明該 host 是否被標記為惡意或跟惡意樣本有關。
  • 需要把「可被發現的暴露」與「被惡意標註/含惡意樣本的跡象」做關聯,才能判定優先處理的風險。
  • VirusTotal(或類似情資來源)能提供 URL/IP/domain 的惡意判定、被上傳的 malware 樣本、以及和其他情資來源的關聯;把它加進來可顯著降低誤判並提升處理優先度。

2️⃣ 模組定位

  • 輸入:之前Shodan 結果(IP、port、domain、banner)或新收集到的 domain/URL list。

  • 處理

    • 呼叫 VirusTotal API 查詢目標(IP / domain / URL / file hashes),取得 malicious verdict、檢出引擎列表、相關 sample、whois / resolution 歷史等資料。
    • 根據 VT 回傳結果計算 threat_score(範例:malicious engines count、last_seen、有無 sample、是否與 known C2 有關等)。
    • 與 Shodan 的暴露資料合併,產生完整記錄供後續比對/通報。
  • 輸出:將豐富後的紀錄寫入 Google Sheets/DB、對 threat_score 高的項目發出 P1 通報(Discord/Email),或建立工單。


3️⃣ 技術實作

virustotal API文件 curl範例,先複製
https://ithelp.ithome.com.tw/upload/images/20251003/20077752MFxBhug5nZ.png

在N8N HTTP Request中點選Import cURL中把複製內容貼到
https://ithelp.ithome.com.tw/upload/images/20251003/200777527Iihcv3MQg.png

Virustotal 免費配額
Request rate 4 lookups / min
Daily quota 1000 lookups / day
Monthly quota 31 K lookups / month


4️⃣ 預期收穫

  • 情資豐富化:將 Shodan 的暴露資訊轉化為「有無惡意跡象」的具體判斷,提高決策準確性。
  • 優先度更精準:只有當 Shodan 顯示暴露且 VT 判定有惡意或被 sample 關聯時才升為 P1,降低通知噪音。
  • 可稽核的判斷流程:每一筆 VT 查詢與判斷依據都有紀錄(方便復盤與稽核)。
  • 跨情資關聯:未來可把 VT 結果和 CISA/KEV、威脅情報 feed、內部 log 做關聯分析,形成更完整的情資視圖。


上一篇
Day 18:被動外部資產異動檢測 — 自動比對主機清單並通報異常
下一篇
Day 20:以 n8n 範例為案例 — AI 驅動的 Domain/IP 安全檢查整合設計
系列文
安全助手養成 Vibe UP20
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言