⚠ 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.
8,468 sites · Resolved 124 · NotResolved 472 · No action needed 5 · Check failed 7867
| Site URL | PHP version | Type | Status | CMS | Contact | Last checked | |
|---|---|---|---|---|---|---|---|
| demeurer.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 12:53 | |
| 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 demeurer.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND demeurer.et) · DNS: ENOTFOUND (no record)
|
|||||||
| hogg.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:06 | |
| 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 hogg.et) · DNS: ENOTFOUND (no record)
|
|||||||
| hyper.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:01 | |
| 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 hyper.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND hyper.et) · DNS: ENOTFOUND (no record)
|
|||||||
| hp.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:01 | |
| 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 hp.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND hp.et) · DNS: ENOTFOUND (no record)
|
|||||||
| horseblank.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:03 | |
| 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 horseblank.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND horseblank.et) · DNS: ENOTFOUND (no record)
|
|||||||
| emp.et | PHP 8.3.36 | et_tld high | Resolved | — | emperoman77@gmail.com | 2026-10-24 10:10 | |
| evidence: X-Powered-By: PHP/8.3.36 (https://emp.et/) · Set-Cookie: PHPSESSID · HTML: same-site link/form to index.php | region: et_tld:domain ends in .et | |||||||
| food.et | DNS failed | et_tld | Check failed | — | — | 2026-10-23 12:59 | |
| evidence: none, the site couldn't be read | region: et_tld:domain ends in .et | |||||||
|
Couldn't check:
The DNS lookup failed (TIMEOUT): the domain's DNS servers or this server's resolver
· Site down, or blocking this server
· gave up after 5 attempts
https: TimeoutError (The operation timed out.) · http: EAI_AGAIN (getaddrinfo EAI_AGAIN food.et) · DNS: TIMEOUT after 5001 ms · network check: OK, www.google.com answered in 2 ms
|
|||||||
| hobb.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:01 | |
| 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 hobb.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND hobb.et) · DNS: ENOTFOUND (no record)
|
|||||||
| eitm.edu.et | PHP 8.3.36 | et_tld high | Resolved | — | — | 2026-10-23 08:24 | |
| evidence: X-Powered-By: PHP/8.3.36 (https://eitm.edu.et/) · Set-Cookie: PHPSESSID | region: et_tld:domain ends in .et | |||||||
| fascinants.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 12:58 | |
| 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 fascinants.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND fascinants.et) · DNS: ENOTFOUND (no record)
|
|||||||
| fast.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 12:58 | |
| 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 fast.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND fast.et) · DNS: ENOTFOUND (no record)
|
|||||||
| given.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 12:58 | |
| 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 given.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND given.et) · DNS: ENOTFOUND (no record)
|
|||||||
| doom.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 12:53 | |
| 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 doom.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND doom.et) · DNS: ENOTFOUND (no record)
|
|||||||
| helm.et | PHP 8.1.34 | et_tld high | NotResolved | — | — | 2026-10-23 08:24 | |
| evidence: X-Powered-By: PHP/8.1.34 (https://helm.et/) | region: et_tld:domain ends in .et | |||||||
| haut-jura.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:01 | |
| 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 haut-jura.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND haut-jura.et) · DNS: ENOTFOUND (no record)
|
|||||||
| hospital.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:06 | |
| 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 hospital.et) · DNS: ENOTFOUND (no record)
|
|||||||
| hosanna.gov.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:11 | |
| 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 hosanna.gov.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND hosanna.gov.et) · DNS: ENOTFOUND (no record)
|
|||||||
| coupel.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 12:51 | |
| 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 coupel.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND coupel.et) · DNS: ENOTFOUND (no record)
|
|||||||
| heartamul.et | No DNS | et_tld | Check failed | — | — | 2026-10-23 13:01 | |
| 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 heartamul.et) · http: ENOTFOUND (getaddrinfo ENOTFOUND heartamul.et) · DNS: ENOTFOUND (no record)
|
|||||||
| hemophilia.et | PHP 8.1.34 | et_tld high | NotResolved | WordPress | — | 2026-10-23 08:24 | |
| evidence: X-Powered-By: PHP/8.1.34 (https://hemophilia.et/) · Link: WordPress REST API · HTML: WordPress markers | region: et_tld:domain ends in .et | |||||||