insufficient-gas-griefing

Detect insufficient gas griefing vulnerabilities in Solidity smart contracts.

1|1|Updated Feb 18, 2026
One-click install
npx skills add https://github.com/Apegurus/solidity-argus --skill insufficient-gas-griefing
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: insufficient-gas-griefing
Source: https://github.com/Apegurus/solidity-argus/tree/main/skills/vulnerability-patterns/insufficient-gas-griefing
Command: npx skills add https://github.com/Apegurus/solidity-argus --skill insufficient-gas-griefing

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill addresses a vulnerability where a contract can censor user actions by forwarding insufficient gas to a sub-call, causing it to fail while consuming a nonce or marking the action as executed.

Core Features & Use Cases

  • Vulnerability Identification: Detects patterns in meta-transactions, multisigs, and relayers where gas forwarding is controlled by the executor.
  • Censorship Prevention: Helps identify and remediate scenarios where a user's intended action can be permanently blocked.
  • Use Case: Auditing a multi-signature wallet contract to ensure that an execute function doesn't allow a malicious signer to forward too little gas to a transaction, thereby preventing it from completing and wasting the transaction fee.

Quick Start

Analyze the provided Solidity code for insufficient gas griefing vulnerabilities.

Frequently Asked Questions about insufficient-gas-griefing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
What smart contract patterns are most vulnerable to insufficient gas griefing?

Meta-transaction, multisig, and relayer patterns are most vulnerable to insufficient gas griefing because they involve an executor controlling the gas limit forwarded to sub-calls, creating censorship opportunities.

How do I detect insufficient gas vulnerabilities in a Solidity smart contract?

You can detect insufficient gas vulnerabilities by analyzing Solidity code for meta-transaction, multisig, and relayer patterns where executor-controlled gas forwarding lacks sufficient gasleft() validations and replay protection.

Does my meta-transaction relayer need gasleft() validation to avoid griefing?

Yes, your meta-transaction relayer needs gasleft() validation to ensure sufficient gas is forwarded to sub-calls, preventing an executor from intentionally under-funding transactions to censor user actions.

Why does my smart contract sub-call fail and consume the nonce without executing?

Your smart contract sub-call fails and consumes the nonce because an executor forwarded insufficient gas to the sub-call, a griefing vulnerability where the action is marked as executed despite reverting.

What smart contract patterns are most vulnerable to insufficient gas griefing?

Meta-transaction, multisig, and relayer patterns are most vulnerable to insufficient gas griefing because they involve an executor controlling the gas limit forwarded to sub-calls, creating censorship opportunities.