DeFi protocols should restrict smart contract interactions to prevent exploits