用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/znlgis/my-deepseek-config --skill security-review命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | security-review |
| description | 合并前对代码变更进行安全漏洞审计。在审查 diff / PR、加固代码,或任务提到安全、注入、XSS、SSRF、密钥、认证、反序列化、路径遍历时使用。提供具体清单与汇报格式;永不静默自动修复。 |
针对变更集捕获真实漏洞的聚焦检查清单。先审查 diff(实际变更行及其调用的代码),仅在发现指向别处时才扩大范围。只汇报发现;不修改代码,除非明确要求。
不可信输入流入 SQL、Shell、OS 命令、eval、模板引擎或 LDAP。寻找字符串拼接而非参数化查询 / 参数数组。
exec()、eval()、spawn()、模板字面量拼接 SQL / 命令、shell: true用户数据显示到 HTML / JS / DOM 中未转义。检查 innerHTML、dangerouslySetInnerHTML、未转义的模板插值。
v-html、innerHTML、insertAdjacentHTML、document.write、直接操作 DOM缺少认证、缺少所有权/权限检查、IDOR(按 id 操作对象而不验证调用者持有它)、权限提升、信任客户端提供的角色。
role 字段硬编码的 API Key、Token、密码、私钥或连接串;密钥被日志记录或提交。应从 env / 密钥管理器获取,绝不写入源码。
sk-、x-api-key、password、secret、token、JWT 密钥、数据库连接串用户可控路径未经规范化 / 白名单直接拼接(../ 逃逸、符号链接跟踪)。
path.join(userInput, ...)、fs.readFile(req.query.file)、文件下载未限定目录向用户提供的 URL / 主机发起服务端请求未做白名单校验;可能访问内部元数据端点。
fetch(userUrl)、axios.get(userInput)、Webhook URL 未校验不可信数据喂给不安全反序列化器(pickle、原生 YAML loader、Java/PHP 对象反序列化)。
JSON.parse 本身安全,但 eval() 解析 JSON、yaml.load(非 safeLoad)、pickle.loads弱/自动选择算法(密码用 MD5/SHA1)、硬编码 IV、ECB 模式、缺少 TLS 验证、Token 用可预测随机数。
Math.random() 用于 Token、createHash('md5') 用于密码、rejectUnauthorized: falsePII / 密钥出现在日志、错误消息或 API 响应中;详细堆栈跟踪泄露给客户端。
console.log(user)、错误响应中直接返回 err.message、res.status(500).json({ error: err.stack })新增包:是否可信、是否锁定版本、是否有已知 CVE?警惕拼写欺骗。
npm install 陌生包、pip install 未锁定版本、Dockerfile 中 latest 标签无界循环、无界请求/响应体大小、缺少超时、正则灾难性回溯 (ReDoS)。
while(true)、正则 /(a+)+b/ 模式、timeout: 0、无 maxBodySize 限制对文件、余额或认证状态的检查-然后-操作,未加锁。
fs.existsSync 后 fs.writeFile、数据库"读取余额 → 判断 → 扣款"非原子每项发现按以下格式:
[severity: high|medium|low] <标题>
location: path/to/file.ext:LINE
issue: <出了什么问题,以及触发它的输入>
impact: <攻击者获得了什么>
fix: <最小化的具体修复方案>
按严重度降序排列。如果审查后没有可行动的发现,直说没有——不填充低价值条目。