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.