Everybody uses their own homegrown solution, which depends heavily on the hardware they have to work with. This means that some companies get it right and many get it wrong. Yeah, the biggest problem is companies shoehorning connectivity to products, but the second biggest problem is that there really isn't a standard for securing that connectivity.
No. The real problem is that a device you bought requires internet access for no good reason, spies on you ("collects information") with no good reason, and becomes useless garbage once the company that sells it goes out of business or decides to terminate the product line or just grows to dislike you, all that for your lightbulb in the toilet to dim to the beat of played music.
For IoT to be useful at all, the devices would need substantial configuration possibilities, like where and with what protocol send data to, or better yet, whom to allow to fetch data from the device. But this would be only for hobbysts, as general public is not interested in tinkering.
Much as HyperCard, Excel, etc have allowed non-nerds to solve their own problems or scratch an itch, there is room in IoT for these people to tinker. They just need the right tools and framing.