章节摘要:本章不讲具体技术,先立世界观。Agent 与传统软件的根本差异在于:它产出的命令由不可信输入塑造,等价于执行互联网上任意人提交的代码——所以「跑个容器」之前,必须先想清楚信任边界画在哪。本章把 Agent 的攻击面归纳为文件系统逃逸、网络外联、内核漏洞、资源耗尽四类,给出「规则 → 沙箱 → 审批」三层防线总图,并交代一个现实:主流编码智能体普遍采用分级信任加审批门,而非全量沙箱——这本书要做的,是把沙箱这条腿补齐。章末给出两条学习路线(半天最小可用线、全书纵深线)与 Docker 环境准备,让后续每一章都能边读边跑。
一次 Agent 命令执行的完整链路 用户任务 ─▶ Agent(模型)─▶ 决定执行命令 ─▶ 执行环境 ─▶ 副作用 ▲ │ │ ▼ 不可信输入(网页 / issue / 三层防线 依赖描述 /恶意 Skill) ① 规则:allowlist 秒判,拦「不该做的」 ② 沙箱:物理边界兜底,拦「做了也出不去」 ③ 审批:高危动作人类确认,拦「机器拿不准的」 (审计贯穿三层:事后可回放)
一句话金句:不要问 Agent 会不会作恶,要问它作恶时能碰到什么。
(文字流程图)不可信输入 ──▶ 模型决策 ──▶ 三层防线逐级过滤 ──▶ 受控副作用。
建议先读 0.1 立概念再读 0.2 备环境;赶时间的读者可只读 0.1 的第三、四节,然后直接进第 1.2 节的决策树。
本章代码量几乎为零,但概念密度全书最高——后面每一章都会回头引用本章的「四类攻击面」与「三层防线」两个词表。
┌─────────────────────┐ ┌─────────────────────────┐ │ 0.1 信任边界 │ │ 0.2 学习路线与环境 │ │ 回答「为什么需要沙箱」 │ ──▶ │ 回答「怎么开始动手」 │ │ 攻击面 + 三层防线总图 │ │ 路线选择 + 环境自检 + 约定 │ └─────────────────────┘ └─────────────────────────┘ │ 立概念 │ 备环境 └──────────────┬───────────────┘ ▼ 第 1 章 隔离模型选型(把「沙箱」拆成三级)