While I'm not necessarily defending Buffett, he (like everyone else) is playing by the rules. The problem isn't the people playing the game, it's the system itself and the rules of the game.
If you find something unethical, even if it is legal, you are still an unethical ass if you exploit that legality for your own gain.