211 points ejohnso49 1 hour ago 109 comments
cubefox 1 hour ago | parent
petecooper 1 hour ago | parent
This was partly me. I take responsibility for posting it on HN. I am truly sorry for the disruption this has likely caused.
My contact had informed me there was no embargo, and told me her contact had told her the same. It transpired this morning that was a lie.
>On October 21st at 07:41 UTC, more than six hours before the coordinated release, Chainguard unilaterally broke the embargo and published built images containing the fix. Like other distributors, Chainguard had received the patch in advance so its users could update the moment the vulnerabilities were disclosed. Any attacker could now study the fix in binary form while every other PHP user was still waiting for the release. This disregarded weeks of work by many parties toward a coordinated disclosure.
On the plus side, at least I'm not Chainguard. Yikes.
dannyw 1 hour ago | parent
This is the most surprising part to me. It sounds like Calif saw the leaks, interpreted that as embargo being broken, and then raced to publish their [anime dancing] marketing video? I'd have expected much better.
bombcar 1 hour ago | parent
xp84 48 minutes ago | parent
This reads like some guy tripped and fell on top of his mouse and in so doing, accidentally turned on screen recording, performed the exploit a few times, got the anime girl asset and soundtrack, dropped all of them into Premiere, added the weird effects, rendered the video, and published the video to Twitter. "Ow. What did I fall on? Oh noooo, I broke the embargo!"
Heck of a mistake.
RamRodification 21 minutes ago | parent
bowersbros 1 hour ago | parent
thinkindie 1 hour ago | parent
eqmvii 1 hour ago | parent
Droobfest 1 hour ago | parent
lol768 1 hour ago | parent
emilburzo 1 hour ago | parent
You have your source code public, so you can't commit/push because then you've leaked info.
Your build pipeline is also likely public, so you can't just build from another source code... source.
You can create a private repo, but now you also need to build a private build system.
You don't get the same generous build resources for private repos, so you either:
a) simplify the build to just the essentials
b) pay
Unless you have significant funding, you'll probably go for a).
Now you have to maintain two systems, also with some differences between them.
Plus you need a way to get the build artifacts from the private system to the public one, typically at a fixed point in time.
Any failure/delay (e.g. less powerful build on private repo, errors because you exercise it rarely) causes people to get upset that you didn't respect the announced time.
Maybe you're also using things like image attestation, another can of worms.
modeless 50 minutes ago | parent
emilburzo 15 minutes ago | parent
But let's go with that scenario, now you have all sorts of problems, from practical to security, like:
- accidentally/maliciously building the wrong thing? there's a patch, people agreed to it, but the wrong commit is built
- building for multiple architectures/versions?
- signing keys on someone's laptop?
- worse, image push/write keys on someone's laptop?
And so on.
cobolcomesback 37 minutes ago | parent
But they had _two months_ to figure out how to overcome them. For them to not have figured out a solution and have pre-built images ready to push as soon as the embargo lifted is ridiculous.
inglor_cz 29 minutes ago | parent
PHP is written in C, I'd be surprised if similar problems didn't lurk in other places.
Maybe they will construct the private pipeline after this crisis. Millions of websites are probably now waiting for all the downstream Docker images to be built and pushed.
emilburzo 12 minutes ago | parent
It would be great, but it's also something to manage. Just keeping it working with all the changes that happen across all projects would be something.
fguerraz 1 hour ago | parent
Being given advance notice of an upcoming security fix is an immense privilege, organisations should turn around quickly when given such information, they shouldn’t be given more than a couple of days to update IMHO, it’s not like the rest of the world can wait.
Scaled 47 minutes ago | parent
(It is often much cheaper for an enterprise to just get a long term support contract than to properly upgrade to a modern PHP stack.)
kyriakos 1 hour ago | parent
ernubufiei 1 hour ago | parent
This is incredibly damming of Chainguard. I struggle to see justification for this, even with the chaos approaching the coordinated release.
blantonl 1 hour ago | parent
yreg 1 hour ago | parent
In their place I would worry that this was the last time anyone shared an embargoed build with them.
dannyw 1 hour ago | parent
Very irresponsible behaviour in my opinion; and if it's a decision made unilaterally by their CEO, probably a breach of their SOC 2 certification. What's next? "$X isn't patching this CVE fast enough, here's a binary blob of our fix, don't worry, we're making this free!"
cryptonym 57 minutes ago | parent
That can be for marketing purposes or by mistake. Not sure how to deal with that.
dannyw 53 minutes ago | parent
martinjc 46 minutes ago | parent
Dont trust us with information lol.
cobolcomesback 50 minutes ago | parent
kstrauser 37 minutes ago | parent
kijin 7 minutes ago | parent
They released some binaries, built for their own docker image based on their own Linux distro. Other people couldn't use Chainguard's "fix" to patch their own systems. The only people who seem to have benefited from the stunt are the hackers who used AI to reverse-engineer the binaries and write exploits.
That was a giant fuck-you to the rest of the PHP ecosystem, nothing more.
Grollicus 1 hour ago | parent
Because if there are already publicly available exploits seen, it makes no more sense to keep holding patches back just so that OpenAI etc. can get a nice press release
gjsman-1000 1 hour ago | parent
1. There was a leak of the pre-announcement
2. Calif sees leak, goes and releases dancing anime girl video before pulling it, goes viral
3. Chainguard sees dancing anime video, doesn't recognize Calif, and thinks the exploit is in the wild
[Edit 3a]: Or alternatively, Calif's leaked video causes the PoC to be found by others by providing enough of a lead
4. Chainguard releases updated binaries thinking it doesn't matter, causing the real exploit to then be found early
5. Which then causes PHP Foundation to basically have a meltdown
Personally I blame Calif for the unprofessional video which absolutely completely looks like some script kiddie and for being too detailed [edit 2: assuming Calif produced it and the anime wasn't a prank edit]. In this case it wasn't just unprofessional fun but may have literally messed up the responsible disclosure.
ebilgenius 1 hour ago | parent
Still not great though.
mirashii 1 hour ago | parent
I'm not sure about this part. I saw https://jackalsyn.com/posts/php-up-2026.html going around a bit over 12 hours ago, before the chainguard images went out, and plenty of other chatter of exploitation happening in the wild.
danso 45 minutes ago | parent
Hamuko 1 hour ago | parent
john_strinlai 1 hour ago | parent
so, if they saw evidence of exploits in the wild, it is not unusual at all to release the fix.
ebilgenius 1 hour ago | parent
b112 45 minutes ago | parent
There is a MASSIVE difference between a small number of people exploiting in the wild, and a few hours after a release a bazillion script kiddies doing so. The move to release and break an embargo was childish, absurd, self-serving, and lacking in all common sense. Not to mention, breaking trust.
I agree with those in this thread who say, never going to do business with them. Ever.
richwater 37 minutes ago | parent
I highly doubt their paying customers feel the same way
b112 31 minutes ago | parent
As a customer, I'd immediately assume no one in the security community would trust them again, and seek someone else to give my money to. Why pay a) an untrustworthy company who b) now is not trusted by anyone and c) won't ever be able to early release again anyhow? And if anything, are left out of important conversations.
Way to burn bridges. You only get to be an asshat once.
yardstick 30 minutes ago | parent
I would let Chainguard deal with the patches post official release like all other unreliable parties.
arm32 1 hour ago | parent
skrrtww 1 hour ago | parent
john_strinlai 1 hour ago | parent
Hamuko 1 hour ago | parent
bcvvvy 59 minutes ago | parent
Song is Petite Meller - High Forever (Marlon Hoffstadt Remix). Which is annoyingly catchy
john_strinlai 57 minutes ago | parent
thanks.
b112 52 minutes ago | parent
They're apparently not trustworthy, and behave as children.
john_strinlai 48 minutes ago | parent
Hamuko 48 minutes ago | parent
>As a result of the leak and pre-announcement around 20:00 UTC, Calif, one of the security firms that had reported the issues mistakenly published a video. It showed their proof of concept working against a number of targets and revealed a few additional, though limited, details about the vulnerabilities.
You can see the same demo video on their site: https://calif.io/php2shell/#php-5-4-0-rce
sippingabonedry 43 minutes ago | parent
This industry is full of immature children who cannot keep their mouths shut for 24 hours. They have no clue what massive coordination this requires.
yreg 12 minutes ago | parent
cpa 52 minutes ago | parent
cubefox 57 minutes ago | parent
They took it down but someone (Kirill Firsov: https://x.com/k_firsov/status/2112641845926989944) added the anime stuff and reposted it. Totally irresponsible.
Edit: okay he didn't add the anime, but he reposted it.
debugnik 38 minutes ago | parent
fatty_patty89 34 minutes ago | parent
quietsegfault 29 minutes ago | parent
tetha 9 minutes ago | parent
I want to go back to talks by bored defcon guys or gals calmly stating how they obtained private keys of a globally trusted CA with just a bit of math. Which, mind you, ate the other part of the teams time.
Now I know how much I hustled today likely due to that atrocity of a video. I think I will take a vacation day and sit in a forest near a river on friday.
corford 52 minutes ago | parent
yardstick 36 minutes ago | parent
Calif more than Chainguard, but still Chainguard too.
Calif was obviously twitching to claim credit for their findings, and what I find troubling is this eagerness was more important to them than giving users a chance to update their systems.
Even if they ended up waiting only a day post release I would still say it seems a bit too soon. Maybe a week after. Not everyone’s system have aggressive patching schedules and PHP is soo heavily used.
tflinton 1 hour ago | parent
Embargos make sense if no one is exploiting it yet, but if its out in the wild, the best path forward is releaseing as soon as possible.
dannyw 1 hour ago | parent
gjsman-1000 1 hour ago | parent
dannyw 1 hour ago | parent
Was there even an incident co-ordinator here? Was any of the parties talking to each other?
arm32 42 minutes ago | parent
danso 48 minutes ago | parent
skrrtww 35 minutes ago | parent
"Cloudflare successfully deployed multiple mitigations for all its customers while the vulnerability was leaked before the official release date and we observed attack traffic targeting our customers."
If that's not an in-the-wild exploit, it literally couldn't have been further away than one or two more iterations.
snowwrestler 27 minutes ago | parent
From Cloudflare’s perspective, there is no downside to saying what they observed, and deploying defenses.
We may never know if this was actually being successfully exploited prior to patch availability.
rskeens 38 minutes ago | parent
ChrisArchitect 1 hour ago | parent
PHP2Shell: AI uncovers critical RCE in PHP
https://news.ycombinator.com/item?id=50180836
Patch the Planet: global response coordination as agents uncover critical vulnerabilities
https://news.ycombinator.com/item?id=50181175
Upcoming critical PHP security release (CVE-2026-109618 / -109619)
charcircuit 1 hour ago | parent
>This disregarded weeks of work by many parties toward a coordinated disclosure.
Good. Coordinated disclosure meant that people couldn't protect themselves. That's not a good thing. It meant sites were forced to shut down instead of simply updating.
S0y 1 hour ago | parent
lrae 1 hour ago | parent
blantonl 1 hour ago | parent
They didn’t get to unilaterally decide that the embargo was inconvenient and publish early.
john_strinlai 1 hour ago | parent
tflinton 1 hour ago | parent
lol768 1 hour ago | parent
Okay, but how close did they get? Were they close enough that a determined actor could've (perhaps using an LLM) managed to get to a functioning exploit?
Grollicus 1 hour ago | parent
bombcar 1 hour ago | parent
This is the real story. You ship one of them (the breaking change) with —fuck-my-shit-up or something as a compile time option to switch to the other fix.
fg137 1 hour ago | parent
> Chainguard unilaterally broke the embargo and published built images ...
Won't be the last time this happens. If there is no consequence of breaking the rules, people will keep doing that.
cubefox 1 hour ago | parent
redox99 37 minutes ago | parent
It sounds cliche but yes, they should rewrite PHP in rust or other memory safe language.
cute_boi 35 minutes ago | parent
muspimerol 26 minutes ago | parent
vaylian 26 minutes ago | parent
sevenzero 20 minutes ago | parent
TheJoeMan 7 minutes ago | parent
adithyassekhar 29 minutes ago | parent
miohtama 10 minutes ago | parent
The guide to PHP security:
Use something else.
The end.