They already used MQTT for intra-LAN comms (not sure what they use to talk with the cloud, all my printers operate in a strict local-only mode), they’re already doing message authorization, so chances that they haven’t heard of (m)TLS+MQTT and ACLs are virtually zero - the only thing missing from their system is certificates/PKI handling. Whether they invested the time to properly grasp and implement the topic (no pun intended) is a different story - they obviously didn’t given the hilariously amateurish way they’re attempting to do it using the Bambu Connect middleware.
The real problem here, security-wise, is not ensuring that some rogue process or a threat actor gains control over your printer - even with their half-implemented message auth solution, without the auth code (that you can only obtain with physical access to their printers) you can’t send any commands to it. The status messages are on an open topic, but there’s nothing really stopping them to apply basic ACLs to that as well if it’s considered ‘sensitive’.
No, the problem is not local security at all - it’s good enough as it is and, paradoxically, it’s actually getting worse with the way they’re attempting to do it. The real problem is how to tie in their cloud/MakerWorld operation in the mix as this is the integral part of their business strategy.
How do you guarantee that people are not skirting the system to earn points by creating a model, and then pretending to print it (i.e., tell your cloud they’re printing it but they block the commands to the printer locally)? But of course, by ensuring that everything their printers print goes through their cloud so it’s counted only after it’s sent to the printer and proper status callbacks are observed (the benefit of being able to spy on your users and what they’re printing is a bonus). But that means that BL needs to pay for bandwidth and at least some temporary storage for every single print on their printers + status back-logging + other comms, which means recurring cloud costs for a finite sale. That would be all fine and dandy if there were subscription fees to cover that, but there aren’t so, unless you involve yourself in some shady planned obsolescence, sooner or later you’re running out of business.
So - how do you ensure that you have your cake and eat it too? But of course, local authorization - the cloud implicitly trusts a local agent to act on its behalf which can then (not yet, but maybe in the next step) utilize fully local comms to save the cloud bandwidth, saving BL money without compromising their MakerWorld strategy or product feature offering (mainly, the Handy app). But how do you trust the local agent - of course, by providing the local agent and ensuring that the only way to talk with the cloud (and printers) goes through it. The added benefit of gaining a full control over the ecosystem goes without saying (and that’s where the conspiracy theories start).
This is where things fall apart a bit as their implementation of all of this is comically bad, but I’d bet you that was the idea behind it. Could have they done it using widely used standards without introducing a BL-controlled funnel as the only mean of utilizing their printers - absolutely. Why they didn’t? Well, their representative wasn’t clear on the details when talking to Verge - the charitable explanation is that they simply lacked the competence and estimated that it would take too much effort. There are many, many far less charitable takes as to why they did it the way they did… But one thing I’m certain of, there is no way their team didn’t know of standardized ways of securing IoT comms via MQTT.