Yes, Ubuntu 20 isn't EOL yet. A lot of those downloads are probably IT staff or developers that are running Ubuntu servers or developing on those versions.
ETA: We still have some RHEL 7 and clones at my day job
20.04 and 22.04 were LTS versions, aka, long term support.
Any application that requires stability should run on LTS versions. Combined with Ubuntu being one of the most popular distros, makes 20.04 and 22.04 the most popular choices for anything in a home lab and many smaller business needs.
Whether you're building a server for home DNS, or a time server for a small business, then you're probably using Ubuntu as the base.
I think the next LTS version will be 24.04, so things might shift sometime after that.
I can give you an answer from someone who regularly downloads really old EOL versions of Ubuntu and Debian. I personally use them as part of attack and defense competitions. They are normally very close to unusable and are nearly impossible to update to a more recent or secure version. This forces my team to find creative ways to keep them working while also taking measures to isolate them as much as possible. I also use them to teach old exploits that have been patched in more recent versions, walking people through how it worked and why it existed.
It happens a lot more with Windows machines, but there might be some manufacturing systems out there that require software that won't run on modern versions of the OS. These systems often require new manufacturing tools in order to upgrade, or they need massive overhauls that smaller companies can't always afford.
This forces my team to find creative ways to keep them working while also taking measures to isolate them as much as possible. I also use them to teach old exploits that have been patched in more recent versions, walking people through how it worked and why it existed.
I am interested in learning more about this. I know a fair bit about networks but exploit history and modern attack / defense strategies and server hardening are not my main specialty. Do you have any good links or resources that you can share?
Ok so to be clear when I said team I mean a bunch of college students preparing for different ctfs, but these are some of the more helpful resources we have found:
Tryhackme: personal favorite especially for beginners
Hackthebox: great for learning/practicing attacks
Overthewire: another good ctf site
We try to build many of our own ctf like machines, then each person switches their machine with another person and the other person tries to secure the vulnerabilities without knowing anything about the machine. Once everyone has secured their machines we try to attack them using the notes made while setting them up. This is our step by step for that process.
download an old version of a distro. (Ubuntu 14, deb 9, ect)
install and setup the VM without any updates or changes to the default configuration
google the distro version (Ubuntu 14.04) + vulnerabilities or exploits
read through the different sites to find applications that had huge security issues on that version and begin installing some of the programs that have known exploits
So for example with Ubuntu 14.04 we know there are some Linux kernel exploits.
From here I could add some of the packages mentioned as having exploits and then attempt to exploit them. I could also check newer versions of Ubuntu like 16 to find vulnerabilities that would also apply to older versions.
There is also Mitre's list(s) of the most dangerous software vulnerabilities. They have one for 2023, but also a catalog of lists from previous years.
I don't know about now, but my first Linux OS was Ubuntu and I appreciated the long support because of this. That was in the dial up days, tho, I can't imagine why anyone would require that now ☠️
I worked at a place which was still using a 20.04 version (for products they were selling) because updating it would require spending any amount of time updating software. Path of least resistance is using the old os forever.
Systemd haters? But seriously, this could well be because of business environments where applications require specific OS versions to keep being supported by the vendor. Or better: where the orchestration tool cannot be updated because of the old OSs while said OSs cannot be updated because it will break orchestration.
This is why people love containers: you can run insecure software on insecure OS (component)s while pretending to be in control on your shiny Kubernetes cluster.
I once downloaded a really old (like 10 years old) ubuntu iso, because I had an app in deb format made for that version, that needed older libraries to run. Perhaps, there were other ways to run it, but running the older iso in a vm worked fine.
22.04 still isn't FIPS validated yet, so if you need FIPS with Ubuntu pro, the most recent LTS distro you can get is 20.04. That's why 20.04 is still popular.