Level 1 Noob Hacker
Ethernaut 09 King
0 / 100 EXP 100 EXP to Junior Hacker
0%

Challenge 9 / Ethernaut

King

Goal

  1. Become king and prevent the level owner from reclaiming the throne.

Your task

Read King.sol, then complete Exploit.s.sol.

:~/targets/ethernaut-king$
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract King {
    address king;
    uint256 public prize;
    address public owner;

    constructor() payable {
        owner = msg.sender;
        king = msg.sender;
        prize = msg.value;
    }

    receive() external payable {
        require(msg.value >= prize || msg.sender == owner);
        payable(king).transfer(msg.value);
        king = msg.sender;
        prize = msg.value;
    }

    function _king() public view returns (address) {
        return king;
    }
}