极客前沿

AI 入门实战:从零搭建你的第一个检测模型

2026-05-13 01:34
DEV Machine Learning
查看原文

学会安装 Python、pandas 和 scikit-learn,用真实安全日志跑通第一个异常检测模型。

很多 AI 教程都是写给数据科学家看的,用鸢尾花数据集做分类,跟安全分析完全没关系。但作为安全从业者,你最需要的是用 AI 检测恶意流量、识别攻击行为。这篇教程会带你从零开始,装好工具、跑通第一个模型,让你亲手感受 AI 在安全场景中的价值。

准备环境:装好 Python 和必备库

首先,你需要一台能联网的电脑(Windows / macOS / Linux 都可以)。

  • 下载 Python(一种编程语言,AI 开发最常用它)。建议装 3.9 或 3.10 版本,去 python.org 下载安装包,安装时勾选“Add Python to PATH”。
  • 打开终端(Windows 搜“cmd”或“PowerShell”,macOS 搜“终端”),输入 python --version,看到版本号就说明装好了。
  • 安装 pandas(处理表格数据的工具)和 scikit-learn(机器学习库)。在终端里依次执行:pip install pandas scikit-learn。如果提示“pip 不是命令”,试试 python -m pip install pandas scikit-learn

下载真实安全日志数据集

为了贴近实战,我们用 Zeek 日志(网络流量监控工具生成的记录)来练习。你可以从 GTK Cyber 的 GitHub 仓库 下载一份示例数据,包含正常的 HTTP 流量和 C2(命令与控制)通信。

Tutorial Image
  • 点击仓库页面的绿色“Code”按钮,选择“Download ZIP”。解压后得到一个 CSV 文件。
  • 把文件放到一个容易找到的文件夹,比如桌面上的“ai-lab”文件夹。

编写代码:加载数据并训练异常检测模型

现在我们来写第一段代码。在“ai-lab”文件夹里新建一个文本文件,命名为 first_model.py,用记事本或任何代码编辑器打开,粘贴以下内容:

  1. 导入库:import pandas as pd(让 pandas 可用)和 from sklearn.ensemble import IsolationForest(引入孤立森林算法,它能把异常数据挑出来)。
  2. 加载数据:df = pd.read_csv('your_file_name.csv')(把文件名换成你下载的那个)。
  3. 选择特征:features = df[['duration', 'orig_bytes', 'resp_bytes']](用三个数值列作为判断依据)。
  4. 训练模型:model = IsolationForest(contamination=0.1)(假设 10% 是异常)然后 model.fit(features)
  5. 预测异常:df['anomaly'] = model.predict(features)(-1 表示异常,1 表示正常)。
  6. 查看结果:print(df[df['anomaly'] == -1])(打印出所有被标记为异常的记录)。

保存文件后,在终端里切换到“ai-lab”文件夹(用 cd 桌面/ai-lab),然后执行 python first_model.py。如果看到输出了几行数据,就说明模型跑通了!

验证成功:看看你发现了什么

输出的那些行就是模型认为“异常”的网络连接。你可以对照原始日志,看看它们是否真的是恶意流量。如果全是正常数据,可以调整 contamination 参数(比如改成 0.05)再试一次。

接下来你可以尝试:用 RandomForestClassifier(另一种机器学习算法)来分类恶意 URL,或者把 Zeek 日志换成你自己的 EDR 数据。记住,每一步都要先理解数据长什么样,再让模型去学。

内容来源

DEV Machine Learning

发布时间

2026-05-13 01:34

返回 AI技术