Skip to content
Externa

PHP emergency security releases — Oct 2026

PHP CVEs 2026-109618 and 2026-109619 (CVSS 9.2 RCE). Update to 8.4.27 or 8.5.12; what Externa users must do.

Luca Giardi22 October 20265 min read

On 21 October 2026 the PHP project released emergency security updates for two critical remote code execution vulnerabilities (both CVSS v4.0 9.2):

These are bugs in PHP itself, not in Externa, but every Externa install runs on PHP, so please update.

This notice mirrors the GitHub announcement. Requirements live at docs.externa.qiick.io.

Affected and fixed versions

PHP branchAffectedFixed in
8.2< 8.2.358.2.35
8.3< 8.3.368.3.36
8.4< 8.4.278.4.27
8.5< 8.5.128.5.12

Externa requires PHP 8.4+ (^8.4), so you need PHP 8.4.27 or 8.5.12 or later.

What to do

  • Herd / bare metal: update PHP to 8.4.27 (or 8.5.12), then restart PHP-FPM, Horizon, Reverb and the scheduler. Check with php -v.
  • Official Docker image (ghcr.io/qiick-io/externa-core): The 1.2.1 image (and latest) has been rebuilt on PHP 8.4.27. Pull ghcr.io/qiick-io/externa-core:1.2.1 again and recreate the containers (docker compose pull && docker compose up -d), then check with docker compose exec <php-service> php -v.
  • Building from source with the Dockerfile: rebuild with --pull --no-cache so you pick up the updated php:8.4-fpm-bookworm base (PHP 8.4.27).

If you can't update right away

Updating PHP is the only complete fix. The PHP advisories list these partial mitigations:

  • Set memory_limit=-1 in the server-level PHP config (php.ini / FPM pool, not per-directory), restart every worker, and rely on a container or cgroup memory limit instead. Do not use RLIMIT_AS/RLIMIT_DATA.
  • Keep post_max_size conservative, enforce request size at your reverse proxy, and limit multipart parts, headers per part, uploads and max_input_nesting_level. If you don't need multipart uploads on a route, block them at the proxy.
  • Set session.upload_progress.enabled=0 and restart every worker.
  • On PHP 8.5, set fatal_error_backtraces=0 and restart every worker.
  • Optionally, pm.max_requests=1 in PHP-FPM if performance allows.

Note: Externa's file uploads use multipart requests, so blocking multipart entirely will break uploads in the admin.

Coming in Externa 1.2.2

Externa 1.2.2 will ship additional php.ini hardening for the official image (#216).

Sources

Try Externa on your own server

Open source under MIT, self-hosted, built on Laravel.

Externa5 min read

Starter security patches — Oct 2026

Next starter 1.0.1–1.0.2 and Nuxt starter 1.0.1: patched Next, React, and Nuxt tooling deps. Who should update and how.

Externa8 min read

Externa Core 1.4.0 — MCP, AI approvals, and accessibility

A rebuilt admin with transparent AI answers, an optional MCP server, human approval for AI write tools, theme presets, GCS and Azure file storage, WCAG 2.2 AA accessibility work, and new Public API batch writes and filters.