Skip to content
Back to skills

Business Logic Abuse Review

ASecurity

Derive abuse cases from module docs and validate them against tests and runtime evidence.

  • 8 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 2, 2026
ai-agentsgo

Security analysis

A100/100

Pro scans all 7 files and shows the line behind each finding

Scanned September 2, 2026

npx -y skills add Eliyce/paqad-ai --skill business-logic-abuse-review --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Business Logic Abuse Review?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Business Logic Abuse Review
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/eliyce-business-logic-abuse-review/badge)](https://www.skillsdirectory.com/skills/eliyce-business-logic-abuse-review)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: business-logic-abuse-review
description: Derive abuse cases from module docs and validate them against tests and runtime evidence.
model_tier: reasoning
triggers:
  - workflow:
      - pentest
cacheable: false
cache_key_inputs:
  - docs/modules/**
  - tests/**
output_format: markdown
input_schema:
  module_doc_paths:
    type: path[]
    required: true
    description: Canonical module docs that describe workflows and state transitions.
  runtime_artifact_paths:
    type: path[]
    required: false
    description: Optional runtime artifacts that help validate the abuse hypotheses.
---

## What It Does

Turns business workflow descriptions into concrete abuse hypotheses so pentest reports can cover replay, bypass, approval skipping, and invalid transitions with project context.

## Use This When

Use this when module docs describe stateful workflows, approvals, payments, exports, retries, invites, or any action that can be abused without breaking auth.

## Inputs

- Read the workflow and state-related module docs first.
- Read `references/abuse-cases.md` before selecting hypotheses.
- Read tests and runtime artifacts that could confirm or refute those hypotheses.

## Procedure

1. Run `scripts/find-workflow-docs.sh` to enumerate candidate workflow/state docs.
2. Extract state changes, approvals, and high-value actions from those docs.
3. For each, pick an abuse-case tag from `assets/abuse-case-categories.txt` (replay, double-submit, invalid-transition, bypass-approval, race, rollback-skip, overspend).
4. Confirm whether tests or runtime evidence cover that abuse path; record the exact missing proof.
5. Format per `assets/output.template.md` and validate with `scripts/lint-findings.sh`.

## Output Contract

- Match `assets/output.template.md`: `## Findings`, `### {{module}} — {{abuse-case-tag}}`, with `Module:`, `Step:`, `Abuse case:`, `Missing proof:`, `Reproduction:` segments.
- Output must pass `scripts/lint-findings.sh` (exit 0).
- Reproduction steps must be concrete enough for a manual retest.

## Escalate / Stop Conditions

- Ask when the workflow is clearly high-value but the module docs do not describe its state transitions.
- Warn when the docs suggest irreversible or financial actions without matching abuse-focused test evidence.
- Do not present a generic “business logic risk” without naming the exact abuse case.

## Resources

- `references/abuse-cases.md`
- `scripts/find-workflow-docs.sh`
- `scripts/lint-findings.sh`
- `assets/output.template.md`
- `assets/abuse-case-categories.txt`
- `agents/openai.yaml`

Files in this skill

  • SKILL.md2.5 KB
  • agents/openai.yaml136 B
  • assets/abuse-case-categories.txt488 B
  • assets/output.template.md480 B
  • references/abuse-cases.md2.8 KB
  • scripts/find-workflow-docs.sh1007 B
  • scripts/lint-findings.sh1.3 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.