AI is forcing us to pay off 40 years of technical debt
TL;DR Highlight
AI turned an old PHP crash bug into a code-execution exploit within two weeks.
Who Should Read
Backend developers running legacy PHP or open-source dependencies who worry about patch burden in the AI era
Core Mechanics
- PHP2Shell started as an old, ignored bug
- It was an out-of-memory error reported to the PHP Foundation back in 2024.
- It normally just crashed the program, so it stayed low priority.
- AI-assisted research reached code execution in two weeks
- During an OpenAI-sponsored PHP audit, a Calif researcher used AI tools to run arbitrary code via the bug.
- A minor crash became a critical vulnerability.
- AI handled the tedious reasoning
- Prof. Suman Jana said the exploit needs careful, painful reasoning about memory jumps and which bits to overwrite, not rocket science.
- He said AI did that well.
- AI didn't do it alone
- The Calif, OpenAI and Wiz researchers had deep security and PHP knowledge.
- Jana said AI boosts the top 0.1% of experts and lets those just below reach that level.
- Finding bugs is easier than fixing them
- A patch must close every attack path without breaking existing features.
- Four PHP engineers spent two months on the patch.
- Defenders may get tokens and formal verification
- Frontier labs donating token budgets to open-source bug hunting was mentioned.
- An approach where an LLM writes the patch and proof, and a non-LLM checker verifies it, was described.
Community Reactions
- Opinion that humans sat on vulnerabilities long before AI
- A commenter said HTTP2Shell/Brotli2Shell was arguably worse.
- A timeline showed 8 years in code, 8 months with the fix unreleased, and 4+ independent reporters.
- Experience paying down 5-7 years of debt with AI
- A developer said AI cut research and testing time.
- They verify with test cases and check the fix matches expectations.
- Counterpoint that AI creates new debt faster
- Several commenters said no one will understand the code being written.
- One said even with the latest model on high, AI fixes are narrow and brittle and need careful reading.
- Opinion that it may be an endless treadmill
- A commenter said some debt needs restructuring, and each change risks new bugs.
- They argued hostile AI may force constant code churn to stay a moving target.
How to Apply
- Check your PHP and CMS versions and security updates today
- Verify patch status for WordPress, Drupal and the PHP runtime now.
- Apply updates immediately instead of postponing.
- Re-triage old crash bugs as security issues
- Filter your tracker for out-of-memory and crash reports.
- Ask for each whether memory corruption is possible and reprioritize.
- Verify AI patches with tests and manual review
- Run regression tests on every AI-generated patch.
- Read the code even if tests pass to check the fix isn't too narrow.
Try It
# Paste into Claude or ChatGPT (simplified version of the article's idea: re-review crash bugs from a security angle)
Below are crash/memory-error bug reports from our project and the related code.
{{bug reports and code}}
For each bug, answer:
1. Does it end as a plain crash, or could it lead to memory overwrite or code execution?
2. If so, what conditions are needed?
3. What regression tests are needed so a patch doesn't break existing behavior?
Don't guess about uncertain parts; mark them 'needs confirmation'.
Next: pick one high-risk item, ask for a patch, and verify it by running your tests.Terminology
Related Papers
Postman silently auto-installs AI plugins and attempts to share all API data
Opening Postman auto-installed plugins and a startup hook into Codex and Claude Code
Octomind – open-source AI harness that saves your tokens, static rust
A single Rust binary runs any model as a coding agent, with TOML guardrails replacing approval prompts.
MCP Tool Poisoning in Agentic AI Frameworks: A Cross-Framework Measurement Study
Across 12 frameworks and 18 models, defense against MCP tool poisoning comes only from the model, not the framework.
I Am the Reason OpenAI Is Killing Unlimited Chats
Connecting local MCP tools to regular ChatGPT chats gave a parallel coding-agent pool without Codex limits
Toward Bounding Coding-Agent Autonomy in Software Maintenance: A Pilot Study of Boundary Contracts
Telling a coding agent each file's role upfront nearly doubled strictly acceptable patches, from 9 to 18 of 40.
GPT-5.6 Sol can beat Factorio on peaceful mode
GPT-5.6 Sol in Codex at low thinking finished a peaceful Factorio run with a rocket launch
Do the math: How we took over ChatGPT accounts
One public share link ran attacker JS in a victim's ChatGPT session and could leak private chats
AI isn't replacing SREs, it's deskilling them
Letting AI handle 95% of incidents may dull the skills SREs need for the critical 5%.