News for hackers. Stuff that matters.
Re:IoT garage door opener maker disables customer’s service ... by phkahler on Wednesday April 05, 2017 @07:02AM (#14041183)
>> But if you're on cellular, you hit walls - you don't want to open external ports for these notoriously insecure devices, and discovery outside the network is unsolved.

Dynamic DNS. Learned about this the other day from a coworker who sets up his own stuff and connects remotely by phone. You don't get a choice on having a port open - there has to be a way to connect from the outside. Making both the user and the device connect to "the cloud" to get in touch with each other is not more secure, it's less secure - see pissed off company killing a garage door opener.

Re:IoT garage door opener maker disables customer’s service ... by leoedin on Wednesday April 05, 2017 @08:55AM (#14041708)
This doesn't work on corporate networks, or with ISPs who put their users behind a NAT (common for cellular modems). It also doesn't really fix the discovery problem - how does the client running on a different network know what dynamic DNS domain to look up? The easiest method is to use a hosted service to coordinate the two. Then you're back to the same problem.

I'm not aware of a robust solution for IoT device discovery that doesn't use a cloud based system of some sort. All the alternatives are fiddly or vulnerable to weird router/ISP configurations. Not ideal when you want your product to be seamless.

Re:IoT garage door opener maker disables customer’s service ... by pythonaut_16 on Wednesday April 05, 2017 @10:00AM (#14042108)
Really it sounds like a good situation for a federated service/protocol.

Let IoT developers develop against the protocol and then consumers can pick a provider to run their IoT hub.

i.e. I go to my garage app and plugin iot://firstname_lastname@iot_hub_provider.com and then that does the heavy lifting of cloud connecting the device and allowing the app to communicate with it.

Re:IoT garage door opener maker disables customer’s service ... by PaulRobinson on Wednesday April 05, 2017 @09:21AM (#14041857)
You know, IPv6 fixes a lot of this...
Re:IoT garage door opener maker disables customer’s service ... by kyboren on Wednesday April 05, 2017 @11:22AM (#14042745)
> You don't get a choice on having a port open

With a bit of effort, you can have a service that is 1) nearly invisible to anyone not 'in the know', 2) allows incoming global connections without opening any ports, and 3) is extremely-well firewalled from any client lacking a manually-loaded decryption key.

It's not easy, even for technical users, but it can be achieved with 'stealth' Authenticated Tor Onion Services[0]. This does not open any ports, although decryption keys must be manually loaded onto client devices. Crucially, though, any client not in possession of the decryption key can't even determine which Tor introduction point relays need to be contacted in order to set up a rendez-vous with the Onion Service, let alone know what to put in their INTRODUCE2 cells to actually authenticate themselves to the Onion Service.

I make considerable use of this scheme for all sorts of applications and it works very well around the globe, though sometimes slowly and with high latency. The only real catch is that serious censorship evasion (China, Kazakhstan, Gestapo Corporate Firewall) requires using bridges with timing obfuscation, which adds complexity and maintenance burden.

I think there's considerable potential for truly privacy- and security-conscious IoT products using this scheme. All you need is to display a QR code the user can scan on their client device in order to load the service hostname and key. Users run open source server software on their home PC with a bundled Tor. Bonus: Tor use is de-stigmatized and normalized, and Tor traffic increases, improving all users' privacy.

[0]: AKA HiddenServiceAuthorizeClient in 'stealth' mode, in torrc. See also: https://gitweb.torproject.org/torspec.git/tree/rend-spec.txt

Re:IoT garage door opener maker disables customer’s service ... by michaelt on Wednesday April 05, 2017 @08:21AM (#14041524)
I think the security concern is that IoT devices have such poor security, being behind a firewall is the only thing that stops an attacker compromising them.

Expose the shitty insecure software to the internet directly, the theory goes, and successful attacks are inevitable.