I don’t know. We have customers connect to us with their internal systems they haven’t touched in ages. I can’t possibly tell them that they need to update their infrastructure two years (Debian has a two year release cycle and has released this year) from now.
And then there are some end-users behind enterprise middle-boxes which don’t support anything beyond TLS 1.1 and I have a feeling it’s going to be difficult to communicate to them that they need to change the configuration.
This means that we'll have to package our own FTP and HTTP servers in the future. Not a big deal, but certainly not something I'm looking forward to.
Oh and our mail relay I probably have to build myself too or just disable TLS. You have no idea what shitty SSL configurations are used out there by the various systems trying to send us email.
Grumble. At this point, I might as well run Linux from scratch when most of the daemons we run won't be able to talk to a seizable chunk of the clients connecting to us any more.
In other words: if you set up Debian out of the box today, its default packages will talk to 99% of clients out there on the internet. If you set up Debian in 2019, about 30% of the clients out there won’t be able to talk to you.
And the fix won’t just be a configuration change; it will require you to manually build every single daemon you make use of.
I think introducing some friction here is a good idea, pre 1.2 tls/ssl are objectively broken, insecure protocols.
Unless some of these people experience some pain and fix their shit, they will never upgrade, and by extension keeping everyone that wishes to communicate with them vulnerable as well (due to BAD_GUY being able to force protocol downgrades)
Is it the right solution to accommodate them (not to mention by default out of the box which means it hurts your users without them being aware of it or able to make an informed choice) and pretend it isn't a problem, and thus putting yourself at risk too?
For the same reasons i think its highly irresponsible people like FreeBSD patch in garbage like null cipher support into ssh. It is broken let the people who have to use it for whatever weird reason deal with the burden of their broken shit, don't force it on everyone else and weaken their security.
sure. Disable it by default, but leave it compiled in, so an admin can re-enable it by changing a config setting instead of recompiling half a distro.
> and thus putting yourself at risk too
I'm not at risk if some big restaurant chain orders their supplies over TLS 1.1 instead of TLS 1.2. I'm not at risk if their email server sends us support tickets over TLS 1.1 instead of 1.2.
However, my business is at risk if they can't order their supplies and if I then can't receive the support email telling me so.
> patch in garbage like null cipher support into ssh
there's a huge difference there: null-ciphers are completely pointless and no known client out there only supports null-ciphers.
But about 30% of the internet doesn't support TLS 1.2.
Its unfortunate that this situation causes you problems, but there is literally no other way that some people will ever upgrade their shit, you could wait 10 years and they will still be using tls1.1.
Its important to at least make it harder than flip some switch and forget about it forever, or nothing is going to change.
I agree that there is the absolute need for advocacy. I agree that we need to get rid of old TLS. But I disagree that it’s up to the OSes to make this a compile time issue.
If Debian comes out in 2019 in a state where 30% of the internet can’t talk to it without recompiling the daemon packages, then people will switch to „more compatible“ distros.
I have the infrastructure to quickly deploy patched packages, so for me this is just an annoyance (also because these self-built packages I have to security-patch myself, which is actually putting me at risk), but others don’t. For them this will be a reason to switch distros
thing is chrome and firefox are almost certainly going to disable it well before then, and thats gonna make a shitload of people enable it, not everyone granted, but its going to be a lot lower than 30%
(Edit: this reply is a reply to a your comment before your edit that stated I was at risk because of non-mitigatable issues in 1.1)
My 1.1 supporting customers are at risk. I'm not at risk.
If they take the (unwise) decision that the risk of their connections being eavesdropped is less significant that the amount of work it takes to update their internal network, than its their decision. I am absolutely not in the position to do advocacy there.
And neither are other companies who have to serve enterprise customers.
„But allowing 1.1 will allow attackers to force secure 1.2 supporting clients to downgrade“ you might say. To which I reply: why are they still supporting 1.1? If they are security conscious enough to update their infrastructure to support 1.2, they can disable anything else when talking to me.
Then the regulations need to have a mechanism to be updated in the case of new knowledge. If the regulations have no process to be updated then that is a more fundamental problem to solve.
After all, Debian is set to give the process of change 2 years. That is plenty of time for updating the regulation and processes.
Any joker can start a company and declare any regulation they like. I could require that all software be written in COBOL by moustachioed developers standing on one foot.
If I did that, I think Debian would not change their software to meet my bizarre "company regulations"
When I talk to my virtual machines over the loopback device, I have to encrypt and then decrypt the traffic. That is pointless. I wish my SSH supported the null cipher.
If it supported the null cipher by default, users would be a single misconfiguration away from losing all security. By forcing the few who have a legitimate need for a null cipher to patch and recompile, this risk is reduced.
It's the same reason reputable crypto libraries avoid implementing things like the TLS null cipher suites (they exist), and also why the new TLS 1.3 protocol has only PFS suites and AEAD.
Would it really be necessary to rebuild all daemons? It seems to me that it would be sufficient to drop in a custom libssl that doesn't disable the old protocols.
At a previous job they finally deprecated RC4-MD5, long after almost everyone had stopped using it.
About a week later they had to re-enable it, because it turned out a few major customers had some old SPARC (IIRC?) boxes that used the service. The extra overhead of non RC4-MD5 ciphers was crippling them. There was some seriously frantic back and forth with the customer to get the situation resolved and figure out a timeline to finally, finally, finally deprecate RC4-MD5.
> At this point, I might as well run Linux from scratch...
You might as well learn the Debian tooling and run a system with the OpenSSL package patched with a build-time change.
On Ubuntu, that'd be the same as maintaining a PPA with one source package in it. On Debian, it's effectively the same except that you'll need reprepro or a script around apt-ftparchive instead.
This is far easier than your hyperbole of running Linux from scratch.
I am confused with your two years figure. With a two year release cycle in two years testing will become stable, but this change is in unstable which will become testing in two years.
And then there are some end-users behind enterprise middle-boxes which don’t support anything beyond TLS 1.1 and I have a feeling it’s going to be difficult to communicate to them that they need to change the configuration.
This means that we'll have to package our own FTP and HTTP servers in the future. Not a big deal, but certainly not something I'm looking forward to.
Oh and our mail relay I probably have to build myself too or just disable TLS. You have no idea what shitty SSL configurations are used out there by the various systems trying to send us email.
Grumble. At this point, I might as well run Linux from scratch when most of the daemons we run won't be able to talk to a seizable chunk of the clients connecting to us any more.
In other words: if you set up Debian out of the box today, its default packages will talk to 99% of clients out there on the internet. If you set up Debian in 2019, about 30% of the clients out there won’t be able to talk to you.
And the fix won’t just be a configuration change; it will require you to manually build every single daemon you make use of.