This is and update on the php2shell vulnerability and a response to the blog post from https://lemmy.world/post/53441818 : https://eliastaylor.com/noexploit/
This is and update on the php2shell vulnerability and a response to the blog post from https://lemmy.world/post/53441818 : https://eliastaylor.com/noexploit/
I guess nearly everybody has installed the patch by now. Even myself :)
Maybe we are going to see “scanner” websites for such patch situations in the future, with a world map and statistics where are how many unpatched servers…
I admire your belief ;)
https://php2shell.censys.com/
ATM almost 80% of scanned services are still vulnerable. Considering that
**About 54% of PHP services hide their version** and are not counted as affected or patched.it doesn’t look too goodYeah, assuming everyone installed the patch is quite optimistic. But censys probably also undercounts the number of fixed systems, as some Linux distros (e.g., Ubuntu) don’t change the version when shipping security fixes. I’m running the sury.org package which would report as 7.4.33 but has been patched. Still it looks like there’s tons of unpatched services.
You mean things that already exist, like https://shodan.io/?
I don’t know. What does it tell about patches on servers (who don’t easily show their internals in such detail)?
Some servers do publically list their PHP version, and as an example there are currently ~23,000 that list PHP 8.5.11: https://www.shodan.io/search?query=PHP%2F8.5.11
Sure these could be a manually patched version of 8.5.11, but I find that pretty unlikely.
Yes, hopefully most people had time to install the updates. And maybe the false exploit reports helped slow down malicious people too.
Don’t people use unattended upgrades? Crowdsec’s WAF AppSec or Cloudfare’s WAF also put out patches that would’ve caught these vulnerabilities before the official PHP patches were released.
Of course, those normally run once per 24 hours, which is a little late…
No. Unattended upgrades are a nightmare in production. If you patch stuff manually or even with ansible, you can see what the hell broke during the upgrade. Whereas with unattended access you walk in Monday morning with half your systems down and no idea which update broke it.
For professionals and buisnesses, I see where you are coming from (although there is an argument to be made for prioritizing security over uptime whenever acceptable).
But for selfhosting/private users? If I wake up one morning and my stuff is not working anymore, I can just roll back to the last good backup and then apply patches manually to see where it goes wrong. Way better to have some downtime when I don’t notice (i.e. don’t need the service) than having open vulnerabilities when a fix exists.
Unattended application to test. If it passes testing, unattended application to prod.
I still wouldn’t do this for any critical service, but for a “move fast and break things” system like Facebook where it goes down and nothing bad happens, sure.
Yeah, for businesses I can see that, but selfhosting, meh. I have just one personal server firewalled and Wireguarded, so the PHP vulnerability wasn’t even publicly exposed. Even so, I have never had any issues with Debian’s unattended security upgrades in the last 5 years.
In enterprise environments with a hundred servers, though, you will want to do something else than I do. :)
But even then, don’t enterprises run a good WAF in front of their public web sites that would have received the patch automatically?
It would be interesting to know what share of servers have that enabled.
I have it enabled on Debian and Ubuntu and I’m quite happy with it. But I had pretty bad experiences with reboot-less updates on other (desktop) distros.
I think Debian is probably pretty conservative in their updates. I also recommend checking out the needrestart package. It will tell you when a reboot is needed because of a newer kernel that was installed, or when a systemd service needs a restart.
But as another commenter noted, outside of self hosting, in enterprise businesses environments where you manage an army of servers, things look different. But then, these guys are paid to be on-call in the weekend for events like these. :)
The path to uptime is paved with understanding what broke and when.
php can be a real nightmare even with it’s well-attended upgrades :)
Well, we’re talking (Debian’s) security updates only here, not major PHP version jumps. :)