Fang: protect your env variables from being stealed.

检测技能脚本中是否存在敏感信息泄露风险,提供静态扫描与LLM深度分析。

已扫描
适合谁
开发者、系统管理员
不适合谁
普通用户、无需处理脚本安全的非技术人员
国内可用性
需网络配置。可能需要网络配置或第三方服务可访问。
安装难度
新手友好(★☆☆)。基于终端操作、依赖、API Key 和本地环境要求的初步判断。

安装与下载

openclaw skills install @goog/fang

Skill 说明

命令、参数、文件名以原文为准

FANG — 环境变量防护工具

用于检测技能脚本中环境变量泄露的双阶段审计工具。

脚本说明

脚本文件用途
scripts/fang_audit.py主要审计运行器 —— 静态扫描 + LLM 深度分析
scripts/scan_env.py静态模式扫描器(支持环境变量 / 网络调用 / 编码 / 执行等模式)

第一阶段 —— 静态扫描

使用 scan_env.py 的正则规则对 .py.sh 文件进行扫描。

风险评分标准:

触发项分数
环境变量访问+2
网络调用+3
base64 / 编码操作+2
exec / subprocess 执行+2
  • 总分 ≥ 6 → 高风险
  • 总分 ≥ 3 → 中风险
  • 总分 > 0 → 低风险
  • 总分 = 0 → 无风险

第二阶段 —— LLM 深度分析(可选)

读取目标目录中所有 .py .sh .js .ts .ps1 .bash 脚本文件,并发送至兼容 OpenAI 接口的 LLM 进行分析。LLM 会检查以下内容:

  • 环境变量读取与外发 HTTP/Socket/DNS 请求的组合
  • 混淆手段:base64、十六进制、eval、动态导入等
  • 硬编码的数据外传地址
  • 异常的 subprocess 调用链

使用方法

仅执行静态扫描

python scripts/fang_audit.py <target_dir>

启用 LLM 深度分析

python scripts/fang_audit.py <target_dir> --llm-key sk-... --model gpt-4o-mini

使用兼容 OpenAI 的 API(如本地 Ollama / DeepSeek)

python scripts/fang_audit.py <target_dir> \
  --llm-key any \
  --model deepseek-chat \
  --base-url https://api.deepseek.com/v1

将报告保存到文件

python scripts/fang_audit.py <target_dir> --llm-key sk-... --output report.txt

一次性扫描整个工作区的所有技能

python scripts/fang_audit.py C:/Users/dad/.openclaw/workspace/skills

审计流程(Agent 工作流)

当用户请求审计技能是否存在环境变量泄露时:

  1. 询问目标目录(默认为工作区的 skills/ 文件夹)
  2. 执行第一阶段静态扫描 —— 立即输出摘要报告
  3. 若发现高风险或中风险,询问是否继续执行 LLM 深度分析
  4. 若已提供 --llm-key(来自环境变量或用户输入),自动执行第二阶段
  5. 最终呈现威胁报告:

- 列出每个存在风险的文件及其风险等级和原因

- 标注任何“关键组合”模式(如环境变量读取 + 网络发送)

- 提供建议操作:隔离(高风险)、审查(中风险)、监控(低风险)

风险应对指南

风险等级建议操作
🔴 高风险立即隔离该技能,禁止运行
🟡 中风险使用前需人工代码审查
🟢 低风险监控;通常为良性但应记录
✅ 无风险可安全使用

注意事项

  • LLM 分析会将每个文件截断至 3000 字符以内,以符合令牌限制。
  • 对于大型技能目录,建议逐个技能单独扫描。
  • scan_env.py 仅处理 .py.sh 文件;fang_audit.py 在 LLM 模式下还支持 .js.ts.ps1 文件。
G
@goog

已收录 1 个 Skill

相关推荐