AI渗透测试教程:用garak扫描本地大模型并解读报告

AI渗透测试的起点不是直接攻击线上模型,而是先在一个隔离环境里跑一轮基线扫描,搞清楚模型对哪些提示词攻击没有防御。
本文用garak对本地Ollama模型做一次完整扫描,给出安装命令、扫描参数、报告解读和常见失败处理。

先满足三个前提

开始之前确认环境满足以下条件,否则扫描过程会卡在连接阶段。

  • 一台能运行Ollama的Linux或macOS机器,建议内存8GB以上,模型选7B参数以内的小模型。
  • Python 3.10或更高版本,用虚拟环境隔离依赖,避免污染系统Python。
  • 模型只监听本机或内网地址,不要用公网可访问的推理接口做扫描。

检查Ollama是否正常:

ollama list
curl http://127.0.0.1:11434/api/tags

如果第二条命令没有返回JSON,先解决Ollama服务问题,再继续安装garak。

安装garak并确认能识别模型

创建虚拟环境并安装:

python3 -m venv ~/garak-env
source ~/garak-env/bin/activate
pip install -U pip
git clone https://github.com/NVIDIA/garak.git
cd garak
pip install -e .

安装完成后查看版本和可用探测模块:

garak --version
garak --list_probes | head -40

能列出探测模块说明安装成功。
下一步确认garak能否连上Ollama:

garak --model_type ollama --model_name llama3 --probes encoding

这里把llama3替换成你本地ollama list里实际存在的模型名。
如果第一次运行就报连接错误,优先检查Ollama服务地址和模型名,而不是怀疑garak本身。

跑一轮有意义的扫描

不建议一上来就跑全部探测模块,耗时长且报告难读。
先选几个与提示词注入、越狱和编码绕过相关的模块:

garak --model_type ollama --model_name llama3 \
  --probes encoding,dan,promptinject \
  --report_prefix ai-baseline

参数含义:

  • --probes:指定探测模块,encoding测编码绕过,dan测越狱类提示词,promptinject测提示词注入。
  • --report_prefix:报告文件前缀,默认在当前目录生成.report.jsonl和.report.html。

扫描时长取决于模型推理速度,7B模型跑三个模块通常需要几十分钟。
扫描期间不要关闭终端,可以另开窗口观察Ollama日志。

报告里该看什么

扫描结束后会生成HTML报告,用浏览器打开查看。
重点看三个数:

  • 通过率:模型拒绝或正确回应的比例,越高说明防御越好。
  • 失败用例:点开具体条目,看模型输出了什么。失败不等于模型有漏洞,可能是探测用例本身触发了正常回答。
  • 失败分类:按探测模块分组,判断哪类攻击最容易突破,比如编码绕过失败多,说明模型对变形输入不敏感。

把失败用例复制出来,人工复核一遍。
比如模型对base64编码的恶意请求照做,这才是需要记录的基线问题。

常见报错和避坑

连接被拒绝:确认ollama serve正在运行,且--model_name与ollama list输出完全一致。

扫描中途卡住:小内存机器加载大模型会频繁换页,换更小的模型或增加内存。

报告为空:检查命令是否带--report_prefix,以及当前目录是否有写权限。

误把扫描当生产测试:garak的探测用例包含攻击性提示词,只应在隔离环境使用。
生产接口做渗透测试需要单独授权,不能直接跑。

验证扫描是否有效

一个简单的验证方法是拿一个明显不安全的提示词手动测试模型,看它是否照做,再对比garak报告里同类用例的结果。
如果手动测试和报告结论一致,说明扫描链路是通的。

另外检查报告文件是否完整生成:

ls -lh ai-baseline.report.*

两个文件都存在且HTML能正常打开,本轮AI渗透测试的基线扫描就算完成。
后续可以换模型、换探测模块重复这个过程,逐步建立自己的测试记录。

分享到:
上一篇
用 garak 对本地大模型做一轮安全测试
下一篇
AI漏洞扫描配置:用Trivy扫描容器镜像与依赖漏洞
1
系统公告

关于香港云优质服务器IP地址更换的通知

尊敬的客户: 因原IP运营商大幅涨价,为避免成本转嫁至用户,我司决定更换IP服务商。本次更换后,您的续费价格将保持不变,且新IP网络质量与服务标准不受影响。新IP已分配至后台,即刻生效(更换的新IP都是香港原生IPv4)。 涉及 IP 段: 45.192.x.x 旧 IP 停用时间: 2026 年 12 月 1 日
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意