Festive Flaxen Raccoon
Medium
The function does not revert properly if there is a failed contract deployment or revert from the create2 opcode as it does not properly check the returned address for bytecode. The create2 opcode returns the expected address which willbe the zero address .
function _computeCreate2Address(bytes memory data, bytes32 salt) internal view returns (address) { bytes memory bytecode = abi.encodePacked( type(BeaconProxy).creationCode, abi.encode(address(this), data) ); @> return Create2.computeAddress(salt, keccak256(bytecode)); }
Manual Review
check the result of Create2.computeAddress.