Liquidation Incentive Auditor
When to Use
- Auditing liquidation mechanisms, collateral management, position management
- User mentions: liquidation, incentive, reward, bonus, bad debt, partial liquidation, whale positions, insurance fund, socialization
- Analyzing liquidation profitability, bad debt handling, position sizing
- Reviewing collateral withdrawal restrictions, liquidation economics
Audit Workflow
IMPORTANT: Announce skill usage at the start of analysis
Begin with: "I'm using the audit-liquidation skill to analyze this contract for liquidation incentive and bad debt handling vulnerabilities..."
Scan for liquidation operations
- Search:
liquidate, liquidationBonus, liquidationReward, badDebt, insuranceFund, partialLiquidation, minPositionSize
- Focus: liquidation rewards, position minimums, collateral withdrawals, bad debt handling
Check against vulnerability patterns
- Reference
reference.md for complete checklist
- Compare code against
example.md
Validate exploitability
- Check access control first - grep for
onlyOwner|onlyAdmin|onlyGovernance modifiers
- Can non-privileged actors exploit liquidation incentive issues?
- Is liquidation profitable for trustless actors?
- Can small positions accumulate as bad debt?
- Can users withdraw collateral while maintaining underwater positions?
- Is bad debt handled properly?
- Verify no compensating protections exist
- Downgrade severity if admin-only unless systemic bad debt risk
Generate report
- Use deliverable template below
- Include economic analysis and PoC
- Rank by severity
Core Vulnerability Patterns
See reference.md for full checklist. Key patterns:
- No liquidation incentive → trustless liquidation unprofitable, positions remain underwater
- No incentive for small positions → dust positions accumulate, protocol insolvent
- Collateral withdrawal with positive PNL → removes liquidation incentive, positions unliquidatable
- No bad debt mechanism → insolvent positions have no recovery path
- Partial liquidation bypasses bad debt → liquidators extract value, protocol absorbs loss
- No partial liquidation → whale positions exceed liquidator capacity, remain underwater
Code examples: See example.md
Severity Criteria
Critical: No liquidation incentive causing systemic bad debt accumulation, collateral withdrawal eliminating liquidation possibility, MUST be exploitable by non-privileged actors
High: Missing bad debt handling mechanism, partial liquidation bypassing bad debt accounting, insufficient incentives for small positions, MUST be exploitable by non-privileged actors
Medium: Suboptimal liquidation rewards reducing liquidation speed, missing partial liquidation for large positions, admin-only liquidation configuration issues with cascading bad debt risk
Low: Inefficient reward structures without security impact, admin-only parameter issues without immediate bad debt impact
IMPORTANT: Admin-only liquidation functions (onlyOwner, onlyAdmin, onlyGovernance) are MEDIUM or LOW severity unless:
- Invalid reward parameters cause systemic liquidation failure and protocol insolvency
- Missing validation enables admin to manipulate liquidation incentives for personal gain
- Configuration errors directly lead to bad debt accumulation affecting all users
False Positives - Do NOT Flag
- Protocols with trusted liquidators (not trustless)
- Minimum position sizes with explicit documentation
- Protocols with overcollateralization requirements preventing withdrawals
- Bad debt handling via documented manual admin intervention
- Fixed liquidation rewards with analysis showing profitability
- Admin-only liquidation reward setters (onlyOwner, onlyAdmin) in protocols with trusted admin and documented governance
- Governance-controlled incentive parameters with timelock and analysis showing profitability
- Admin functions for insurance fund management where bad debt socialization is documented
Deliverable Format
MANDATORY: Before deliverable, verify each checklist.md item against codebase. Flag violations as findings.
Use template: templates/report-template.md
Each finding includes: severity, pattern #, file/lines, description, vulnerable code, economic impact analysis, PoC showing unprofitable liquidation or bad debt accumulation, remediation, gas impact.
Key Principles
- Profitability - liquidation must be profitable vs gas costs for trustless actors
- Minimum viability - enforce minimums to ensure liquidation profitability
- Collateral lock - prevent withdrawals that eliminate liquidation incentive
- Bad debt handling - insurance fund or socialization for insolvent positions
- Scalability - partial liquidation for positions exceeding liquidator capacity
Output Guidelines
DO:
- Reference specific lines and functions
- Provide economic analysis (gas costs vs rewards)
- Show PoCs demonstrating unprofitable liquidations
- Quantify bad debt accumulation potential
- Calculate minimum profitable position sizes
DON'T:
- Report intentional trusted liquidator designs
- Flag missing features with alternative mechanisms in place
- Use vague terms ("might be unprofitable")
- Ignore gas cost context and liquidation economics
1---2name: audit-liquidation3description: Audits Solidity liquidation mechanisms for incentive structure vulnerabilities including missing liquidation rewards making trustless liquidation unprofitable, insufficient incentives for small positions causing bad debt accumulation, profitable users withdrawing collateral eliminating liquidation incentive, missing bad debt handling mechanisms, partial liquidation bypassing bad debt accounting, and lack of partial liquidation preventing whale position liquidations4license: MIT5---67# Liquidation Incentive Auditor89## When to Use10- Auditing liquidation mechanisms, collateral management, position management11- User mentions: liquidation, incentive, reward, bonus, bad debt, partial liquidation, whale positions, insurance fund, socialization12- Analyzing liquidation profitability, bad debt handling, position sizing13- Reviewing collateral withdrawal restrictions, liquidation economics1415## Audit Workflow1617**IMPORTANT: Announce skill usage at the start of analysis**1819Begin with: "I'm using the **audit-liquidation** skill to analyze this contract for liquidation incentive and bad debt handling vulnerabilities..."20211. **Scan for liquidation operations**22 - Search: `liquidate`, `liquidationBonus`, `liquidationReward`, `badDebt`, `insuranceFund`, `partialLiquidation`, `minPositionSize`23 - Focus: liquidation rewards, position minimums, collateral withdrawals, bad debt handling24252. **Check against vulnerability patterns**26 - Reference `reference.md` for complete checklist27 - Compare code against `example.md`28293. **Validate exploitability**30 - **Check access control first** - grep for `onlyOwner|onlyAdmin|onlyGovernance` modifiers31 - Can non-privileged actors exploit liquidation incentive issues?32 - Is liquidation profitable for trustless actors?33 - Can small positions accumulate as bad debt?34 - Can users withdraw collateral while maintaining underwater positions?35 - Is bad debt handled properly?36 - Verify no compensating protections exist37 - Downgrade severity if admin-only unless systemic bad debt risk38394. **Generate report**40 - Use deliverable template below41 - Include economic analysis and PoC42 - Rank by severity4344## Core Vulnerability Patterns4546See `reference.md` for full checklist. Key patterns:47481. No liquidation incentive → trustless liquidation unprofitable, positions remain underwater492. No incentive for small positions → dust positions accumulate, protocol insolvent503. Collateral withdrawal with positive PNL → removes liquidation incentive, positions unliquidatable514. No bad debt mechanism → insolvent positions have no recovery path525. Partial liquidation bypasses bad debt → liquidators extract value, protocol absorbs loss536. No partial liquidation → whale positions exceed liquidator capacity, remain underwater5455**Code examples:** See `example.md`5657## Severity Criteria5859**Critical:** No liquidation incentive causing systemic bad debt accumulation, collateral withdrawal eliminating liquidation possibility, **MUST be exploitable by non-privileged actors**60**High:** Missing bad debt handling mechanism, partial liquidation bypassing bad debt accounting, insufficient incentives for small positions, **MUST be exploitable by non-privileged actors**61**Medium:** Suboptimal liquidation rewards reducing liquidation speed, missing partial liquidation for large positions, **admin-only liquidation configuration issues with cascading bad debt risk**62**Low:** Inefficient reward structures without security impact, **admin-only parameter issues without immediate bad debt impact**6364**IMPORTANT:** Admin-only liquidation functions (onlyOwner, onlyAdmin, onlyGovernance) are **MEDIUM or LOW severity** unless:65- Invalid reward parameters cause systemic liquidation failure and protocol insolvency66- Missing validation enables admin to manipulate liquidation incentives for personal gain67- Configuration errors directly lead to bad debt accumulation affecting all users6869## False Positives - Do NOT Flag7071- Protocols with trusted liquidators (not trustless)72- Minimum position sizes with explicit documentation73- Protocols with overcollateralization requirements preventing withdrawals74- Bad debt handling via documented manual admin intervention75- Fixed liquidation rewards with analysis showing profitability76- **Admin-only liquidation reward setters** (onlyOwner, onlyAdmin) in protocols with trusted admin and documented governance77- Governance-controlled incentive parameters with timelock and analysis showing profitability78- Admin functions for insurance fund management where bad debt socialization is documented7980## Deliverable Format8182**MANDATORY:** Before deliverable, verify each `checklist.md` item against codebase. Flag violations as findings.8384Use template: `templates/report-template.md`8586Each finding includes: severity, pattern #, file/lines, description, vulnerable code, economic impact analysis, PoC showing unprofitable liquidation or bad debt accumulation, remediation, gas impact.8788## Key Principles8990- **Profitability** - liquidation must be profitable vs gas costs for trustless actors91- **Minimum viability** - enforce minimums to ensure liquidation profitability92- **Collateral lock** - prevent withdrawals that eliminate liquidation incentive93- **Bad debt handling** - insurance fund or socialization for insolvent positions94- **Scalability** - partial liquidation for positions exceeding liquidator capacity9596## Output Guidelines9798**DO:**99- Reference specific lines and functions100- Provide economic analysis (gas costs vs rewards)101- Show PoCs demonstrating unprofitable liquidations102- Quantify bad debt accumulation potential103- Calculate minimum profitable position sizes104105**DON'T:**106- Report intentional trusted liquidator designs107- Flag missing features with alternative mechanisms in place108- Use vague terms ("might be unprofitable")109- Ignore gas cost context and liquidation economics