When people start placing coins into wallets controlled by the exchange, rather than by the users themselves, a risk of a Mt. Gox-type event arises. It's not a bitcoin vulnerability, and can be easily avoided, but many people will choose not to avoid it, so exchange hacks will keep happening.
We don't know for sure why people keep placing their coins into wallets controlled by the exchange rather than by users, but likely it could be explained by a lack of understanding - you go onto an exchange that lets you set up an account and "buy bitcoins", so you do that, and some numbers appear on your screen, telling you that you now "have" bitcoins, so you're happy. You have to know a bit about how bitcoin actually works to understand that you don't actually own bitcoins in the blockchain sense, you just have an account with the exchange. Maybe some people do it while being aware of the risks because it is convenient, but I really doubt that, since running a personal wallet is not hard.