News for hackers. Stuff that matters.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by paledot on Sunday June 28, 2020 @12:05PM (#23669687)
With the tightening of certificate trust, demise of self-signed certificates, etc., is there any remaining way to establish a consumer-oriented HTTPS server on a local network? Thinking of things like routers, printers, and self-hosted IoT devices here. Some of the label printers we support at work have simply atrocious workarounds to get them to work, and I'm wondering if it's the manufacturer's fault or if that use case has been completely abandoned in the push for tighter security on the Internet.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by elcritch on Sunday June 28, 2020 @01:09PM (#23670260)
It’s a glaring security hole, IMHO. I create such devices and the only way I know is self-signed certs, but the browsers complain a lot about that. Ideally there’d be a way to sign .local domains with browsers handling it while letting people know to verify the identity of their local devices/services and that the identity isn’t verified by https like most sites.

The issue lies between the browsers and https system. SSH can do encryption without requiring identity verification. It handles it by asking "Do you want to trust this new server?". Then if it changes informs you of that. Browsers could easily implement that for .local with self-signed certs.

Of course browser developers assume everyone has internet all the time and you only access servers with signed domains. I’ve wondered what it’d take to get an ITEF/W3C RFQ published for .local self-signed behavior.

(Edit: RFQ, not my autocomplete’s RTF)

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by akira2501 on Sunday June 28, 2020 @05:32PM (#23672237)
> Ideally there’d be a way to sign .local domains with browsers handling it while letting people know to verify the identity of their local devices/services and that the identity isn’t verified by https like most sites.

For these types of sites we run a local CA, and sign regular certificates for these domains and then distribute the CA certificate to our windows clients through a GPO. When put into the correct store, all our "locally-signed" certificates show as valid.

In other instances, where I haven't been able to do that, like for disparate VPN clients and such I will generally assign a RFC1918 address to it. Like service.vpn.ourdomain.com resolves to 10.92.83.200. As long as I can respond to a DNS challenge, I can still get a letsencrypt certificate for that domain.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by johntash on Sunday June 28, 2020 @05:49PM (#23672356)
> In other instances, where I haven't been able to do that, like for disparate VPN clients and such I will generally assign a RFC1918 address to it. Like service.vpn.ourdomain.com resolves to 10.92.83.200. As long as I can respond to a DNS challenge, I can still get a letsencrypt certificate for that domain.

This is basically what I've been doing lately as well. I'll create a wildcard letsencrypt cert for .vpn.ourdomain.com and then point the subdomains to internal IPs. You can even set up a split-dns where it responds to the challenge txt records for letsencrypt, but only the internal side responds to requests under .vpn.ourdomain.com.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by elcritch on Sunday June 28, 2020 @05:46PM (#23672334)
That works if you have control over the device/network. IoT devices usually don’t work that way. It’d be nice to be able to ensure the passcode to the device isn’t broadcast in clear http.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by CountSessine on Sunday June 28, 2020 @02:32PM (#23670958)
It handles it by asking "Do you want to trust this new server?"

Asking the end user to accept downgraded security is a huge security antipattern.

Also, if I’m operating an evil wifi AP at a coffee shop and I intercept your web request for bankofamerica.com with a redirect to bankofamerica.local, would HSTS prevent the redirect? Or could I then serve you a bad cert and trick you into accepting it?

Also, what sokoloff said makes a lot of sense. Encryption without authentication is worthless, and that cert chain only works in so far as someone at the top vouches for someone’s identity. If that’s your print server, then you are the one vouching for its identity. It makes more sense for you to be the certificate authority and just build your own cert chain.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by sukilot on Sunday June 28, 2020 @03:03PM (#23671187)
If the browser correctly explained what you were doing, and warned you that this is an attack unless you are in control of the entire network and the machines on it, I don't see the problem.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by CountSessine on Sunday June 28, 2020 @03:20PM (#23671311)
What would it say?

“You’re connecting to an IoT device that has a worthless certificate. Would you like me to open up a completely pointless AES256 session with it and pretend that you have a secure connection?”

Just use HTTP.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by elcritch on Sunday June 28, 2020 @05:56PM (#23672402)
The identity isn’t trustworthy, but as mentioned below their are ways to handle that with device id’s. Also it’s not pointless to encrypt communication with a device you’ve verified the identity of in the past. It prevents hijackers from later hijacking the device, without The user knowing it. Just the same as the nastygram you get when your ssh server changes its private key.

You’re effectively claiming SSH is pointless and/or useless encryption as it doesn’t use certificate chains to verify url/domain. Your argument is the same as saying that any devops ssh’ing into a new local server is pointless and they should just use telenet.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by drdaeman on Sunday June 28, 2020 @04:27PM (#23671778)
(Disclaimer: I'm not a security expert).

Ideally, I think, something like this: "You're trying to connect to a new device on your local network. To ensure the security please check that the device has a display or a printed label that says 'HTTPS certificate ID: correct horse battery staple couple more random words'?" (mobile devices may suggest to scan a QR code instead).

I'm pretty sure if at least one major browser vendor would implement something like this (denoted by a special OID on the certificate), IoT vendors would be happy to follow. Verifying a phrase or scanning a code is not a big burden, and it resolves trust issues.

The fingerprint could be either from a private key generated on device (for devices that have a display and can display dynamic content) or from vendor's self-signed "CA" with special critical restrictions (no trust for any signatures unless individually verified + signed certs are only valid on what clients consider to be a local network) which private keys are not on the device itself (for devices with printed labels, to avoid having the same private key on all devices).

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by CountSessine on Sunday June 28, 2020 @07:07PM (#23672757)
It certainly sounds a lot better than simply asking browser vendors to give .local a pass on cert validity.

I’m still wary of any flow that would have browser users “accepting” a device as secure - could I impersonate that device on the local network? Could I convince someone to accept a site on the wider internet as their IoT device? Someone smarter than me needs to think hard about these questions.

Maybe another approach would be to build infrastructure (like protocols and client software) to make building a home cert chain easy? A windows client that would let you create a root cert, install it in your cert store, and then give you server certs to hand out to devices? Give it a consumer friendly brand name or something and get IoT vendors to add a front-and-centre option to adopt a new server cert.

Authentication isn’t a tricky problem; it’s the trickiest.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by elcritch on Sunday June 28, 2020 @10:40PM (#23673873)
> I’m still wary of any flow that would have browser users “accepting” a device as secure -

It’s about accepting that communication with the device is secure, not guaranteeing that the device itself is secure. In reality you don’t know if your bank’s servers are secure or if they encrypt passwords properly, etc, but you do know it’s them and your communication isn’t tampered with.

> could I impersonate that device on the local network?

Not readily with a device specific id check and TOFU (trust on first use) similar to SSH. If the device certificate was stored permanently for .local urls like `my-device-23ed.local`, then anyone who tried intercepting or MITM’img that device would have the user receive a message "warning device identity has changed, please check your device is secure ... etc " warning.

Not having any browser support .local certificate or identity "pinning" means that anyone who compromised your network (WiFi psk hacking anyone?) can impersonate a device you’d not know it. Browsers forget self-signed certs regularly, if they let you "pin" the certificate at all. A hacker can intercept the .local url (trivial) and use another self-signed cert. the user’s only real option is to blindly accept it whenever it happens. Then an intruder can MITM the connection to the device all they want. Is your router’s config page really your router? Who knows.

> Could I convince someone to accept a site on the wider internet as their IoT device? Someone smarter than me needs to think hard about these questions.

Any `.local` domain isn’t allowed to have a normal cert or global dns name. They could trick them on first use, but again with a device specific ID on first use it’d make that harder to do. After trust-on-first-use any access afterword wouldn’t be able to be tricked without a explicit warning to the user about changing device identity and that something funny might be happening.

If browsers implemented entering a device specific code as part of the "do you accept this device" on first use, that’d make it a much more usable and secure pattern. It’d standardize the pattern and encourage IoT shops do setup the device id checking properly.

To impersonate a device using .local certificate/identity pinning, a hacker would need physical access to the device to get it’s device id code, then hi-Jack the mdns request with the correct device specific .local address (on first use!), then setup a permanent MITM in order to impersonate a device. Otherwise the user would get a warning. Possible but serious resources required. With physical access you can modify hardware, possibly install a false cert on the user machine, etc, so security in that scenario would be largely compromised already.

Perhaps some IoT devices use custom apps and certificates but many just use http, or self-signed https. In my experience, IoT device makers have little experience with something like creating a CA. Getting users to install it would be a headache. Time is money on those projects and having an entire factory down because they can’t figure out how to install a certificate chain on Windows 7, well, most users will complain loudly. Currently IoT is full on IT-installing-certificate-chains, or no security at all. Many go with none at all therefore.

Therefore the current status quo with browser certificates on .local domains encourages far more security gaps and effectively makes it difficult for non-internet connected device to Operate securely without a fairly expensive and complicated IT setup.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by elcritch on Sunday June 28, 2020 @05:41PM (#23672296)
I like this idea, as we already add a device serial ID to the ap hosted mode, partly for this reason. Chromecast’s show a random code and users seem to be able to handle this fine.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by ithkuil on Sunday June 28, 2020 @05:45PM (#23672327)
That works fine with a brand new device you just unboxed. But what should happen 3 years later? Should the IoT device have a certificate that is valid forever?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by paledot on Sunday June 28, 2020 @06:05PM (#23672454)
I would say yes, as long as certificates are unique per-device. The harm of my light bulb's cert being compromised is less than the harm of my light bulb no longer working if the manufacturer's CA goes offline and it can't renew its cert.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by filmor on Sunday June 28, 2020 @03:51PM (#23671540)
HTTP traffic would be unencrypted, so everyone (esp. on Wifi) could record passwords etc. flying around. With HTTPS, you at least need to MITM the connection to do that. If you establish trust in some other way (cert ID printed on the device?), the connection is secure.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by riskable on Sunday June 28, 2020 @04:28PM (#23671783)
Not just intercept: Using HTTPS prevents messing with the connection in-flight. So an attacker won't be able to inject their own payload into that web page you just requested.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by CountSessine on Sunday June 28, 2020 @06:26PM (#23672571)
Except you’re using garbage certificates so anyone could MITM you and inject whatever they like.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by bavell on Sunday June 28, 2020 @07:34PM (#23672892)
In what way are self-signed certs garbage? They're essentially the same as ssh certs.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by samus on Sunday June 28, 2020 @10:50PM (#23673916)
That's a separate kind of attack, not intrinsic to the protocol. If the keypair got leaked or a CA misbehaves and issues multiple certificates that can be used for a host, then yes, it can happen.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by Ayesh on Sunday June 28, 2020 @11:06PM (#23673988)
It's like calling someone you don't know, but over a secure line.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by paledot on Sunday June 28, 2020 @01:11PM (#23670282)
I love this idea. There are enough influential tech people who read HN, can we make this happen please?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by Sebb767 on Sunday June 28, 2020 @01:36PM (#23670468)
Thirded. This sounds like a sound solution.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by kube-system on Sunday June 28, 2020 @03:24PM (#23671348)
How is that different than how self signed certs work now?

My browser warns me, I can accept the warning for that particular certificate, and it warns me again if it changes..

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by fomine3 on Monday June 29, 2020 @08:28PM (#23685172)
At least for Chrome and Firefox, I can't accept self-signed cert easily for permanently. It asks again if I exited the browser.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by kube-system on Tuesday June 30, 2020 @12:22AM (#23686527)
Do you have them configured to clear those settings on exit? Is the certificate actually the same when you visit the site again?

Chrome and Firefox remember the acceptance of self-signed certs for a long time on my PC.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by sokoloff on Sunday June 28, 2020 @02:29PM (#23670932)
Why do you need to use self-signed certs? (As contrasted with CA-signed certs that happen to be signed by a CA that you own and trust as suggested by arwineap?)

It took my a little over an hour one evening to figure out how to create my own CA, trust it, and sign certs for all my local devices (except my UniFi cloud controller which I admit I gave up on due to time).

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by CydeWeys on Sunday June 28, 2020 @02:33PM (#23670965)
Because 99.99%+ of users don't have the technical skill to do this, but still need to be able to access local devices and it would sure be good if they could do so in a secure manner?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by CountSessine on Sunday June 28, 2020 @02:43PM (#23671056)
So the answer is to subvert the global certificate infrastructure that protects web traffic? No, it isn’t. Your IoT device has no security at all if a non-technical user is setting it up or if it doesn’t have a way of accepting a user configured certificate, and you shouldn’t pretend otherwise by dressing it up in bad certificates and worthless encrypted tunnels.

Just use HTTP.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by Spivak on Sunday June 28, 2020 @04:18PM (#23671726)
I mean if they’re worthless tunnels then so is every SSH tunnel. Should we just go back to telnet?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by CountSessine on Sunday June 28, 2020 @06:16PM (#23672515)
On your own network? Does it really matter whether you use telnet or ssh? And if it’s on a shared network, don’t you have an IT department that can set up the local key infrastructure and push out certificates?

The argument here is that we should enable lots of shitty IoT devices to masquerade as being secure, and inure browser users to click ‘yes’ to accepting a broken certificate.

If it’s on a managed network, IT can set up a certificate and push that out to client machines. If it’s on your home network you can do that (unless your IoT device can’t take a user configured client cert, in which case it’s rubbish anyways), and if you can’t then you might as well use HTTP.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by imtringued on Monday June 29, 2020 @05:56AM (#23676002)
Ok we can always use HTTP instead. I personally hate how using HTTPS gets harder and harder every single year.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by petronio on Sunday June 28, 2020 @02:42PM (#23671051)
A lot of the devices mentioned ("routers, printers, and self-hosted IoT devices") don't give ways to change the certificate. Besides, not every individual or company wants to or is knowledgeable enough to manage their own CA. For the audience in HN it might be an hour one evening, to others the instructions read like black magic.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by sukilot on Sunday June 28, 2020 @03:06PM (#23671205)
Routing is scary magic. DNS is scary magic. Wifi is scary magic. Everything in computing is scary magic until someone writes an app with good UX for it. It's not a fundamental problem.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by petronio on Sunday June 28, 2020 @04:33PM (#23671813)
It is a fundamental problem, because you need specialized knowledge to understand what is being presented and asked of you in the UI.

The average user knows absolutely nothing about routing, most will throw their hands up or their eyes will swim if you so much as mention something like IP address.

They also know nothing about DNS and don't have to: because we always give them defaults that they never see and they go along with their lives.

As for wifi, once again, largely automated. Most people never change the default SSID and password. There's some manufacturers that will make a good UI, but it stops at the SSID and passwords because that's the extent of most users' understanding. Some users have a vague understanding that 2.4GHz and 5GHz is different, but don't know the significance of the difference. Channel, authentication type, and other options aren't given to users in those UIs because they simply wouldn't know what to do with it and people don't read manuals anyways.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by mkl on Sunday June 28, 2020 @04:38PM (#23671851)
> SSH can do encryption without requiring identity verification. It handles it by asking "Do you want to trust this new server?".

The problem is to figure out whether to trust the server you need to get its fingerprint through another channel. Is there an HTTPS equivalent of that?

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by lukeschlather on Sunday June 28, 2020 @05:06PM (#23672054)
You don't need to get the fingerprint through another channel. Getting the fingerprint through another channel prevents some classes of attacks. Blindly storing the first fingerprint offered also prevents a variety of attacks.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by arwineap on Sunday June 28, 2020 @01:52PM (#23670610)
> It handles it by asking "Do you want to trust this new server?"

That's basically how it works though; your OS packages a group of trusted CA certs. You can add additional trusted CA certs, even ones minted by you to ensure your apps trust the connection

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by paledot on Sunday June 28, 2020 @02:08PM (#23670754)
There are two options:

* Manually install a root certificate, which is a confusing process for most end users and a non-starter for anyone who cares about security. (Imagine walking your parents through the process.)

* Trust a self-signed certificate, which is an increasingly difficult and counterintuitive process since Chrome and Firefox started competing to see who could destroy their usefulness faster. I'm not even sure if it's possible anymore.

Neither of these are acceptable.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by Spivak on Sunday June 28, 2020 @04:22PM (#23671745)
I mean I’m not sure if there’s a solution that will make everyone happy then. Making trusting self-signed cheers easy and not scary has real security implications because users just click-through warnings.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by imtringued on Monday June 29, 2020 @06:06AM (#23676060)
Making casual users create their own root certificates sounds like an even worse problem. Now an attacker isn't restricted to impersonating your lightbulbs. They can impersonate any domain if they can get your private CA. Now imagine if an IoT vendor engages in questionable practices like creating the CA for you and the user only has to download an exe that automatically installs the root certificate. The benefit for the vendor would be that all devices you order from their website would be shipped with correctly signed https certificates. Later a hacker dumps the database with root CAs and uses it to impersonate your bank.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by elcritch on Sunday June 28, 2020 @06:09PM (#23672482)
That’s why self-signed and "local signed" should be distinct concepts, IMHO. The .local domain is already special cased, and could provide a different UI path more akin to how SSH works. AFAICT, you can’t get a https cert for a .local domain, so it’d not break existing https security model. It’d provide a more secure way for apps like syncthing to provide a secure local UI as well. Getting browsers to accept my self-signed certificate is a pain and makes people just use http.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by arwineap on Monday June 29, 2020 @10:55AM (#23678145)
Honestly, I don't trust most end users to install root certificates

If you are doing something for an end user, I think it makes a lot of sense just to get a certificate; it's just not a large barrier anymore.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by loeg on Sunday June 28, 2020 @02:07PM (#23670736)
The mechanism SSH uses is called Trust on First Use ("TOFU") and is closer to what used to be HTTPS certificate pinning. In this scheme, certificates never expire, and if they do, clients warn about the unexpected change in certificate.

It is different from the CA PKI system, where the client trusts any certificate signed by a trusted CA without prompting the user at all, and doesn't prompt the user if the certificate for a site changes.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by zozbot234 on Sunday June 28, 2020 @02:24PM (#23670892)
Self-signed certificates give you basically this. It's a bit of a hassle to mark them as trusted, but you only have to do it once.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by loeg on Monday June 29, 2020 @12:49AM (#23674445)
That has not been my experience with current versions of Chrome.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jopsen on Sunday June 28, 2020 @05:59PM (#23672417)
Crazy idea: Why not serve an initial page over HTTP, and then implement encryption in JS using webcrypto for all subsequent calls.

I'm not sure self-signed HTTPS can do much better than this anyways.

(Yes, yes, it's a crazy idea, hehe)

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by dylz on Sunday June 28, 2020 @07:59PM (#23673046)
You can no longer do webcrypto because the initial page is compromised.

Self signed HTTPS works for this case as long as you know the fingerprint/cert to accept.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jopsen on Tuesday June 30, 2020 @06:37AM (#23688701)
Oh, yeah... webcrypto only works on HTTPS.

So you would need to ship a crypto library in JS, hehe :)

Self-signed certs probably does work, if you install the certificate root on your machine. It just not something you would advice end-users to do.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by dylz on Tuesday June 30, 2020 @07:02AM (#23688826)
The other problem is shipping a crypto library if the entire page and script is not served over HTTPS means that it's no longer useful, because the crypto library is compromised.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by frutiger on Sunday June 28, 2020 @05:57PM (#23672407)
> (Edit: RFQ, not my autocomplete’s RTF)

Sorry for the mostly insubstantial comment but it may help you in the future: it’s RFC (Request For Comments) not RFQ.

And it’s IETF (Internet Engineering Task Force) not ITEF.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by iwalton3 on Sunday June 28, 2020 @01:45PM (#23670542)
Plex uses a combination of wildcard certificates and a custom DNS resolver to offer HTTPS on local networks, but it does require a working internet connection to work. [1]

You can also get a certificate through the Let's Encrypt DNS challenge without having to expose a server to the Internet, but you'll still need ownership of a domain name and either an internet connection or a local DNS server to support HTTPS using that certificate.

There is always the option of creating a local certificate authority for your devices, but this is kind of a pain. There are some new applications that aim to make this easier [2], but there is no easy way around having to install the root certificate on each device.

[1] https://blog.filippo.io/how-plex-is-doing-https-for-all-its-... [2] https://github.com/smallstep/certificates

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by tgsovlerkhgsel on Sunday June 28, 2020 @01:47PM (#23670558)
If you just want the green lock to show up, the device can get a certificate from Let's Encrypt. The manufacturer would need to provide an API that lets the device pass the DNS challenge.

For example, you could have serialnumber.manufactuerer-homedevices.net, and each device would get a cert for its serial's host name. Ideally, you should properly secure that API with some form of attestation key included on the device. Alternatively, the host name could be e.g. the hash of the devices' generated key (that way you could ship the devices without placing individual keys on them, but the host name would change after a factory reset).

Making this actually secure is hard, though, because you need the user to visit the URL for his device. If an attacker can simply get a cert for differentserial.manufacturer-homedevices.net and direct the victim there, you don't win much actual security.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by AdamJacobMuller on Sunday June 28, 2020 @01:02PM (#23670195)
I'm not a huge fan of it, but, it seems like the way things are going is to simply run a service which is basically a large proxy.

Your device connects out with some kind of persistent connection to their central service then requests to your device go to their server, which does AAA and routes to your local device. Fixes the SSL issue, avoids any NAT headaches, enables fully remote access and most importantly for PMs it makes the device useless without your server-side components. If there is any local accessibility at all, it can be neutered or reduced.

I don't entirely hate this model, its not my favorite, but, its the way things are going.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by heavenlyblue on Sunday June 28, 2020 @01:28PM (#23670403)
I would be happy if my router supported letsencrypt.

Why would I even bother copying and distributing self-signed certificates if I can just properly get a certificate for my own personal router?

It’s idiotic that people still trust pure HTTP and have no option of switching.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by robocat on Monday June 29, 2020 @03:09AM (#23675161)
If your router needs configuring before it can access the Internet, then it can’t use certificates that require the internet to generate or validate.

Or if you change ISP and need to change your router internet connection configuration, your router cannot be accessed.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by heavenlyblue on Monday June 29, 2020 @05:29PM (#23683348)
When was the last time you needed to configure your router to access the internet?

I understand if that router is something industrial, but then you can probably figure out how to do that over SSH anyway (which is secure).

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by paledot on Sunday June 28, 2020 @01:10PM (#23670272)
I think this is the only practical answer, unfortunately. Everything else might possibly be made to work for a personal project, but definitely isn't an option at scale.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by AdamJacobMuller on Sunday June 28, 2020 @03:54PM (#23671555)
The way plex does it works great at scale.

It requires people to care more about "self hosted" than "PM says this will centralize user access and allow us to collect data and better monetize"

I'm not knocking either model. They both work (technically) but you need to understand your market and what works better for them.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by dharmab on Sunday June 28, 2020 @12:09PM (#23669737)
Buy a domain, create a subdomain for local use, and issue ACME certs with Let's Encrypt every 60 days.

If your vendor device or software doesn't support automated certificate rotation, put nginx/haproxy/envoy in front of it.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by xg15 on Sunday June 28, 2020 @12:34PM (#23669957)
This won't work either, btw: You'd have to request from Let's Encrypt a new certificate for each individual device. LE has several rate limits that will prevent that from working for anything more than a trivial number of devices: https://letsencrypt.org/docs/rate-limits/

The only way I see how this would work is if you not just purchase a domain but also an internet-facing server and do the renewal and certificate management centrally for all devices - at which point, your device is definitly not standalone anymore.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by AdamJacobMuller on Sunday June 28, 2020 @01:05PM (#23670224)
This will work fine. LetsEncrypt will raise ratelimits for you. I've done it for a commercial CDN and they were very accommodating and helpful.

Plex does this, for example, though they use DigiCert's free certificates: https://www.plex.tv/blog/its-not-easy-being-green-secure-com...

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by sokoloff on Sunday June 28, 2020 @02:32PM (#23670955)
The LE rate limits are (mostly?) for new cert issuance. I’ve never run into a rate limit on automated renewals and seem to recall it was either non-existent or comically far away from anything any individual would hit.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by MikeHardman on Sunday June 28, 2020 @12:44PM (#23670030)
You can do wildcard certs with LE, I run hundreds of k8s services all secured with LE and wildcard certs.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by stefan_ on Sunday June 28, 2020 @12:50PM (#23670088)
We're talking about customer hardware. If someone looks at the insides of the device and finds, of course, the private key for your one shared wildcard certificate, the issuer is required to invalidate it immediately.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by lvh on Sunday June 28, 2020 @12:51PM (#23670099)
You can, but that wouldn't quite work for the prosumer router manufacturer case the OP mentioned: LE would revoke the cert once you distributed it.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by AdamJacobMuller on Sunday June 28, 2020 @01:05PM (#23670230)
You can, but, you can't (by policy) distribute keys across multiple customers.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by tgsovlerkhgsel on Sunday June 28, 2020 @01:49PM (#23670592)
I have a nasty habit of requesting revocation of such compromised keys whenever I find them. CAs are required to revoke within 24 hours, I think, though unfortunately revocation is surprisingly ineffective.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by AdamJacobMuller on Sunday June 28, 2020 @03:57PM (#23671579)
Do you actually find those often? I've actually never seen one. I will admit I've also never specifically looked very hard.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by tgsovlerkhgsel on Monday June 29, 2020 @12:13PM (#23678932)
I'd say one every couple of years.

https://letsencrypt.org/docs/certificates-for-localhost/ has great documentation on that topic, including more examples.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by lawnchair_larry on Sunday June 28, 2020 @12:23PM (#23669852)
This is a ridiculous requirement that is not at all practical.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by slenk on Sunday June 28, 2020 @12:48PM (#23670068)
How is it not practical? It's really not hard to set up and there is great documentation out there
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by orev on Sunday June 28, 2020 @01:47PM (#23670570)
I get the feeling you have no real experience either running a company network or dealing with end users and home networks. Any of these solutions work fine for a majority of people who just use their laptop in Starbucks, but they really break down when you need to start doing anything more complicated than that.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by slenk on Sunday June 28, 2020 @10:19PM (#23673782)
Please, educate me as to what I am overlooking. The requirements of buying a domain name and getting a LE wildcard cert should be trivial to someone with the experience you seem to have.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by imtringued on Monday June 29, 2020 @06:12AM (#23676096)
Why would the average customer of IoT products have the same expertise as the person you are replying to?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by TwoNineFive on Sunday June 28, 2020 @08:02PM (#23673062)
All of these juvinile "It's easy! just implement ${SUPER COMPLICATED INFRASTRUCTURE WITH SPECIFIC REQUIREMENTS AND LIMITATIONS I'M GOING TO TO PRETEND AWAY}" replies from eager-idiot hacker tweens is just trolling.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by gsich on Sunday June 28, 2020 @12:31PM (#23669916)
You can also run your own CA.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by geerlingguy on Sunday June 28, 2020 @12:33PM (#23669947)
> This is a ridiculous requirement that is not at all practical.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by rad_gruchalski on Sunday June 28, 2020 @01:33PM (#23670443)
Really. This: https://jamielinux.com/docs/openssl-certificate-authority/ gives you a CA in about an hour. HashiCorp Vault will give you a CA in 5 minutes. certstrap will give you a CA in 15 seconds. It’s 2020, it ain’t voodoo anymore.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by Karunamon on Sunday June 28, 2020 @02:29PM (#23670937)
Just spinning up a CA is a couple of commands. Running one sanely (to include security of the private keys, availability and auditability of the signing machine, keeping backups, publishing a CRL, setting up ACME if you want any kind of automation) is significantly more involved.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by Spivak on Sunday June 28, 2020 @04:36PM (#23671831)
But this is silly. If this isn’t completely trivial to add to your app then something has gone horribly wrong.

* Every machine in your infra already has backups, right? Nothing about your signing boxes are special in this regard.

* All your services are already HA, right? The API servers that now have to run some glorified OpenSSL commands aren’t any different than your normal API endpoints.

* You already have to protect secrets on your machines. DB passwords, API keys. What’s one more?

* You don’t have to implement ACME. These are your devices talking to your devices.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by rad_gruchalski on Sunday June 28, 2020 @05:19PM (#23672146)
Nothing different than any long lived component in any infrastructure. There is no reason to look for reasons not to use a CA.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by gsich on Sunday June 28, 2020 @12:39PM (#23669998)
For a company? Absolutely not. In private? Probably not worth the effort, just skip the cert warning.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by nitrogen on Sunday June 28, 2020 @04:01PM (#23671609)
Most hardware in this category really needs to be set-and-forget, whether online or not. You can't have every random sound system and light controller having to dial out to a third party every month. You need to be able to come back five years later and still be able to configure the hardware.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by xg15 on Sunday June 28, 2020 @12:11PM (#23669748)
Without buying a domain. (and continously spending money to keep it owned)
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by dharmab on Sunday June 28, 2020 @12:12PM (#23669760)
Run your own CA internally and handle the CA distribution problem with MDM tools.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by xg15 on Sunday June 28, 2020 @12:25PM (#23669872)
I admit, that's a solution, even if a very unpleasant one: Installing a custom root CA is intentionally complicated, so this is hardly doable as an onboarding experience. The setup must be repreated for every single client device that should access the server.

There remains the question how I would get the CA certificate onto client devices in the first place.

Lastly, with asking consumers to install a CA certificate, I ask for a significantly more powerful permission than if I could just have them trust my certificate. This seems like a step backwards security-wise.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by est31 on Sunday June 28, 2020 @12:32PM (#23669936)
> Lastly, with asking consumers to install a CA certificate, I ask for a significantly more powerful permission than if I could just have them trust my certificate.

CA certificates can be constrained. https://tools.ietf.org/html/rfc5280#section-4.2.1.10

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by toast0 on Sunday June 28, 2020 @01:29PM (#23670411)
Are common certificate validation libraries honoring these constraints?

When I tried to use this many moons ago, most things ignored the constraints; although I could mark the extension critical, and then some (but not all, yay) of the things that didn't understand would refuse the CA.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by est31 on Sunday June 28, 2020 @03:09PM (#23671224)
IDK NSS seems to have code to verify it:

https://searchfox.org/mozilla-central/source/security/nss/li...

As does webpki:

https://github.com/briansmith/webpki/blob/482627c40dad2148da...

But haven't tested it (or checked other libraries).

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by est31 on Monday June 29, 2020 @07:29PM (#23684686)
Update: tested it with openssl and webpki. both claim to have support but it only works with openssl. For webpki I had to file two bugs:

https://github.com/briansmith/webpki/issues/134

https://github.com/briansmith/webpki/issues/135

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by namibj on Sunday June 28, 2020 @01:36PM (#23670466)
Can you name and shame those that ignored the critical extension? Sounds CVE-worthy. A date to guess the versions you used would also help.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by toast0 on Sunday June 28, 2020 @02:31PM (#23670943)
No, it was on the order of 5 years ago; everybody was garbage back then. But, if this had become usable, I would expect to have seen articles about using it since then.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by loeg on Sunday June 28, 2020 @02:35PM (#23670989)
How do you actually generate a constrained CA certificate? I have tried to do this for a long time but openssl is inscrutable.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by est31 on Sunday June 28, 2020 @05:55PM (#23672391)
There seems to be a guide for openssl here [0] but it seems kinda complicated. This discussion inspired me to add name constraints support to rcgen [2]. If you aren't afraid to write Rust, you should give using it a try.

[0] https://www.marcanoonline.com/post/2016/09/restrict-certific...

[1] https://tools.ietf.org/html/rfc5280#page-41

[2] https://github.com/est31/rcgen/commit/059cc19fcd1b8bb57feed5...

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by loeg on Monday June 29, 2020 @12:48AM (#23674439)
Thanks!
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by p2t2p on Sunday June 28, 2020 @12:34PM (#23669949)
It is no more complicated than a self signed certificate. Two clicks in Firefox, 4 taps in iOS
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by elcritch on Sunday June 28, 2020 @06:17PM (#23672522)
Every time and no tracking if device indentity changes.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by lawnchair_larry on Sunday June 28, 2020 @12:24PM (#23669862)
That is also an insane and unrealistic suggestion.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by demersb on Sunday June 28, 2020 @12:15PM (#23669785)
~$5/year (US) for a domain, and a one time investment of setting up a few scripts might save you a lot of time in the long run.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by xg15 on Sunday June 28, 2020 @12:22PM (#23669846)
Honestly, my main issue is not even the price, it's that devices cannot be stand-alone anymore. Even if my device is purely for LAN use and wouldn't need the internet at all, I now need to ensure it has an internet connection and I have to keep a domain owned that must be constantly renewed.

The device will also only be accessible if an internet connection is present, even if both the device and the client are in the same LAN - because the client has to access the device through the domain.

This means, should I ever lose the capacity to support the device and renew the domain, the device will become useless, even if technically, it is still completely functional.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by p2t2p on Sunday June 28, 2020 @12:32PM (#23669933)
> Honestly, my main issue is not even the price, it's that devices cannot be stand-alone anymore.

That’s not true at all. I’ve created a CA and a script to generate and sign server certificates and I generated them left right and centre now for my very standalone, local network only with no access to the internet whatsoever services. I added my CA to my browsers and my iPhone and everything works perfectly.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by xg15 on Sunday June 28, 2020 @12:36PM (#23669971)
Will you also add it to the iPhones of other people that would want to use the device? (Or more realistically, would they let you add it?)
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by gsich on Sunday June 28, 2020 @12:40PM (#23670011)
Depends on them I guess. If it's a corporate phone then it's no problem. The rest can either add it or get used to cert warnings.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by xg15 on Sunday June 28, 2020 @06:06PM (#23672468)
If you're in a context where you can personally install it on phones of friends and relatives, that will work, I agree.

I'm thinking of an example to illustrate what I mean. (Sorry if this appears to be moving the goalposts)

Imagine some small business is selling a home surveillance camera, or a network printer or whatever else. The thing is that it's a product intended for perivate, layman consumers and intended for LAN use.

With HTTP, you could add a local web server as a simple way to manage the device pretty easily: Just open a server, communicate the IP address to the user, done. No internet connection required, no continuing support from the company required. Even if the company went bust, the existing units continued to work and the web interface stayed accessible.

There seems to be no good way to replicate this with HTTPS. The closest seems indeed to be a custom root CA - however, then you need to communicate to your users how to install the CA certificate on their own devices, clicking through all kinds of scary warnings and dismissing "this section is for admins only" notices. I predict that not a lot of people would do that.

This also leaves you with the challange to safely get the certificate to your users. You could serve the certificate from the device over HTTP - however, then you'll require that your customers download a root certificate, over an unencrypted connection without any integrity checks and install it on their device. This seems like ripping open a mojor security hole.

Meanwhile, even if the company purchases a domain and attempts to get a certificate from a public CA, deployment will be difficult as described in all the other branches of this thread.

In short, I think you can pick any three of the following four conditions, but I see no way to archieve all four at the same time.

(1) use modern web features (all recently added and all future features require https)

(2) have your site usable on a client device that does not belong to you

(3) present a non-confusing user experience (no cert warnings, etc)

(4) have the device stay accessible even after you stop actively supporting it (by purchasing domains, running cloud services, having deals with CAs, etc etc)

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jt2190 on Tuesday June 30, 2020 @12:43PM (#23691949)
> This also leaves you with the challange to safely get the certificate to your users.

Because the hardware vendor does not own nor configure the private network, they are not able to certify to the network’s users that a particular network node is the device it’s supposed to be, and not an impersonator. Only the network administrators can do that, and so it is the network administrators that must generate the certificate and install it on the device. In this way the admins bestow a programatic declaration of trust on the network node.

The device manufacturers can only provide tools for showing that the device was not tampered with. TLS/SSL certificates are not for that purpose.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by yjftsjthsd-h on Sunday June 28, 2020 @01:51PM (#23670605)
This only applies if they want to access internal services without cert warnings, so asking them to install a cert seems reasonable?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by hannob on Sunday June 28, 2020 @12:54PM (#23670126)
> Honestly, my main issue is not even the price, it's that devices cannot be stand-alone anymore.

I'm wondering where the impression fo" not any more" comes from. Really the situation hasn't changed much. You can have your HTTP webinterface. You can have HTTPS with a selfsigned cert and click away the warning. The only thing that really has changed is that for your HTTP connection you will get a warning that the connection is not secure.

I don't think the ability of browsers to load HTTP pages will go away any time soon.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by nitrogen on Sunday June 28, 2020 @04:02PM (#23671621)
Aren't browsers preventing submission of form data over http now?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by gsich on Sunday June 28, 2020 @12:29PM (#23669906)
No. Your DNS can also be locally, so you have no Internet dependence.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by dimensi0nal on Sunday June 28, 2020 @12:19PM (#23669814)
A .net is 83 cents a month.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by imtringued on Monday June 29, 2020 @06:17AM (#23676120)
That's usually a limited special offer. Not everyone wants to change domains every year.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by dimensi0nal on Monday June 29, 2020 @08:46PM (#23685299)
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jt2190 on Sunday June 28, 2020 @12:34PM (#23669952)
There’s always the .local TLD, which is reserved for this use case:

https://en.m.wikipedia.org/wiki/.local

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by lvh on Sunday June 28, 2020 @12:51PM (#23670106)
That works, but you can't get public certs for it, because you can't prove you own that domain (indeed, you don't :))
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jt2190 on Monday June 29, 2020 @08:21AM (#23676892)
Please remind me where I said anything about public certificates. ;-)

xg15 is going to have to run a self-hosted Certificate Authority (CA) and generate certificates himself.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by Karunamon on Sunday June 28, 2020 @02:37PM (#23671005)
That article goes on to state that .local is reserved by RFC6762 (multicast DNS), which if you use that domain on your network, will cause problems with any services using it, usually Macs or iPhones.

This document specifies that the DNS top-level domain ".local." is a special domain with special semantics, namely that any fully qualified name ending in ".local." is link-local, and names within this domain are meaningful only on the link where they originate. [...] Any DNS query for a name ending with ".local." MUST be sent to the mDNS IPv4 link-local multicast address 224.0.0.251 (or its IPv6 equivalent FF02::FB).

I'd recommend using something like .lan instead.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jt2190 on Monday June 29, 2020 @08:54AM (#23677119)
I think you’re talking about running DNS locally (not sure) and resolving .local addresses by DNS. In that case, yes, the devices that do lookups by mDNS will experience a delay caused by first querying mDNS before falling back onto DNS. The solution is to set up mDNS for the internal resources.

Using an unregistered domain like .lan has serious security implications. See here: https://serverfault.com/a/17566

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by Karunamon on Monday June 29, 2020 @12:05PM (#23678845)
.lan is called out in appendix G of the MDNS RFC as "not recommended, but many people do this".

Personally speaking, I'm not too worried about .lan getting registered as a gTLD anytime soon. I'm a lot more worried about forgetting to renew my domain and having things horrifically break if/when that domain gets picked up by someone else. This is a lot more likely...

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jt2190 on Monday June 29, 2020 @05:56PM (#23683689)
I’m not sure I understand... What would break on your local network if a public domain you own and use only for internal resources is registered by someone else? How is this different from making up a domain name? In both cases you have to set up something to resolve the names to IP addresses on your local network, be it a hosts file or DNS. I would expect that to keep working regardless of the ownership of the domain name.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by paledot on Tuesday June 30, 2020 @08:21PM (#23696378)
I would have said the same about .dev, and did, until Google came along and registered it.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by nitrogen on Sunday June 28, 2020 @04:04PM (#23671630)
Why not just use mDNS too and stick with .local?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by xg15 on Sunday June 28, 2020 @12:39PM (#23670004)
I haven't heard about that yet. this sounds interesting indeed. But how would I get a valid certificate for a .local domain?
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jt2190 on Monday June 29, 2020 @09:04AM (#23677184)
You need to set up your own “chain of trust” to verify your self-generated certificates. You can run your own Certificate Authority for example. (There are other approaches too.)
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by lvh on Sunday June 28, 2020 @12:52PM (#23670112)
If only we had NameConstraints: we could have a CA limited to *.clientdevices.manufacturer.com, installed in everyone's trust root.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by pas on Sunday June 28, 2020 @05:08PM (#23672068)
Installed? Everyone?

It would be enough to send it as an intermediate CA cert, no need to install.

Going the self-signed DNS name restricted CA way would likely still not fly with browsers, because there's no way to securely deploy the trust root. (Because if it requires user interaction to install that can be exploited by malicious actors.)

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by majewsky on Sunday June 28, 2020 @04:30PM (#23671792)
You can always issue the TLS certificate on an internet-facing system that can do the corresponding ACME challenge, then give it to the internal service and have all clients of that service resolve the domain name for the certificate via a static configuration in /etc/hosts. That's how I do TLS for my intranet-only LDAP server.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by herf on Sunday June 28, 2020 @05:08PM (#23672065)
It would be nice if there were a way to be a CA for a subdomain. Then each manufacturer could sign *.mydevice.com.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by alyandon on Sunday June 28, 2020 @01:11PM (#23670283)
I've just resigned myself to accepting the fact that I am not the browser vendor's target market anymore and I'll have to keep an older copy of FF around for the sole purpose of accessing devices I own that will never see an update to modern crypto/certificate standards.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by secabeen on Sunday June 28, 2020 @12:42PM (#23670018)
Do self-signed certs not work? Yes, you have to tell your browser to permanently accept them the first time you connect, but after that, they work.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by j1elo on Sunday June 28, 2020 @01:32PM (#23670441)
For some reason, iOS Safari won't do like all the other browsers, show a warning and then let you access. No, it outright rejects self-signed certs. You have to go through the trouble of installing the root CA into the phone, which is not practical.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by stefan_ on Sunday June 28, 2020 @12:46PM (#23670053)
Why as a vendor would you use a self-signed certificate that causes the browser to scream at the customer when you could just not use TLS, plain old HTTP.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by tialaramex on Sunday June 28, 2020 @01:30PM (#23670416)
Some features require Secure Context. Browsers just don't enable those features in a context that isn't secure (HTTP is only considered "secure" on the loopback network to your own machine). If it's a Javascript API it returns an error, if it's an HTML or HTTP feature it doesn't work. "Here's a nickel kid, get yourself a secure context".

Both Chrome / Chromium and Firefox have explicitly set policy that new features (as opposed to tidier ways to do things that already exist like DOM improvements) will require Secure Context, and there's already a weak assumption that even some tidying up will go into secure context when the rationale for not doing so is shaky (e.g. some of the web crypto features that needn't technically require Secure Context do anyway).

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by stefan_ on Sunday June 28, 2020 @01:58PM (#23670660)
I mean yes, browsers have amply demonstrated they don't care about secure local device communication at all. Mostly from ignorance and disinterest. It's their loss, just means everyone has to install an app or that smart lightbulb only talks to the vendor cloud.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by PersonalOps on Sunday June 28, 2020 @01:03PM (#23670197)
Because the alternative is to embed a TLS private key that would allow you to MITM every other one of those devices. Someone extracted it? Looks like you have to either (a) bury your head in the sand or (b) rollout an expensive recall to change certs on those devices.

Why use slightly compromised HTTPS versus plaintext HTTP? Same reason they have those super cheap locks on diaries from the 90s: it's a deterrent. Makes it a little harder to do a bad thing.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by stefan_ on Sunday June 28, 2020 @01:09PM (#23670269)
You have already answered why no one in their right mind would embed a shared certificate across all devices. I don't think you are being realistic with yourself when you believe people use self-signed certificates; they don't.

You are missing what happens instead. There is just simply no web management interface on the device anymore. You need to download the vendors app to configure and use the device. Maybe, if the vendor cares, they use their own CA to secure a local connection to the device. Much more likely, the app and device exclusively talk to their cloud and use that as a middleman to exchange information.

Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by andrewnicolalde on Sunday June 28, 2020 @01:24PM (#23670374)
But it also makes it a little harder for the user to do what they want too because they have to click through a (correctly) scary-looking security warning.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by loeg on Sunday June 28, 2020 @02:37PM (#23671012)
Chrome seems to intentionally forget you accepted self-signed certificates after some period of time.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by jcims on Sunday June 28, 2020 @04:21PM (#23671740)
I feel like Chrome has generally become much more amnesic as of the past few months. Lost more signing in to various services, which isn't a bad thing, I'm just not sure what (if anything) changed.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by pstrateman on Sunday June 28, 2020 @03:14PM (#23671263)
Unfortunately the answer is no.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by pilif on Sunday June 28, 2020 @12:23PM (#23669853)
Backdate your self-signed cert. so far that works around any validity length restrictions.
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by cpncrunch on Sunday June 28, 2020 @12:26PM (#23669876)
Re:Chromium and Mozilla to enforce 1 year validity for TLS c... by whoopdedo on Sunday June 28, 2020 @02:52PM (#23671106)
The answer to that may be to stop using the web browser to do damn near everything. Your computer will load an app, distributed by a trusted app store or downloaded directly from the device, that talks only to the device on the local network, and to a whitelist of allowed internet hosts, and nothing else. The app will have a client certificate so the device won't blindly trust the computer either. Firefox will only communicate over the local network in a limited way, enough to download the app from the device or get a link to the manufacturer's app store profile. Or that discovery can become part of the operating system and browsers will stop talking over the local network at all.