Repository navigation
Conversation
New Ethernaut level, solvable by deploying a small helper contract. See the level's own description and completion write-up (shown in-game before and after solving) for the vulnerability and the solve path. Includes FlashQuorumFactory.sol / FlashQuorum.sol / FlashQuorumToken.sol, src/attacks/FlashQuorumAttack.sol, a Foundry test, description and completion markdown in en/es/pt_br, a gamedata.json entry (deployId 43), an authors.json entry, and a level icon matching the existing icon system. Verified with forge test (full suite passes), forge build --sizes, and a manual playthrough against a local deployment with a real wallet connection: created an instance, deployed and used the helper contract, submitted the instance, and confirmed the completed state renders correctly in the UI. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
The instance contract's source is shown to players before they solve
the level (revealCode: true). Its NatSpec comment explained the
vulnerability outright, and the token contract's comment over-narrated
the flash loan mechanics in similarly exploit-oriented terms. Both
trimmed to purely functional comments.
Also reworked the description (en/es/pt_br): dropped the sentence
introducing flash loans plus two hints that, combined, stated the
vulnerability almost as directly as the completion write-up. The
level stays solvable: the fee/contract hints (and the token's own
public interface) are still enough to find the mechanism. Fixed an
inconsistency in the process ("you start with none of it" vs. "a
small starting balance" in the same description).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Drops the last hint in en/es/pt_br that told the player a helper contract was required and why. The description no longer points at the mechanism at all; the player has to find it themselves. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
New level: FlashQuorum.
What's included
FlashQuorumFactory.sol/FlashQuorum.sol/FlashQuorumToken.sol(level contracts)src/attacks/FlashQuorumAttack.soltest/levels/FlashQuorum.t.sol(testInit + testSolve)en,es, andpt_brgamedata.jsonentry (deployId 43)authors.jsonentryLevel43.svg/BigLevel43.svglevel icon, matching the existing icon system