defending-applications

star 228

Application security defense knowledge for builders, not pentesters. Covers Web/API/GraphQL hardening (XSS/SQLi/SSRF/IDOR/BOLA/Mass Assignment/deserialization/upload/path traversal), authentication/authorization (OAuth 2.0/OIDC/JWT/Session/Cookie/SAML/SSO), and LLM application security (prompt injection, jailbreak, RAG poisoning, agent privilege escalation, output filtering). Use when designing or reviewing application-layer defenses, fixing CVE-class bugs in your own code, hardening auth flows, or threat-modeling LLM-powered features. Do NOT use for offensive testing (see securing-systems/pentest), incident response (see securing-systems/blue-team), or infra-layer hardening (see provisioning-infrastructure).

telagod By telagod schedule Updated 5/21/2026

name: defending-applications description: Application security defense knowledge for builders, not pentesters. Covers Web/API/GraphQL hardening (XSS/SQLi/SSRF/IDOR/BOLA/Mass Assignment/deserialization/upload/path traversal), authentication/authorization (OAuth 2.0/OIDC/JWT/Session/Cookie/SAML/SSO), and LLM application security (prompt injection, jailbreak, RAG poisoning, agent privilege escalation, output filtering). Use when designing or reviewing application-layer defenses, fixing CVE-class bugs in your own code, hardening auth flows, or threat-modeling LLM-powered features. Do NOT use for offensive testing (see securing-systems/pentest), incident response (see securing-systems/blue-team), or infra-layer hardening (see provisioning-infrastructure). user-invocable: false

应用安全防御 · 镇魔甲

开发侧防御秘典:站在 builder 一侧,把漏洞挡在合并前。 不教渗透,只教"如何写出杀不动的代码"和"如何把已生漏洞最小代价闭环"。 信级:项目源码/lock 文件 > 框架官方安全文档 > CVE/CWE > 训练记忆(标 [unverified])。

路由

意图 加载 触发词
Web/API/GraphQL 漏洞防御 web-api-appsec XSS, SQLi, SSRF, BOLA, IDOR, Mass Assignment, GraphQL, 反序列化, 文件上传, 路径遍历, XXE, OWASP
认证授权与会话 oauth-and-sessions OAuth, OIDC, JWT, SSO, SAML, Session, Cookie, PKCE, refresh token, kid 注入
LLM 应用安全 llm-appsec Prompt 注入, 越狱, 越权调用, RAG 投毒, agent tool 滥用, 输出过滤, jailbreak

何时使用

场景 使用本 skill 使用其他
review 自家代码、修 CVE、设计鉴权 ✅ 本 skill
写 SAST 规则、Semgrep 模式 ✅ 本 skill + securing-systems/code-audit
设计 LLM 应用的 guardrail ✅ llm-appsec + building-agent-systems/llm-security
红队渗透、写 PoC 攻击别人 securing-systems/pentest
处理已发生的入侵、日志取证 securing-systems/blue-team
容器/K8s/CI 加固 provisioning-infrastructure
设计零信任、身份架构 部分(OAuth/SSO 内) architecting-security

联动

  • securing-systems/code-audit:本 skill 给"怎么修",code-audit 给"怎么找"。
  • securing-systems/pentest:攻方视角验证本 skill 的修复是否真正闭环。
  • analyzing-security:自动化扫描胶水;本 skill 提供规则语义。
  • building-agent-systems/llm-security:agent 内部细节;本 skill 关注应用边界。
  • designing-architectures:威胁建模、API 设计;本 skill 关注落地代码。

执行链

威胁建模 → 入口梳理 → source→sink 追踪 → 防御层选型 → 最小修复 → 回归测试 → 检测信号埋点

每个漏洞的修复必须回答三问:

  1. 入口在哪:用户可控数据从哪进来(route/header/cookie/body/file/upstream API/RAG doc)。
  2. 信任边界在哪:何处由"untrusted"变"trusted",是否有显式校验。
  3. 检测信号是什么:修复后若被绕过,哪条日志/指标会响。

铁律

  1. 服务端为真:前端校验只是 UX,所有 authz/sanitize 必须在服务端再做一次。客户端代码即攻击面。
  2. deny by default:authz、CORS、CSP、SQL where 子句、文件类型——所有名单皆 allowlist 优先,blacklist 是反模式。
  3. 不信任 ID:URL/body 里的 object_id 永远先做 ownership 校验,再做业务逻辑。BOLA 是 API 漏洞之王。
  4. 可观测优先于完美防御:每个高风险路径必须有结构化日志 + 速率/异常告警,被绕过时能 5 分钟内发现。
  5. 修复要带回归:每个漏洞修复必须配 1 个攻击用例测试 + 1 个正常用例测试,否则六个月后必复发。

输出约束

  • 漏洞示例代码统一 ❌ 错代码 / ✅ 正代码 对比,错代码必须能跑通漏洞场景。
  • 攻击演示用 example.com / RFC 5737 网段(192.0.2.0/24);token/密钥用 <REDACTED>
  • 不输出针对未授权目标的 ready-to-fire payload;防御示例可含等价 payload 用于回归测试。
  • 给修复方案时同时给:检测信号(log key / metric name)、回归测试骨架、性能/兼容回归点。
Install via CLI
npx skills add https://github.com/telagod/code-abyss --skill defending-applications
Repository Details
star Stars 228
call_split Forks 30
navigation Branch main
article Path SKILL.md
More from Creator