Borrowing it
Nothing to install: this file belongs to MisonL/Ling. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/MisonL/Ling/main/.agents/skills/vulnerability-scanner/SKILL.mdgit clone --depth 1 https://github.com/MisonL/LingWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/misonl/ling/vulnerability-scanner)<a href="https://agentmods.dev/skills/misonl/ling/vulnerability-scanner"><img src="https://agentmods.dev/badge/skills/misonl/ling/vulnerability-scanner.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00032 | $0.02522 |
| Opus 5 | $0.00016 | $0.01261 |
| Sonnet 5 | $0.00006 | $0.00504 |
| Haiku 4.5 | $0.00003 | $0.00252 |
Grade A, and why
vulnerability-scanner scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 277 lines — stays where its author put it; the contents beside it link to each section on GitHub.
漏洞扫描与分析
像攻击者一样思考,像专家一样防守。保持对 2025 威胁态势的感知。
运行时脚本
用于自动化验证:
| 脚本 | 用途 | 用法 |
|---|---|---|
scripts/security_scan.py |
验证安全原则是否已落地 | python scripts/security_scan.py <project_path> |
参考文件
| 文件 | 用途 |
|---|---|
| checklists.md | OWASP Top 10、认证、API、数据保护检查清单 |
1. 安全专家思维
核心原则
| 原则 | 应用 |
|---|---|
| Assume Breach(假设已失陷) | 按“攻击者已在内网”来设计 |
| Zero Trust(零信任) | 永不默认信任,始终验证 |
| Defense in Depth(纵深防御) | 多层防护,避免单点失败 |
| Least Privilege(最小权限) | 仅授予必要访问权限 |
| Fail Secure(安全失败) | 出错时默认拒绝访问 |
威胁建模问题
开始扫描前先问:
- 我们要保护什么?(Assets 资产)
- 谁会攻击我们?(Threat Actors 威胁主体)
- 他们会如何攻击?(Attack Vectors 攻击向量)
- 影响是什么?(Business Risk 业务风险)
2. OWASP Top 10:2025
风险类别
| 编号 | 类别 | 关注点 |
|---|---|---|
| A01 | 访问控制失效(Broken Access Control) | 谁能访问什么?IDOR、SSRF |
| A02 | 安全配置错误(Security Misconfiguration) | 默认配置、Header(响应头)、暴露服务 |
| A03 | 软件供应链安全 🆕(Software Supply Chain) | 依赖、CI/CD、构建完整性 |
| A04 | 密码学失效(Cryptographic Failures) | 弱加密、密钥暴露 |
| A05 | 注入(Injection) | 用户输入是否可进入系统命令 |
| A06 | 不安全设计(Insecure Design) | 架构层缺陷 |
| A07 | 认证失效(Authentication Failures) | 会话与凭据管理 |
| A08 | 完整性失效(Integrity Failures) | 未签名更新、数据篡改 |
| A09 | 日志与告警缺失(Logging & Alerting) | 监控盲区、缺少告警 |
| A10 | 异常条件处理失效 🆕(Exceptional Conditions) | 错误处理、Fail-open(失效即放行)状态 |
2025 关键变化
2021 -> 2025 变化:
+-- SSRF 并入 A01(访问控制)
+-- A02 权重提升(云/容器配置)
+-- A03 新增:供应链(重点)
+-- A10 新增:异常条件
+-- 重心迁移:根因优先于症状
3. 供应链安全(A03)
攻击面
| 向量 | 风险 | 需要确认的问题 |
|---|---|---|
| 依赖(Dependencies) | 恶意包投毒 | 新依赖是否审计? |
| 锁文件(Lock files) | 完整性攻击 | 是否已提交并受保护? |
| 构建流水线(Build pipeline) | CI/CD 被入侵 | 谁有修改权限? |
| 包仓库(Registry) | Typosquatting | 来源是否可信可验证? |
防御原则
- 校验包完整性(checksum)
- 锁定版本并审计升级
- 关键依赖使用私有仓库
- 对构建产物签名并校验
4. 攻击面建模
需要建模的对象
| 类别 | 内容 |
|---|---|
| 入口点(Entry Points) | API、表单、文件上传 |
| 数据流(Data Flows) | 输入 -> 处理 -> 输出 |
| 信任边界(Trust Boundaries) | 鉴权/授权校验位置 |
| 资产(Assets) | 密钥、PII、业务数据 |
What ships with it
2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago First seen · 277 lines · 32 tokens per session scan A a170ec22c91c
vulnerability-scanner is a skill published in the GitHub repository MisonL/Ling (8 stars, last pushed 5mo ago), licensed MIT. It adds 32 tokens to every session and 2,522 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
local-ai-agents
Build local-first AI agents that run entirely on a developer workstation with Microsoft Foundry Local and Qwen function-calling models. Covers Small Language Models (SLMs), the OpenAI-compatible local endpoint, sandboxed local tools, local RAG with Chroma, local MCP servers, hybrid cloud/local routing, and the…
next-cache-components-adoption
Turn on Cache Components in a Next.js app and resolve the blocking routes it surfaces. Use when the user wants to enable, adopt, or migrate to Cache Components, flip the cacheComponents flag, work through a flood of blocking-prerender / instant validation errors, run the cache-components-instant-false codemod, or…
next-partial-prefetching-adoption
Turn on Partial Prefetching in a Next.js app and work through the insights it surfaces. Use when the user wants to enable or adopt Partial Prefetching, flip the partialPrefetching flag, opt routes in with export const prefetch = 'partial', audit Link prefetch={true} behavior, preserve existing prefetched UI with…
chronicle
Analyze Copilot session history for standup reports, usage tips, session search, and session reindexing. Use when the user asks for a standup, daily summary, usage tips, workflow recommendations, wants to search or find past sessions by keyword/file/PR, wants to reindex their session store, or asks about deleting…
babysit-pr
Babysit a GitHub pull request after creation by continuously polling review comments, CI checks/workflow runs, and mergeability state until the PR is merged/closed or user help is required. Diagnose failures, retry likely flaky failures up to 3 times, auto-fix/push branch-related issues when appropriate, and keep…