{"id":"d9b55fe7-b167-4c5f-bbdc-bf1bbcc6772d","shortId":"Qe9x9E","kind":"skill","title":"backend-authz-audit","tagline":"Use this skill to audit backend authorization, IDOR, ownership checks, and tenant isolation. Do not use it for smart contracts or legal contract review.","description":"# backend-authz-audit\n\n## English\n\n### Purpose\n\nAudit backend authorization and tenant isolation.\n\n### When to use\n\n- Backend API review.\n- Resource ownership checks.\n- Multi-tenant access-control review.\n- IDOR investigation.\n\n### When not to use\n\n- Smart contracts.\n- CI/CD-only changes.\n- Legal contracts.\n\n### Workflow\n\n1. Identify roles and tenants.\n2. Identify resource identifiers.\n3. Trace resource lookups.\n4. Verify queries are scoped by tenant/user/workspace/org.\n5. Check batch, export, and admin paths.\n6. Output high-confidence findings.\n\n### Output format\n\nUse the canonical finding format.\n\n### Safety rules\n\nAudit-only by default. Do not patch auth model without explicit selected findings and human review.\n\n\n### Canonical finding format\n\n```yaml\nid: F-001\nseverity: Critical | High | Medium | Low | Informational\nconfidence: High | Medium | Low\ncategory:\naffected_code:\nroot_cause:\nexploit_path:\npreconditions:\nimpact:\nevidence:\nminimal_fix:\nregression_test:\nauto_fix_suitability: Safe | Needs Human Review | Do Not Auto-Fix\nnotes:\n```\n\n### v0.6 operational guardrails\n\n- Keep the skill within its stated trigger conditions and the user's explicitly provided scope.\n- Preserve project safety boundaries: audit-only by default; Do not execute exploits, Do not auto-merge, Do not upload private source code or secrets, and do not scan unrelated repositories without explicit user request.\n- Ask for explicit human approval before patching high-risk auth, IAM, governance, funds, terminal, or agent-tooling behavior.\n- Report validation performed, files changed, residual risk, and any skipped future-phase work when finished.\n\n## 中文\n\n### 目的\n\n使用这个 skill 进行后端授权与租户隔离审计。它应该帮助审查者把输入边界、风险证据、影响、修复建议和回归测试组织成可复核的安全输出。\n\n### 触发条件\n\n适用于 backend API、资源所有权、IDOR、多租户访问控制和 admin/user 权限边界。如果请求超出这些边界，先说明范围差异，并选择更合适的 prompt、skill 或人工 review 路径。\n\n### 不适用场景\n\n不要用于智能合约、纯 CI/CD、法律合同或与授权无关的性能 review。不要把这个 skill 当作自动扫描整个仓库、执行 exploit、上传私有源码或 secrets、自动提交、自动推送或 auto-merge 的许可。\n\n### 操作流程\n\n1. 明确用户给出的目标、允许查看的材料和不能触碰的范围。\n2. 收集必要上下文，但只读取完成任务所需的文件、diff、workflow、fixture 或文档。\n3. 识别 trust boundary、privileged operation、sensitive data、preconditions 和 security impact。\n4. 只报告有 evidence 的 finding；缺少上下文时写 question 或 assumption。\n5. 为 confirmed issue 提出 minimal fix，并规划跨用户、跨租户、未授权、admin/user 边界和授权路径仍然通过的测试。\n6. 完成后报告验证输出、残余风险和需要人工确认的事项。\n\n### 安全规则\n\n默认 audit-only。未经明确授权，不 patch、不 commit、不 push、不创建 PR、不 merge。不要执行 exploit，不要访问生产系统，不要打印 secrets。涉及 IAM、authz 模型、资金、治理、terminal 执行或 agent-tooling 权限的修复必须进入人工 review。\n\n### 输出要求\n\n使用 canonical finding format。每个 finding 都要包含 severity、confidence、category、affected_code、root_cause、exploit_path、preconditions、impact、evidence、minimal_fix、regression_test、auto_fix_suitability 和 notes。","tags":["backend","authz","audit","security","playbook","edmund-xl","agent-skills","chatgpt","codex","devsecops","mcp","smart-contracts"],"capabilities":["skill","source-edmund-xl","skill-backend-authz-audit","topic-agent-skills","topic-audit","topic-chatgpt","topic-codex","topic-devsecops","topic-mcp","topic-security","topic-smart-contracts"],"categories":["ai-security-audit-playbook"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/edmund-xl/ai-security-audit-playbook/backend-authz-audit","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add edmund-xl/ai-security-audit-playbook","source_repo":"https://github.com/edmund-xl/ai-security-audit-playbook","install_from":"skills.sh"}},"qualityScore":"0.453","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 7 github stars · SKILL.md body (2,705 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:13:43.475Z","embedding":null,"createdAt":"2026-05-18T13:21:28.806Z","updatedAt":"2026-05-18T19:13:43.475Z","lastSeenAt":"2026-05-18T19:13:43.475Z","tsv":"'-001':135 '1':70,309 '2':75,312 '3':79,319 '4':83,331 '5':90,340 '6':97,352 'access':54 'access-control':53 'admin':95 'admin/user':279,350 'affect':147,400 'agent':244,385 'agent-tool':243,384 'api':45,275 'approv':231 'ask':227 'assumpt':339 'audit':4,9,32,35,113,196,358 'audit-on':112,195,357 'auth':120,237 'author':11,37 'authz':3,31,378 'auto':160,170,207,305,413 'auto-fix':169 'auto-merg':206,304 'backend':2,10,30,36,44,274 'backend-authz-audit':1,29 'batch':92 'behavior':246 'boundari':194,322 'canon':107,129,391 'categori':146,399 'caus':150,403 'chang':66,251 'check':14,49,91 'ci/cd':292 'ci/cd-only':65 'code':148,214,401 'commit':364 'condit':183 'confid':101,142,398 'confirm':342 'contract':24,27,64,68 'control':55 'critic':137 'data':326 'default':116,199 'diff':315 'english':33 'evid':155,333,408 'execut':202 'explicit':123,188,224,229 'exploit':151,203,299,372,404 'export':93 'f':134 'file':250 'find':102,108,125,130,335,392,395 'finish':262 'fix':157,161,171,346,410,414 'fixtur':317 'format':104,109,131,393 'fund':240 'futur':258 'future-phas':257 'govern':239 'guardrail':175 'high':100,138,143,235 'high-confid':99 'high-risk':234 'human':127,165,230 'iam':238,377 'id':133 'identifi':71,76,78 'idor':12,57,277 'impact':154,330,407 'inform':141 'investig':58 'isol':17,40 'issu':343 'keep':176 'legal':26,67 'lookup':82 'low':140,145 'medium':139,144 'merg':208,306,370 'minim':156,345,409 'model':121 'multi':51 'multi-ten':50 'need':164 'note':172,417 'oper':174,324 'output':98,103 'ownership':13,48 'patch':119,233,362 'path':96,152,405 'perform':249 'phase':259 'pr':368 'precondit':153,327,406 'preserv':191 'privat':212 'privileg':323 'project':192 'prompt':284 'provid':189 'purpos':34 'push':366 'queri':85 'question':337 'regress':158,411 'report':247 'repositori':222 'request':226 'residu':252 'resourc':47,77,81 'review':28,46,56,128,166,287,294,388 'risk':236,253 'role':72 'root':149,402 'rule':111 'safe':163 'safeti':110,193 'scan':220 'scope':87,190 'secret':216,301,375 'secur':329 'select':124 'sensit':325 'sever':136,397 'skill':7,178,266,285,296 'skill-backend-authz-audit' 'skip':256 'smart':23,63 'sourc':213 'source-edmund-xl' 'state':181 'suitabl':162,415 'tenant':16,39,52,74 'tenant/user/workspace/org':89 'termin':241,382 'test':159,412 'tool':245,386 'topic-agent-skills' 'topic-audit' 'topic-chatgpt' 'topic-codex' 'topic-devsecops' 'topic-mcp' 'topic-security' 'topic-smart-contracts' 'trace':80 'trigger':182 'trust':321 'unrel':221 'upload':211 'use':5,20,43,62,105 'user':186,225 'v0.6':173 'valid':248 'verifi':84 'within':179 'without':122,223 'work':260 'workflow':69,316 'yaml':132 '上传私有源码或':300 '不':361,363,365,369 '不创建':367 '不要打印':374 '不要执行':371 '不要把这个':295 '不要用于智能合约':290 '不要访问生产系统':373 '不适用场景':289 '中文':263 '为':341 '但只读取完成任务所需的文件':314 '使用':390 '使用这个':265 '修复建议和回归测试组织成可复核的安全输出':271 '允许查看的材料和不能触碰的范围':311 '先说明范围差异':282 '只报告有':332 '和':328,416 '多租户访问控制和':278 '如果请求超出这些边界':281 '它应该帮助审查者把输入边界':268 '安全规则':355 '完成后报告验证输出':353 '并规划跨用户':347 '并选择更合适的':283 '当作自动扫描整个仓库':297 '影响':270 '或':338 '或人工':286 '或文档':318 '执行':298 '执行或':383 '提出':344 '操作流程':308 '收集必要上下文':313 '明确用户给出的目标':310 '未授权':349 '未经明确授权':360 '权限的修复必须进入人工':387 '权限边界':280 '模型':379 '残余风险和需要人工确认的事项':354 '每个':394 '治理':381 '法律合同或与授权无关的性能':293 '涉及':376 '的':334 '的许可':307 '目的':264 '纯':291 '缺少上下文时写':336 '自动推送或':303 '自动提交':302 '触发条件':272 '识别':320 '资源所有权':276 '资金':380 '跨租户':348 '路径':288 '输出要求':389 '边界和授权路径仍然通过的测试':351 '进行后端授权与租户隔离审计':267 '适用于':273 '都要包含':396 '风险证据':269 '默认':356","prices":[{"id":"c83794be-afc7-4e7e-ad25-e965f98f49fc","listingId":"d9b55fe7-b167-4c5f-bbdc-bf1bbcc6772d","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"edmund-xl","category":"ai-security-audit-playbook","install_from":"skills.sh"},"createdAt":"2026-05-18T13:21:28.806Z"}],"sources":[{"listingId":"d9b55fe7-b167-4c5f-bbdc-bf1bbcc6772d","source":"github","sourceId":"edmund-xl/ai-security-audit-playbook/backend-authz-audit","sourceUrl":"https://github.com/edmund-xl/ai-security-audit-playbook/tree/main/skills/backend-authz-audit","isPrimary":false,"firstSeenAt":"2026-05-18T13:21:28.806Z","lastSeenAt":"2026-05-18T19:13:43.475Z"}],"details":{"listingId":"d9b55fe7-b167-4c5f-bbdc-bf1bbcc6772d","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"edmund-xl","slug":"backend-authz-audit","github":{"repo":"edmund-xl/ai-security-audit-playbook","stars":7,"topics":["agent-skills","audit","chatgpt","codex","devsecops","mcp","security","smart-contracts"],"license":"mit","html_url":"https://github.com/edmund-xl/ai-security-audit-playbook","pushed_at":"2026-05-13T02:30:26Z","description":"Local-first, audit-only security review playbook for AI coding agents: prompts, skills, read-only MCP, findings, and regression tests.","skill_md_sha":"1632de383ef7e405147260de1be7a5351525d0a8","skill_md_path":"skills/backend-authz-audit/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/edmund-xl/ai-security-audit-playbook/tree/main/skills/backend-authz-audit"},"layout":"multi","source":"github","category":"ai-security-audit-playbook","frontmatter":{"name":"backend-authz-audit","description":"Use this skill to audit backend authorization, IDOR, ownership checks, and tenant isolation. Do not use it for smart contracts or legal contract review."},"skills_sh_url":"https://skills.sh/edmund-xl/ai-security-audit-playbook/backend-authz-audit"},"updatedAt":"2026-05-18T19:13:43.475Z"}}