⚠ php2shell critical PHP RCE · patched in 8.2.35+ 8.3.36+ 8.4.27+ 8.5.12+ · 472 NotResolved → details ▾fewer details ▴
Critical memory-safety and unauthenticated remote code execution (RCE) vulnerabilities were found in the core PHP engine and patched on 21 October 2026.
- CVE-2026-109618 (RCE via OOM corruption): Out-of-memory handling interrupts PHP while internal request data is only partially initialized, causing request cleanup to treat invalid data as valid.
- CVE-2026-109619 (RCE via stale global state): Request-owned internal state survives after its backing memory is freed, allowing a later request handled by the same worker to use stale state before initialization resets it.
Affected: all PHP versions from 5.4 – 8.5.11. PHP 8.1 and older are end-of-life and will not receive official fixes.
Patched versions: PHP 8.5.12 · PHP 8.4.27 · PHP 8.3.36 · PHP 8.2.35 (or newer in the same branch).
Action required: update the PHP runtime package or container image to a patched version immediately. On WordPress or shared hosting, check with the hosting provider that the update was applied. If patching isn't possible yet, isolate the internet-facing application or put it behind a Web Application Firewall (WAF) rule set.
Official patches: php.net/downloads
Status in this list follows the detected PHP version: a patched release is Resolved; anything else, including a hidden version, is NotResolved. Recheck a site to update it.
7,867 sites · Resolved 124 · NotResolved 472 · No action needed 5 · Check failed 7867
| Site URL | PHP version | Type | Status | CMS | Contact | Last checked | |
|---|---|---|---|---|---|---|---|
| puffin.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:28 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND puffin.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND puffin.et) · DNS: ENOTFOUND (no record)
|
|||||||
| recyclivre.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:31 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND recyclivre.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND recyclivre.et) · DNS: ENOTFOUND (no record)
|
|||||||
| regret.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:40 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: TimeoutError (The operation timed out.) · http: ENOTFOUND (getaddrinfo ENOTFOUND regret.et) · DNS: ENOTFOUND (no record)
|
|||||||
| profitable.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:33 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND profitable.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND profitable.et) · DNS: ENOTFOUND (no record)
|
|||||||
| pinpall.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:23 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND pinpall.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND pinpall.et) · DNS: ENOTFOUND (no record)
|
|||||||
| proches.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:28 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND proches.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND proches.et) · DNS: ENOTFOUND (no record)
|
|||||||
| platinumdentalclinic.et | Timed out | et_tld | Check failed | — | — | 2026-10-23 00:18 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
No answer within 10 s on https or http: the site is down or silently blocks this server
· Site down, or blocking this server
· gave up after 5 attempts
https: TimeoutError (The operation timed out.) · http: TimeoutError (The operation timed out.) · DNS: 135.181.160.205 in 1 ms · network check: OK, www.google.com answered in 22 ms
|
|||||||
| presales.et | Timed out | et_tld | Check failed | — | — | 2026-10-23 00:28 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et · et_hosted:server IP geolocates to ET | |||||||
|
Couldn't check:
No answer within 10 s on https or http: the site is down or silently blocks this server
· Site down, or blocking this server
· gave up after 5 attempts
https: TimeoutError (The operation timed out.) · http: TimeoutError (The operation timed out.) · DNS: 197.156.69.164 in 2 ms · network check: OK, www.google.com answered in 2 ms
|
|||||||
| pseudoproph.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:28 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND pseudoproph.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND pseudoproph.et) · DNS: ENOTFOUND (no record)
|
|||||||
| prise.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:25 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND prise.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND prise.et) · DNS: ENOTFOUND (no record)
|
|||||||
| pursl.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:28 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND pursl.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND pursl.et) · DNS: ENOTFOUND (no record)
|
|||||||
| prioritaire.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:25 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND prioritaire.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND prioritaire.et) · DNS: ENOTFOUND (no record)
|
|||||||
| quitte.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:28 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND quitte.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND quitte.et) · DNS: ENOTFOUND (no record)
|
|||||||
| plaisir.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:25 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND plaisir.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND plaisir.et) · DNS: ENOTFOUND (no record)
|
|||||||
| projects.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:25 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND projects.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND projects.et) · DNS: ENOTFOUND (no record)
|
|||||||
| pollenbask.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:25 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND pollenbask.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND pollenbask.et) · DNS: ENOTFOUND (no record)
|
|||||||
| practices.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:23 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND practices.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND practices.et) · DNS: ENOTFOUND (no record)
|
|||||||
| pull.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:28 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND pull.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND pull.et) · DNS: ENOTFOUND (no record)
|
|||||||
| propres.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:31 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND propres.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND propres.et) · DNS: ENOTFOUND (no record)
|
|||||||
| radio.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 00:31 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The domain doesn't resolve (no DNS record): it has expired or was never set up
· Site's side: down or broken
· gave up after 5 attempts
https: ENOTFOUND (getaddrinfo ENOTFOUND radio.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND radio.et) · DNS: ENOTFOUND (no record)
|
|||||||