Skip to content

fix(uexecutor): bill reverted inbound payloads for gas used (F-2026-18824 rec 2) - #360

Merged
0xNilesh merged 3 commits into
audit-fixesfrom
fix/F-2026-18824-rec2
Sep 2, 2026
Merged

fix(uexecutor): bill reverted inbound payloads for gas used (F-2026-18824 rec 2)#360
0xNilesh merged 3 commits into
audit-fixesfrom
fix/F-2026-18824-rec2

Conversation

@0xNilesh

@0xNilesh 0xNilesh commented Sep 2, 2026

Copy link
Copy Markdown
Member

Bills a reverted payload for the gas it burned. Inbound routes onlyGAS_AND_PAYLOAD, FUNDS_AND_PAYLOAD and ExecutePayloadV2. The charge is clamped to the available balance and never returns an error, so a short UEA cannot fail the inbound.

MsgExecutePayload is deliberately excluded. That route is permissionless and a revert rolls back the UEA's nonce, so the payload hash — which binds the stored nonce — is unchanged and one captured owner signature stays replayable. Billing there would let anyone drain a funded UEA by resubmitting a failing payload. Inbound routes are quorum-gated, so no such replay exists.

Test: TestInboundRevertedPayloadBillsGas — verified to fail when the billing call is removed.

Needs push-chain-evm#52 merged and pinned to cover the DerivedEVMCall path.

@0xNilesh
0xNilesh merged commit f38bf13 into audit-fixes Sep 2, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant