zkSync Era System Contracts contest - supernova's results

Rely on math, not validators.

General Information

Platform: Code4rena

Start Date: 10/03/2023

Pot Size: $180,500 USDC

Total HM: 6

Participants: 19

Period: 9 days

Judge: GalloDaSballo

Total Solo HM: 2

Id: 221

League: ETH

zkSync

Findings Distribution

Researcher Performance

Rank: 19/19

Findings: 1

Award: $237.70

QA:
grade-b

🌟 Selected for report: 0

🚀 Solo Findings: 0

Findings Information

Labels

bug
grade-b
QA (Quality Assurance)
Q-06

Awards

237.7048 USDC - $237.70

External Links

L1 BlockGasLimit value is wrong .

As mentioned in the Zksync docs , blockGasLimit is 2 **32 -1 . But in the code below , it is a different value . https://github.com/code-423n4/2023-03-zksync/blob/21d9a364a4a75adfa6f1e038232d8c0f39858a64/contracts/SystemContext.sol#L33

Recommended Steps : Change blockGasLimit to 2**32 -1

L2 Timestamp is not incremental

When new block is set , the old block timestamp can be equal to the new block timestamp.

https://github.com/code-423n4/2023-03-zksync/blob/21d9a364a4a75adfa6f1e038232d8c0f39858a64/contracts/SystemContext.sol#L116

Recommendation: Remove the = operator.

-        require(_newTimestamp >= currentBlockTimestamp, "Timestamps should be incremental");
+        require(_newTimestamp > currentBlockTimestamp, "Timestamps should be incremental");

#0 - GalloDaSballo

2023-03-31T11:56:39Z

L1 BlockGasLimit value is wrong . L

L2 Timestamp is not incremental L

1L from dups

3L

#1 - GalloDaSballo

2023-04-06T18:56:42Z

6 points bonus for short and all lows

#2 - c4-judge

2023-04-06T18:59:50Z

GalloDaSballo marked the issue as grade-b

AuditHub

A portfolio for auditors, a security profile for protocols, a hub for web3 security.

Built bymalatrax © 2024

Auditors

Browse

Contests

Browse

Get in touch

ContactTwitter