Does MAX_MONEY have any security issues? Could leaving it at 420,000,000 allow for an attack that creates 300,000,000 coins and has users with the current wallet allowing that attack?
I don't know of any security issues. The GetBlockValue determines how many coins can be created with each block, based on the block height. If a hacker were to submit a block for 300,000,000 coins (for instance), then the other nodes would reject that block because that block would fail the check of creating less than or equal to the number of coins specified by GetBlockValue for that block height.