Live data from Hacker News

Let’s Encrypt comes up with workaround for abandonware Android devices

arstechnica.com

31–40 of 132 posts

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#31
post #27

> Android, the world's only major consumer operating system that can't be centrally updated by its creator. The only one out of... two?

I, too, found that an interesting phrase.

The way I see it, there are three major consumer operating systems; four if you think iOS and OSX should be considered separately. Out of those three/four, only one tries to keep devices working and up to date as long as possible...

iOS/OSX allows central updating, but drops phones older than 5 years, and desktop/laptops from 5-7 years depending on the product series; users cannot maintain the OS themselves and are forced to abandon the device.

Android allows users to update the OS themselves against the wishes of the phone's OEM, but Google cannot force OEMs to continue supporting a phone within a reasonable timeframe (ie, no phone younger than 5 years should be dropped, yet is an unfortunately frequent occurrence with Android-hostile OEMs).

Microsoft tries to keep Windows running on PCs an absurdly long time, but users choose to fight Microsoft on this even when its in their best interest (ex: people still willingly run 7, even though 10 performs better, with less crashes, more performance, and less security bugs).

Alas, the dream of a Windows Phone is dead. Other than that, its most certainly an odd phrase in that article given what iOS does, since the user can still choose to go the third party Android ROM route if their OEM has truly abandoned them.

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#32
post #27

> Android, the world's only major consumer operating system that can't be centrally updated by its creator. The only one out of... two?

Windows, macOS, iOS, plus various flavours of Linux if you want to count them.

KaiOS and Tizen also have a userbase wide enough to be considered major consumer OS's (even if primarily targeting markets such as India).

The Switch OS could probably also be considered major at this point with the number of devices out in the wild. Same goes for LGs WebOS. VxWorks is also fairly big, although at least Canon changed over to something custom for their cameras.

And that's just the consumer facing OSs. There's a lot of surprising ones, like Apples use of NetBSD for their Airport devices.

OS diversity is high outside common desktops, and desktops are a vanishingly small portion of consumer computers.

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#33

Earlier quoted context omitted.

Let's assume that you are correct. I am now holding a perfectly-fine Samsung Note 3, purchased new in 2013 and has never had a broken screen. To which trusted source can I initiate a remote update?

> To which trusted source can I initiate a remote update? Probably you can get some sort of AOSP build running on it, and patch it yourself to get at least somewhat up-to-date components.

Generally these devices use the ancient kernel that they shipped with with the current userland.

This is because the device drivers are compiled for that kernel version with no open source alternative.

So whilst it might be running a newer version of Android. It isn't like installing Ubuntu 20.04 on a 10 year old laptop.

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#34
post #27

> Android, the world's only major consumer operating system that can't be centrally updated by its creator. The only one out of... two?

Windows, macOS, iOS, plus various flavours of Linux if you want to count them.

iPadOS and watchOS deserve a mention.

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#35
post #3

I have always wondered a bit what is the purpose of expiration dates. For certificates or GPG keys alike. Once they expire it often enough creates some problems. Either because renewal has just been forgotten or because there are some technical issues, like in the Let's Encrypt / Android case. If you have a security incident you can't wait for the expiration date anyway, you need to revoke. And hopefully users have a…

I just always assumed it was like the rest of SSL:

It’s well-documented NSA saboteurs infiltrated the standards board. They forced through a bunch of bad proposals with the intention of making it overly complicated. The idea was to encourage misconfiguration and implementation bugs.

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#36

>Today, your example eight-years-obsolete install base of Android starts with version 4.2, which occupies 0.8 percent of the market. Instead of hoping that the 0.8% will shrink over the next 4 years, Let's Encrypt should understand that the 0.8% are the sane, reasonable people who realize that their Android devices still work fine for their intended purpose and do not have to be mindlessly upgraded because of mass-me…

Why are you going after Let's Encrypt and not the manufacturers and hardware vendors that abandoned the devices?

The source code for the device drivers are not available to be able to update these phones to the latest version of Android.

These devices are insecure. Using them is not sane.

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#37
post #35
post #3

I have always wondered a bit what is the purpose of expiration dates. For certificates or GPG keys alike. Once they expire it often enough creates some problems. Either because renewal has just been forgotten or because there are some technical issues, like in the Let's Encrypt / Android case. If you have a security incident you can't wait for the expiration date anyway, you need to revoke. And hopefully users have a…

I just always assumed it was like the rest of SSL: It’s well-documented NSA saboteurs infiltrated the standards board. They forced through a bunch of bad proposals with the intention of making it overly complicated. The idea was to encourage misconfiguration and implementation bugs.

Where did you read this?

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#38
post #3

I have always wondered a bit what is the purpose of expiration dates. For certificates or GPG keys alike. Once they expire it often enough creates some problems. Either because renewal has just been forgotten or because there are some technical issues, like in the Let's Encrypt / Android case. If you have a security incident you can't wait for the expiration date anyway, you need to revoke. And hopefully users have a…

I can understand the purpose behind the expiration dates on the SSL certificates you get issued for your domain — domains change hands, things happen. But why do root certificates have to expire at all? Relying on the system to be updatable and requiring constant maintenance doesn't feel very sustainable, and generally causes all kinds of problems. Modern Android versions treating user-installed root CAs as second-class don't exactly instill confidence either.

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#39

>Today, your example eight-years-obsolete install base of Android starts with version 4.2, which occupies 0.8 percent of the market. Instead of hoping that the 0.8% will shrink over the next 4 years, Let's Encrypt should understand that the 0.8% are the sane, reasonable people who realize that their Android devices still work fine for their intended purpose and do not have to be mindlessly upgraded because of mass-me…

The main problem with old devices is the battery. I don't like changing my phone too much, so I use it until the battery only is good for a 10 minute call or a day without calls, or one of my kids drop the phone and it gets broken.

So I change it probably every three years, and sometimes my wife use the new phone and I use her old phone. (She use the phone more than me.)

One possibility is that the manufactures add more batteries, but it makes the phone more expensive and heavy, and it doesn't solve the accidents by the kids.

Re: Let’s Encrypt comes up with workaround for abandonware Android devices

#40
post #7
post #3

I have always wondered a bit what is the purpose of expiration dates. For certificates or GPG keys alike. Once they expire it often enough creates some problems. Either because renewal has just been forgotten or because there are some technical issues, like in the Let's Encrypt / Android case. If you have a security incident you can't wait for the expiration date anyway, you need to revoke. And hopefully users have a…

In order to revoke a certificate, you first must at least suspect it has been compromised. An expiration date can help limit the impact of compromises you don't suspect.

It's also important to see that the SSL/TLS system does not allow you to revoke a certificate with 100% certainty, the revocation mechanism is flawed - it's often practically impossible to reliably revoke a certificate after someone has compromised your private key. The only feasible workaround is early expiration to reduce the window of vulnerability.

* CRL is a list of revoked certificates, it must be downloaded and manually applied to all clients, which only occurs once in a while as a new update, and many hate system updates. The huge lists of revoked certificate have size, performance and scalability problems, currently they are considered obsolete and mainly replaced by OCSP.

* In OCSP, clients ask a CA's OCSP server to determine the validity of a certificate. It operates out-of-band from the main TLS connection, and networks and CA servers are not reliable, especially in the early days. Timed out OCSP requests were common. If you are a web browser, you don't want a failed OCSP request to block/DoS HTTPS, thus OCSP becomes essentially "optional". Browsers reject bad certificates when the connection goes through, but if it times out, nothing happens. An attacker can simply block the OCSP server to bypass the revocation check. There's also the problem of privacy - you have to send the name of every website you visit to third party servers.

* In OCSP Stapling, the webserver acts like a proxy - it hosts a cached copy of the OCSP response for itself (it cannot be forged because it's signed by the CA) and sends it to clients in-band, via normal TLS channel. Because now the client no longer asks CA's OCSP servers for a response, but instead simply asks the webserver itself, it eliminates the problem of third-party OCSP servers, solves the reliability and privacy issues. However, there's nothing to prevent an attacker to run a server with a compromised certificate with OCSP Stapling turned off.

* In OCSP Must-Staple, you can get a certificate from a CA that says "you must use OCSP Stapling, otherwise this certificate is null and void." Hence, if a browser sees a certificate with "OCSP Must-Staple" enabled, it must see whether the webserver supports OCSP Stapling, and via OCSP Stapling, the certificate's validity will be determined. If OCSP Stapling is not supported by the webserver, the connection is rejected. Thus, an attacker who uses a compromised certificate has to either disable OCSP Stapling and be rejected, or to enable OCSP Stapling and gets caught. Finally the problem of reliable revocation is solved. But this is an optional feature and is only used by a tiny percentage of sysadmins. Also, it's only supported by webservers and browsers, other TLS-based applications like VPN, FTPS, SMTP, IMAP, XMPP, IRC servers/clients, etc, usually don't support OCSP Stapling at all.

Thus, it's often practically impossible to reliably revoke a certificate in SSL/TLS after someone has compromised your private key. The only feasible workaround is early expiration to reduce the window of vulnerability, an unrevokable certificate that expires within 90 days is less dangerous than a zombie certificate that lasts two years.

Post reply on HN