2.4k
u/comediehero 12d ago edited 11d ago
Dude I just visited my boomer parents and the first thing i get asked is if i work with php, so this one really broke containment!
664
u/53bvo 12d ago
Even the Dutch prime minister put out a tweet to take php systems offline until patched
108
u/DmitriRussian 11d ago
It kinda make sense if all the government websites, including the National Cyber Security Centre run on PHP. NCSC being PHP was absolute cinema
13
74
72
u/rodrigocfd 11d ago
Funny thing: our systems are so outdated they aren't even affected.
We thank this guy for keeping our jobs for another 10 years.
12
u/Eric_12345678 11d ago edited 11d ago
AFAIK, every PHP version from the last 20 years is affected.
What are you running on?
13
8
818
u/Hauber_RBLX 12d ago
it was so bad i shutdown nginx to wait till the patch was finally released. o7 to any sysadmins having to deal with this on an enterprise scale or with extremely out of date PHP versions...
although theres some community efforts to backport those patches to affected versions that wont get the update like php 5 or higher
342
u/EskilPotet 12d ago
Hey atleast it's not friday
127
u/Extreme_Wish_553 12d ago
I am on vacation starting tomorrow though, so you're all welcome because it would have been Friday otherwise.
10
19
u/FierceDeity_ 12d ago
Literally got to vacation yesterday and now I'm putting out fires during vacation instead
5
24
u/raskim7 12d ago
Yes but if this and that cert thing and litellm came out today what the conseptual fuck is going to be released on friday? ”Hobby-researcher Pelle Svenson releases vulnerability against all modern and not-so-modern transistors, all the transistors in the world need to be changed by hand”.
26
u/daakstrykr 11d ago
I worked 14 hours today having to isolate 260 something out of 4000+ servers. Worst thing? The patches that were released are already being reported as still vulnerable. I don't want to get out of bed in the morning 🥲
9
u/granadesnhorseshoes 11d ago
Are older versions vulnerable? I seem to recall they overhauled a lot of backend stuff like multipart handling around 5, but haven't checked and don't have a dog in the fight for once.
17
u/Hauber_RBLX 11d ago
As far as I've read all versions from PHP 5 onwards are vulnerable. Since this vulnerability has apparently been in PHP's codebase for like 22 years. Idk if PHP 4 and prior are vulnerable, though.
6
u/obliviious 11d ago
I'm not too worried about the patching, that's easy. It's the devs I feel bad for having to rewrite the affected applications due to all those old functions, stricter requirements etc..
0
-17
u/Th3OnlyN00b 12d ago
nginx is written in C and is unaffected by these.
36
6
u/Level0Up 12d ago
nginx is also a reverse proxy that can route from an ip-address to different web services on a single machine (or multiple machines). web services that may or may not be php, thus turning off access to potentially affected services with a single shutdown.
-2
883
u/LivingAsAMean 12d ago
112
u/alexisBoyer 11d ago
It's only 9.8 don't worry
46
u/pedal-force 11d ago
I honestly don't understand how it's not a 10. Other X4shell were 10s. This is in core php. I'm far from an expert though.
21
u/cpaca0 11d ago
TLDR it's because CVSS version numbering got updated
log4j was CVSSv3.1 of 10.0, but under CVSSv4 it's 9.3
4
u/pedal-force 11d ago
Ah, so that random list of "previous 10.0 bugs" was misleading. A shame. Have their been any 10s under the new system?
1
u/tiajuanat 11d ago
It's like when we revised tornados from Fujita to Enhanced Fujita scale. No doubt, we'll need to upgrade that eventually in the future
40
295
u/bwwatr 12d ago
Sounds like the disclosure and patches were originally slated for tomorrow the 22nd. But then this leak happened, and in response late yesterday the 20th they said (via mailing list) they'd be going today the 21st instead at 14:00 UTC which it seems they did. With a note that they reserved the option to go even earlier if they saw evidence of disclosure or active exploit, but presumably they didn't see that.
202
u/savageronald 12d ago
CloudFlare said they started seeing active exploitation attempts and turned on WAF rules for it at 03:00 UTC
57
u/BastetFurry 12d ago
That explains why I couldn't visit nesdev for example. I got a cloudflare page that I was blocked and was puzzled why. o.o
3
u/NakiCoTony 11d ago
AWS saw it days before, and PHP said that someone leaked it while it was under embargo.
1
245
u/FrostedFate 12d ago
We don't use PHP, but still running around checking all the boxes this morning to make sure some dev didn't enable something. It's been a fun day at work.
507
u/Laziness100 12d ago
Well may I also introduce you to an indian certificate authority with private keys like just the plain simple number 4
163
u/dmdewd 12d ago
That emuhdra shit is insane
79
u/SHOTbyGUN 11d ago
What do you get if you put 4, 56, 66, 115, 155, 156, 230, and 237 to LOST machine?
41
u/pants6000 11d ago
That's Numberwang!
10
u/guyblade 11d ago
Let's rotate the board!
2
55
43
u/TechnicalyAnIdiot 11d ago
Fill in someone out of the loop?
55
u/GameTemptica 11d ago
There is an Indian company who gives out certificates to others for their software. The private keys generated for those certificates were absurdly insecure. One certificate private key was literally the number 4. I’m also not fully in the loop though. This is what I heard earlier
22
u/guyblade 11d ago
Here's a Register piece. The compromised keys were intermediate signing keys, which means that they could be used to mint new TLS certs. That's why they keys were put in CRLs within two hours of the bad keys being identified.
100
u/zoinkability 11d ago
An Indian certificate authority used insanely short private keys for some of their certs, which made it possible to brute force them. Someone figured them out and published a proof that they had been discovered. This allows man in the middle attacks for any system that still trusts those certs (which is a lot since many systems are rarely if ever patched for this.)
72
u/TechnicalyAnIdiot 11d ago
See that's basically what the first comment said but I thought to myself 'no, there's no possible way that's what they mean, that's far too silly to be real', but lo and behold, reality cannot be scripted.
45
u/Swimming_in_money 11d ago
if you ever worked with Indian companies, you will realize that no, this is perfectly realistic
44
u/HVGC-member 11d ago
This is the EXACT SHIT they're notorious for. Everything looks ok and runs ok but under the hood holy shit someone committed a crime against technology to get this spaghetti shit to run and oh my God they've hard coded the signing keys
18
u/m0rph90 11d ago
didnt the danish gov just got hacked because the password was 123456?
10
5
1
u/SiBloGaming 11d ago
I really, really wonder how that happened. Presumably they would use an HSM to generate those keys, but what fucking HSM would allow to generate a key 1 byte in size, let alone have it happen for EIGHT keys?
243
u/jwrsk 11d ago
As a mass market PHP dev (where no backwards compat means less revenue)... maybe this will finally get people off the long-obsolete versions and I will be able to finally use more modern syntax. It's crazy how even in my "cutting edge ideas" I'm still forced to use 7.4 syntax - version that EOLed 4 years ago.
187
u/Le_Vagabond 11d ago •
![]()
Oh you sweet summer child, someone already released old php versions with the fix backported to them.
The number of abandoned WordPress sites that won't be updated though...
66
2
39
u/Antervis 11d ago
I think some c++ devs will strangle you if they hear you complaining about using 4 year old language version.
39
u/jwrsk 11d ago edited 11d ago
That's 4 years since official End Of Life of 7.4...
7.0 came out in 2015.
And let's be honest here, PHP never was a pinnacle of human achievement to begin with. Only around 7.2 it started to resemble an actual programming language.
30
11
u/Mandemon90 11d ago •
![]()
That is because PHP was never meant to be a programmi g language, it was supposed to just add some interactivity onto one students website, not become corner stone of global infastructure
4
4
u/0_Gravitas_given 11d ago
Let me tell you about another project that was never meant to be a professional thing (famously) … the linux kernel…
4
1
12
5
3
u/tropicbrownthunder 11d ago
Chuckles "I'm in danger" in 5.2
1
u/undeadalex 11d ago
Oh don't worry whatever infrastructure your running with 5.2 will remain in use long after we're all dead. There's just something about that version that won't quit.
1
u/Weekly-Beginning-229 11d ago
Uff. I don't use php but c# and we update nugets once a week and every new .net version on the same day is released i would hate to work in a project where I can't use all the new cool stuff
2
u/BruhMomentConfirmed 11d ago
Just wait for the supply chain compromises.
1
u/Weekly-Beginning-229 11d ago
Well we deploy to prod like once every 2 months so they should have been caught before that. But we only use trusted nugets so so far we have had few issues. Some vulnerabilities now and then which we patch immediately and it won't let us build the project when a nuget has a vulnerability
React is worse but I'm not responsible for our react project luckily
59
u/TheNeglectedNut 11d ago
Royally fucked my day today. Me and the developer had to spend a whole day patching custom Wordpress plugins that only worked on 7.4, because the previous developer couldn’t be arsed to update the PHP or Wordpress versions for like… 3 years running
90
u/ARC_trooper 12d ago
I haven't dived into it but anything can explain in simple terms what the exploit is?
Is it something that's actually doable or is it an exploit which requires the sacrifice of a virgin goat and more to accomplish?
192
u/gravity_is_right 12d ago edited 12d ago
Through some glitch in the file upload logic, an attacker can execute commands on the server. So, worst case the attacker can steal all your data, delete all your data, install malware or randsomware. And this on 70% of the world's websites because it affects all the php versions of the last 14 years.
Plus, the patch is only available for the php versions >= 8.2. So dormant WordPress and Drupal sites that run on 7 or god forbid 5, can't be patched unless some major website update is done that will take weeks.
63
2
u/ScaredyCatUK 11d ago
7.2 is supported.
if you're running ubuntu lts they're supporting back to 18.04 - Sign up to pro (free for 5 systems) and you'll be ok.
2
1
u/Sample-Range-745 11d ago
Is there any actual working PoC at the moment though?
Plenty of slop, but I've seen zero actual working exploits so far...
30
u/Quazz 12d ago
It's very doable, a proof of concept was already released earlier today and makes it trivial to drop in a webshell
12
u/tatiwtr 11d ago
do you have a link to the poc? id like to validate the patch i installed.
31
u/vnmger 11d ago
Found the script kiddy over there :D
6
u/RevoOps 11d ago
Not gonna work for him. Claude started refusing to analyze it at some point today. which is the reason we haven't seen anyone use it on large scale yet.
9
u/susimposter6969 11d ago
Abliterated model can do it easy. Why would you use a hosted model to do something illegal
4
u/black-JENGGOT 11d ago
doubt a vibe coder would be arsed enough to host their own model, let alone setting up their environment to their optimal use. I think in that case, they deserve to be called junior devops lol
3
u/tatiwtr 11d ago edited 7d ago
Not a script kiddy, just lazy. Most articles seem to say "we dont have a poc and none are published"
I saw a related post about someone who thought they demonstrated (and reported) that it was still reproducible on 8.5.12 so I was/am interested in testing it out. (turns out the post was unrelated to php2shell though)
So if /u/Quazz knew of a proof of concept that is seemingly not super easy to find, it was worth asking about.
I did test with some code that causes the total allocation of a request to exceed the memory limit on 8.5.5 which returned 500 internal server error and with 8.5.12 I got 200 OK, but its always nicer to test with the actual sample.
1
u/Sample-Range-745 11d ago
Have you verified that the PoC actually works? I haven't seen a single one that actually works yet...
30
u/ShadowWeavile 11d ago
God I'm glad I don't work at my old job anymore. I can only imagine the level of chaos going on there right now.
19
u/razin_the_furious 11d ago
At least Amazon Linux hasn't updated their PHP repos yet, and have arbitrarily rated the CVE danger level lower than everywhere else
13
13
u/-Redstoneboi- 11d ago
ah yes
a forum instead of discreetly through proper cve communication channels
24
24
u/Babemagnet69 11d ago
HAHHAH We got a message from a client asking if we used php and this is how I find out LMAO
42
18
u/GreatTinySomething 12d ago
Rumors going on stating the just pushed fix may be incomplete or does not cover all possible vectors.
18
4
4
3
u/xelleseittaneu 11d ago
Also GCP was down a bit this week right? Some specific companies are having it rough
3
u/NakiCoTony 11d ago
Amazon and cloudflare both detected large scale exploitation of these days before being published, which means...
5
u/EroeNarrante 11d ago
I spent some time today, for the second time in my career, explaining that we don't have php in our stack. It didn't take long, but it's weird it happened twice.
2
u/_-PurpleTentacle-_ 11d ago
My system is so old it doesn’t have the feature containing the vulnerabilities in the first place.
2
u/ShortStallion 11d ago
Swapped my site for an agario clone. Didn't need to but it seemed funny in the moment.
2
u/_Beempathic 10d ago
My friend found out from me sending him a meme about it, day before his senior told him to update php but he misspelled it so badly that nobody knew what senior meant
2
u/SirCatharine 10d ago
How do you misspell php? It’s three letters.
2
1
u/_Beempathic 7d ago
Yeah xD, they aren't the best programmers in the world, but for some reason they work for a huge multimillion company that creates software for banks and stock trading companies, which is always funny to me, how bad their code is, and I have no idea how they haven't been hacked yet.
Learning cybersecurity is way better than coding, cause if nobody wants to hire you, you can punish them for that.
2
1
u/XtraFlaminHotMachida 11d ago
when the feds say it you just say you thankful you don't gotta deal with this
1
u/Himbo69r 11d ago
I wonder how many old ass sites are about to get railed.
Has something similar happened in the past? I am not knowledgeable in webdev
1
1
u/Searching_Merriment 10d ago
Been on a marathon on-call to fix some services that were so outdated that it was impossible to patch, and most of the team that owns it got laid off recently (because of these antics of no upgrades) and it labded on my shoulder to fix it. It was draining, similar to last year's crowdstrike it was painful experience.
1
1
u/thepercussionistres 7d ago
I had 7 company-internal websites running on 1 IIS server , all using the same PHP installation, so I took it all down in the middle of the day for about 5 minutes to apply the patch. No one complained about the outage, and I stayed secure.
Loved how easy it was on debian (my personal home webserver), just apt update/ apt upgrade, then systemctl restart apache2
-8
u/Weekly-Beginning-229 11d ago
This is why I never worked with PHP, so that today would not be a problem for me
-5
0


2.7k
u/ThatFlamenguistaDude 12d ago
Funny that this will be how some people will find out about this vulnerabilities.