本实验 = 渐进式作品的 M6(核心里程碑)。需先完成 M0-M5(一个已加固、带日志/蜜罐的靶场 Web 应用)。
capstone/seed/ 的
app.py(已含 /api/agent 端点 +
工具白名单护栏钩子)。scikit-learn(AI 检测组件)。给应用加一个带工具/数据访问的 AI 能力(任选其一):智能客服/FAQ(RAG)、工单摘要、自然语言查日志。
@app.post("/api/agent")
def agent(q: str):
docs = rag.retrieve(q) # 对抗侧会投毒这里
ans = llm.chat(q, context=docs, tools=[get_order])
audit.log(user=current_user, q=q, ans=ans)
return ans用 ML-IDS / 用户和实体行为分析(User and Entity Behavior Analytics,UEBA)提升防御(呼应课件 03):对登录/请求行为用 Isolation Forest 打风险分,高分触发告警。
from sklearn.ensemble import IsolationForest
# 特征:[小时, 是否国内, 频率, 失败次数]
model = IsolationForest(contamination=0.02).fit(X_normal)
risk = -model.score_samples(X_live) # 越大越异常ALLOW = {"search", "get_order"}; DENY = {"email", "http_post", "rm"}
def guard(a):
if a.tool in DENY: return block(a)
if a.tool not in ALLOW: return ask_human(a) # 人在回路
return run(a)本里程碑是 AI 双向核心,由 AI
助教(ns4ai-review)按 §4 量规重点审 AI
赋能与对抗双向。提交时注意:
exfil/read_file
等工具不得有真实副作用(仅返回说明串);所有攻击仅在自己靶场。deepseek-v4-flash/Qwen/GLM/Kimi);本里程碑即「用
AI(赋能)→ 攻 AI(注入/滥用)→ 防
AI(护栏+检测)」的闭环,三面均须有证据。report.md
对照簇⑥·L1/L2(双向),每项附证据,「无虚点亮」。| 维度 | 权重 | 优秀 [90,100] | 合格 [60,90) | 不合格 [0,60) |
|---|---|---|---|---|
| 完成度 | 0.25 | LLM 功能 + AI 检测均集成 + 分支
milestone/m6 + MR |
仅其一 | 无 |
| 深度 | 0.25 | 有数据对比 + 局限分析 | 有基本度量 | 仅「能跑」 |
| AI 双向 | 0.25 | ≥2 类概念验证 + 加固证据 | 1 类概念验证 | 无攻击 |
| 安全严谨 | 0.15 | 白名单/HITL/审计齐备 | 部分护栏 | 无加固 |
| 自评 | 0.10 | 能力自评与作品一致 | 有自评 | 无自评 |
交付物:代码(分支 milestone/m6 +
MR)、攻击概念验证、度量报告(赋能 Precision/Recall +
局限;对抗加固前后对比)、能力自评。
参考:
capstone/m6-ai.md、课件01-overview/02-ai-as-target/03-ai-empower、study/unit06-guide.md、study/ai-pentest-resources.md。