code-423n4 / 2024-03-zksync-findings

2 stars 1 forks source link

When a batch, initially committed with system contract upgrades, is rolled back using the revertBatches() function to stop its execution, any subsequent batches that were meant to be committed without system contract upgrades will instead be committed as if they had system contract upgrades #11

Closed c4-bot-2 closed 6 months ago

c4-bot-2 commented 7 months ago

Lines of code

https://github.com/code-423n4/2024-03-zksync/blob/main/code/contracts/ethereum/contracts/state-transition/chain-deps/facets/Executor.sol#L481-L493

Vulnerability details

Impact

impact at https://github.com/code-423n4/2023-10-zksync-findings/issues/527 report

Proof of Concept

Proof at https://github.com/code-423n4/2023-10-zksync-findings/issues/527 report

Tools Used

Manual Review

Recommended Mitigation Steps

Protocol should consider deleting s.l2SystemContractsUpgradeTxHash along side batch number under every circumstance that s.l2SystemContractsUpgradeBatchNumber is deleted

Assessed type

Context

c4-sponsor commented 7 months ago

saxenism marked the issue as disagree with severity

c4-sponsor commented 7 months ago

saxenism marked the issue as agree with severity

c4-sponsor commented 7 months ago

saxenism (sponsor) disputed

saxenism commented 7 months ago

This is a design choice. The team does not see how this design choice poses a security threat.

alex-ppg commented 6 months ago

The exhibit cites precedence that the Sponsor has acknowledged as by design here.

Similarly to the double jeopardy rule, I cannot in good faith consider a past finding that the Sponsor deliberately acknowledged as by design to be awarded again unless it was a flaw that can be demonstrated undeniably.

As such, I consider this exhibit Out-of-Scope given that past findings are explicitly specified as such in the contest's description.

c4-judge commented 6 months ago

alex-ppg marked the issue as unsatisfactory: Out of scope