// Testing oracle lag on Morpho Blue. // If the fixed rate doesn't update, we can just arb it. // Need to check why this vault doesn't handle the tick spread correctly. // Testing directly against storage slots contract Exploit { address constant MORPHO = 0xBBBBBbbBBb9cC5e90e7b3Af60BDf0224d08b3400; // Use a simple run function for forge script, not a full unit test suite function run() external { // Assume the fork is already set up via forge script env // console.log("Starting exploit..."); // Target: Oracle manipulation / fee leakage // abi.encodeWithSignature is much cleaner than dragging in huge interfaces (bool success, bytes memory data) = MORPHO.call( abi.encodeWithSignature("supply(bytes32,uint256,uint256,address,bytes)", 0x0, 0, 0, address(this), "") ); require(success, "Exploit failed at supply"); // log the result raw // console.logBytes(data); } }