
Socket is the #1 software supply chain security platform. Next-gen SCA + SBOM + 0-day prevention. LOVED BY DEVELOPERS. 👀 @npm_malware
Joined November 2021
- Tweets3.5K
- Following4.6K
- Followers23.3K
- Likes2.5K
Chainguard received PHP’s fix for two critical RCEs under embargo, like every other distributor. On October 21 at 07:41 UTC, more than six hours before the coordinated release, it published built images containing that fix.
The PHP Foundation’s postmortem says Chainguard unilaterally broke the embargo. From that point, any attacker could study the fix in binary form while every other PHP user was still waiting.
CVE-2026-109618 and CVE-2026-109619 let attackers run code on web servers without logging in. PHP runs 69% of websites whose server-side language is known.
The embargo was already under strain. The CVE IDs leaked the day before, and Calif accidentally posted an exploit video that evening. PHP pulled the release forward a day but held it until 14:00 UTC, because distributors were still packaging and an immediate release would have left many users without a clean way to update. Chainguard went first anyway.
Chainguard CEO Dan Lorenc says several vendors in the disclosure had reported exploits in the wild, and that he notified the group right after making the call. He did not name the vendors or publish evidence. PHP’s security team found no working public exploit by release time. Lorenc has since apologized for the added stress on PHP’s maintainers.
Chainguard’s disclosure policy allows it to shorten timelines when exploitation is active. The patch it shipped was PHP’s, shared under PHP’s embargo.
In July, Lorenc wrote: “Pre-disclosure protection extends exactly as far as the people you can vet and hold to an embargo.”
Coordinated disclosure only works if everyone holding the fix ships at the same moment. When one party goes early, the fix becomes a map for attackers, and the users still waiting carry the risk.
PHP owned its part. Its postmortem calls the long delay in fixing the underlying bug, first spotted in a 2024 audit, “a structural failure.” It is asking the companies that run on PHP to fund more engine engineers.
If you haven’t patched: update the PHP runtime itself, not just WordPress or your framework, to 8.5.12, 8.4.27, 8.3.36, or 8.2.35. Then restart your workers.
The PHP Foundation says Chainguard unilaterally broke the embargo and published built images containing the critical RCE fixes more than six hours early:
“This disregarded weeks of work by many parties toward a coordinated disclosure.”
socket.dev/blog/php-embargo-…
Socket retweeted
When agents become the interface, what replaces the security controls the UI provided?
Tomorrow at AGNTCon + MCPCon, I’ll debate that with Dexter Horthy, Ian Livingstone and Scott Sanders. Allie Howe moderates.
Oct. 22, 2:55 p.m. PT. Come join us.
Socket retweeted
Just used LiteLLM to create my first PHP website. The AI even suggested getting a certificate from eMudhra for HTTPS to protect my login page. The future looks really bright 🥳
Socket retweeted
Socket flagged all seven malicious wheels within seven minutes of publication.
The malware runs at Python startup, even without importing LiteLLM. The release workflow built container images from a lookalike repository.
Full analysis: socket.dev/blog/litellm-comp…
Socket retweeted
Don't look now, but this is problematic.
credential-stealers suck.
Socket retweeted
Given that the vlt CLI is a proper package manager, you get all the benefits like a lockfile and automatic filter of undesirable packages using data from our partner @SocketSecurity
Read more about this release in our blog post:
vlt.io/blog/vlt-skills
Socket retweeted
Deno spent years persuading developers to bet on a better runtime. Now its creator sees “marginal” gains in a project “sucked into the gravity well of node compatibility.”
The backlash, the forks, and how AI is changing the future of JavaScript runtimes.
socket.dev/blog/deno-acquisi…
Replying to @SocketSecurity
@SocketSecurity is hiring! Amazing company!
Socket retweeted
Unusual News: @CapitalOne has chosen our portfolio company @SocketSecurity to help secure its open source supply chain, detecting risky dependencies before they enter its environment.
Congratulations to the Socket team! Read more: socket.dev/blog/capital-one-…
Socket retweeted
More than 500 GitHub accounts...
Tens of thousands of repos...
GhostAction is back 🔪
Socket retweeted
Origin, Cursor’s code hosting platform, now supports over 20 integrations.
Connect your repos to tools for CI, deployments, code review, security, monitoring, and project management.
Socket retweeted
You see the fifth thing your agent tried. The four before it may have pulled malicious packages, and you'd never know.
That's why every input to a software factory needs to be verified.
Today we published the Software Factory Reference Architecture, read the paper here: agentbaseline.org/reference-…
Socket retweeted
Join us tonight in New York right after @aiDotEngineer to discuss it at Secure Software Factory Show and Tell with @ianlivingstone, @AhmadNassri, @ealeyner, @DickHardt, @braintrust, @SocketSecurity, @Docker, @KeycardAI
Join us at Elsie Rooftop 🗽🥂: luma.com/keycard-rg1c
Socket retweeted
Blocking Bad Packages at the Network Level: Ahmad Nassri (Socket) on Controlling What an Agent Sees
"We're also masking the visibility of those numbers and those versions' existence from the agent itself. So as far as the agent or the package manager is concerned, those versions don't exist."
@AhmadNassri, CTO of @SocketSecurity and previously CTO of npm, talked to us live at Black Hat about why denying a coding agent a bad package does not completely remove the risk, and why the answer is to make it seem like the package doesn't exist at all.
We get into:
> What a goal-seeking agent will do if it's blocked: go to the CDN for the tarball of a blocked package or try to resolve npm by DNS
> How masking bad versions at the network level stops an agent from thrashing and going after another route
> The Shai-Hulud variants that ship no malicious code at all, just a prompt telling your agent it is an authorized pentester
> Why the output you approved was the fifth thing the agent tried, and the four it discarded are where a compromise could live
TIMESTAMPS
(01:20) The OpenAI agent that escaped its sandbox and took 17,000 actions
(02:40) Turning a package registry into a reverse proxy to the open internet
(03:50) When zero days stopped being a Fortune 500 problem, and why the low vulns matter now
(05:10) Goal seeking agents
(06:50) The low severity CVE you ignored for five years is now exploitable
(10:00) Socket Firewall stopping malicious packages at the network level
(10:40) Detection in minutes from publication, and stopping the keyv worm mid-spread
(11:40) Blocked agents going straight to the CDN, or rewriting the registry config
(18:00) When the payload is a prompt
(19:40) Secrets, permissions, and controlling action actions
(22:00) The chain of custody problem with Agent Skills
(28:00) Short-lived task scoped credentials
(31:50) Attackers rewriting malware in real time when they notice they are blocked
Socket retweeted
I'll be on the panel in NYC on Oct 13 after @aiDotEngineer with @SocketSecurity, @Docker, @KeycardAI, Braintrust, and @DickHardt. Live demos after.
luma.com/keycard-rg1c
Socket retweeted
📖 CloudSecList Issue 359 is live, with content from @SocketSecurity @Cloudflare @UberEng and more!
cloudseclist.com/issues/issu…
Socket retweeted
Blocking a bad package isn't enough. Agents route around it: the CDN, a rewritten registry config, a raw DNS lookup.
So we hide bad versions. If an agent doesn't know a version exists, it won't go after it.
More in the Software Factory Reference Architecture, out Tuesday.
"As far as the agent or the package manager is concerned, those versions don't exist." - @AhmadNassri CTO @SocketSecurity
What an agent can't see, it can't reach for. That's in the Software Factory Reference Architecture, out Tuesday from Ahmad, @ealeyner, and more.






















