iT邦幫忙

2025 iThome 鐵人賽

DAY 27
0
Modern Web

AI 驅動的 Web 資安新時代系列 第 27

Day27 - 人機協作:AI Agent 自動處理,工程師專注決策

  • 分享至 

  • xImage
  •  

在現代資安與系統維運中,事件數量已遠超過人力可負荷的範圍。

AI Agent的角色,正是自動完成大量例行分析與初步分類,讓工程師能將時間投入在

決策與防禦策略上。


工作流程

  1. Collector
    • 概念上負責整合多來源威脅情資(如 AbuseIPDB、OTX、VirusTotal)。
    • 本篇為示範架構,使用本地 express 模擬 Suricata / Wazuh 的事件輸出。
  2. AI Fusion
    • 利用 AI 模型比對「流量中的 IP / Domain」與「威脅情資清單」。
    • 自動判斷異常行為、標註黑名單命中、產出封鎖建議。
  3. Report
    • 將分析結果彙整成兩種報告:
      • 技術報告:列出具體可疑連線與威脅來源。
      • 管理摘要:以表格呈現風險分布與行動建議。

Server - 模擬安全事件來源

1、初始化伺服器

使用 express 建立一個簡單的 HTTP 伺服器。

import express from "express";
const app = express();

2、定義模擬 API

建立 /api/events 路由,回傳模擬的安全事件資料

app.get("/api/events", (req, res) => {
   res.json([
      {
         id: 1,
         type: "Suspicious Login",
         ip: "203.0.113.55",
         location: "Russia",
         severity: "high",
         desc: "Multiple failed login attempts detected."
      },
      {
         id: 2,
         type: "Data Exfiltration",
         ip: "198.51.100.42",
         location: "USA",
         severity: "critical",
         desc: "Large outbound data transfer detected."
      }
   ]);
});

3、啟動伺服器

啟動在 3000 port,啟動後可在瀏覽器驗證 API。

app.listen(3000, () => console.log("伺服器起動: http://localhost:3000"));

Agent - 自動分析與報告

1、初始化 AI 模型

  • node-fetch:用來呼叫本地 API。
  • dotenv:載入 .env 中的金鑰(GEMINI_API_KEY)。
  • GoogleGenerativeAI:Google 提供的 Gemini SDK。
import fetch from "node-fetch";
import dotenv from "dotenv";
import { GoogleGenerativeAI } from "@google/generative-ai";

dotenv.config();
const API_KEY = process.env.GEMINI_API_KEY;
const genAI = new GoogleGenerativeAI(API_KEY);
const model = genAI.getGenerativeModel({ model: "gemini-2.5-flash" });

2、分析函式

AI Agent 會自動抓取事件資料、生成分析報告


上一篇
Day26 - 情資融合:AI Agent 即時分析威脅情資與網路流量
下一篇
Day28 - AI Agent 的限制與風險:不能完全取代人
系列文
AI 驅動的 Web 資安新時代29
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言