Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
php-eol-cve-2026-109618-109619 — EOLプラットフォーム向けのPHP CVE-2026-109618 / CVE-2026-109619(RCE、CVSS 9.2)の非公式パッチ:CentOS/RHEL 7上のPHP 7.3(Remi)、Amazon Linux 2上のPHP 5.4、Amazon Linux 1上のPHP 5.3 | Kitploit
ツール/GitHubGitHub/leonlai-tw/php-eol-cve-2026-109618-109619
防御ツール脆弱性分析エクスプロイト構成監査ウェブセキュリティDevSecOpsサプライチェーンセキュリティ
GitHubleonlai-tw/php-eol-cve-2026-109618-109619

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

php-eol-cve-2026-109618-109619

EOLプラットフォーム向けのPHP CVE-2026-109618 / CVE-2026-109619(RCE、CVSS 9.2)の非公式パッチ:CentOS/RHEL 7上のPHP 7.3(Remi)、Amazon Linux 2上のPHP 5.4、Amazon Linux 1上のPHP 5.3

リポジトリを見る
18時間45分前未レビュー

CVE-2026-109618 / CVE-2026-109619 のサポート終了済み PHP 向けパッチ (EL7 上の 7.3、Amazon Linux 上の 5.4 / 5.3)

2026-10-21 に公表された 2 件の重大な未認証リモートコード実行脆弱性に対する、PHP セキュリティチームの最小限の緩和策の非公式バックポートです:

CVEアドバイザリ概要
CVE-2026-109618GHSA-w8hw-w9fx-j79wメモリ不足による破損を介した RCE (CVSS 4.0: 9.2)
CVE-2026-109619GHSA-6wmf-4rv5-p3rp古いグローバル状態を介した RCE (CVSS 4.0: 9.2)

アップストリームでは PHP 8.2.35、8.3.36、8.4.27、8.5.12 が修正され、7.4、8.0、8.1 向けにはソースのみの最小限の緩和策が公開されました。以下のプラットフォーム向けの修正は誰も公開していないため、このリポジトリはそれら向けのパッチと再現可能なビルドスクリプトを提供します。

PHP Group、Remi Collet、Amazon とは無関係です。 いかなる保証もありません。デプロイ前に 制限事項をお読みください。

これを信頼する理由

  • 独立したクロスチェック。 Sury の Debian/Ubuntu 向け php7.3 7.3.33-35 には、同じアップストリームコミットを 7.3 に移植した別個のポートが含まれています。ここにある EL7 向けパッチは同じ 17 ファイルを変更しており、コアの変更は行単位で同一です (詳細は docs/TESTING.md)。
  • ソースのみ、バイナリなし。 ベンダー署名済みのソース RPM からご自身でパッケージをビルドします。ビルドスクリプトはパッチ適用前にそれらの署名を検証します。
  • クリーンなチェックアウトから再現済み。 3 つのビルドすべてをこのリポジトリのスクリプトのみを使ってゼロから再実行し、tests/verify.sh はそれぞれについて PATCHED を報告しました。
  • 小さくレビュー可能なパッチで、SHA-256 チェックサムは SHA256SUMS および各 リリースに記載されています。

どのファイルが必要ですか?

お使いのシステムPHP パッケージの入手元使用するもの
CentOS 7 / RHEL 7Remi php73 (例: php-7.3.33-14.el7.remi)patches/php-7.3.33-remi22-el7-… + build/el7-php73/build.sh
Amazon Linux 2Amazon php-5.4.16-46.amzn2.*patches/php-5.4.16-amzn2-… + build/amazon-linux/build.sh amzn2
Amazon Linux 1 (AMI 2017.03 / 2018.03)Amazon php-5.3.29-1.8.amzn1patches/php-5.3.29-amzn1-… + build/amazon-linux/build.sh amzn1
Sury PPA を使う Ubuntu / Debian、PHP 7.3 / 7.4 / 8.0 / 8.1deb.sury.orgここからは何も使いません。 Sury の 7.3.33-35、7.4.33-31、8.0.30-25、8.1.34-9 (以降) にアップグレードしてください。チェンジログに CVE の記載はありませんが、これらにはすでに修正 (debian/patches/*-Avoid-state-corruption-via-bailout.patch) が含まれています。
Ubuntu 24.04 ディストリビューションの php8.3Ubuntu アーカイブ8.3.6-0ubuntu0.24.04.13 以降にアップグレードしてください。
任意の入手元の PHP 8.2 以降—8.2.35 / 8.3.36 / 8.4.27 / 8.5.12 以降にアップグレードしてください。

クイックスタート

ビルドマシンに Docker が必要です (OS は問いません)。ビルドは対象ディストリビューションのコンテナ内で完全に実行されるため、生成された RPM は通常の yum localinstall でインストールできます。

git clone https://github.com/leonlai-tw/php-eol-cve-2026-109618-109619.git
cd php-eol-cve-2026-109618-109619

# CentOS 7 / RHEL 7 + Remi PHP 7.3   -> ./work-el7/out/
build/el7-php73/build.sh

# Amazon Linux 2 + PHP 5.4           -> ./work-amzn2/out/
build/amazon-linux/build.sh amzn2

# Amazon Linux 1 + PHP 5.3           -> ./work-amzn1/out/
build/amazon-linux/build.sh amzn1

生成されたパッケージは <vendor version>.cvefix1 という形式でバージョン付けされます(例: php-7.3.33-22.cvefix1.el7、php-5.4.16-46.amzn2.0.7.cvefix1)。そのため、置き換えるベンダーパッケージよりも常に新しいものとしてソートされます。

すでにインストール済みのパッケージのみをインストールし、その後 PHP を再起動します:

# on the target host, inside the directory holding the built RPMs
yum localinstall $(for p in $(rpm -qa 'php*' --qf '%{NAME}\n'); do ls ${p}-[0-9]*.cvefix1*.rpm 2>/dev/null; done)
systemctl restart php-fpm      # or: apachectl graceful   (mod_php)

長時間実行される PHP プロセス(Swoole/Octane、キューワーカー、cron デーモン)も再起動する必要があります。 そうしないと、古いバイナリが実行され続けます。

検証

rpm -q php-cli                  # must end in .cvefix1
tests/verify.sh                 # prints PATCHED / NOT PATCHED

tests/verify.sh は 16 MB のメモリ制限で 1 つの CLI プロセスを実行し、最小限の緩和策の観測可能な動作を検証します。メモリ不足時にプロセスはシャットダウン関数を実行せずに終了コード 1 で終了します(未パッチの PHP は 255 で終了し、シャットダウン関数を実行します)。

実行中の PHP-FPM が新しいバイナリを使用していることを確認するには:

p=$(pgrep -o -f 'php-fpm: master'); sha256sum /proc/$p/exe /usr/sbin/php-fpm   # hashes must match

パッチによる変更点

上流コミット 712e60f9ed(「bailout による状態破壊を回避」、ブランチ PHP-7.4-CVE-2026-109618-109619)と同じ設計です。

  1. メモリ不足時にリクエストシャットダウンへロングジャンプしなくなりました(CVE-2026-109618)。アロケータは 致命的エラーを stderr に出力し、_exit(1) でプロセスを終了します。PHP-FPM / Apache は 新しいワーカーを起動します。「Possible integer overflow in memory allocation」エラーにも同じことが当てはまります。
  2. マルチパート解析は Content-Disposition と Content-Type のパートヘッダのみを保持し、 重複を無視するため、小さなリクエストで PHP に大量のメモリを割り当てさせることはできなくなりました。
  3. session.upload_progress は無効化されています(CVE-2026-109619 の確認済みの発生源)。
  4. リクエストが所有するグローバル状態はシャットダウン時にリセットされます(スーパーグローバル、SAPI の認証/コンテンツタイプ フィールド、modules_activated、エグゼキュータの例外/エラーハンドリング状態、連結リストの先頭)。これにより、 後続のリクエストが解放済みの状態を参照することはできません。

ファイルごとの詳細と各ポートの作成方法: docs/PROVENANCE.md。 テスト結果: docs/TESTING.md。

制限事項

  • これは最小限の緩和策であり、PHP 8.2+ で提供される完全な修正ではありません。公開された 攻撃経路を遮断しますが、すべての拡張機能について残留状態を監査するものではありません。サポート対象の PHP バージョンへアップグレードすることが引き続き本質的な修正です。
  • 動作の変更(すべて上流の緩和策に由来):
    • memory_limit を使い果たしたリクエストはワーカープロセスを終了させます。mod_php では クライアントは HTTP 500 ページではなく接続切断を受け取ります。
    • register_shutdown_function() のコールバックはメモリ不足エラー後に実行されません。
    • session.upload_progress は進捗を報告しなくなります。
  • EL7 ビルドは Remi の 7.3.33-22 ソースに基づいています。現在 Remi の最後の EL7 バイナリ(7.3.33-14)を実行している場合、-15 から -22 までの Remi のセキュリティバックポートも 受け取ります(CVE-2024-4577、CVE-2024-8925/8926/8927、CVE-2024-8929、CVE-2024-11233/11234/11236、 CVE-2025-14178、CVE-2026-6735、CVE-2026-14355、CVE-2026-7260、CVE-2026-17543 など)。
  • Amazon Linux 1 ビルドは amazonlinux:2018.03 イメージで作成され、 openssl ≥ 1.0.2k(libcrypto.so.10(OPENSSL_1.0.2))を必要とします。openssl 1.0.1k のままの ホストは、まず amzn-updates から openssl をアップグレードする必要があります。
  • PHP 5.x には他にセキュリティサポートが一切ありません。これらのホストは移行が必要なものとして扱ってください。

ステータス

作者により 2026-10-22 に本番環境でビルドおよびデプロイ済みです(CentOS 7 / PHP-FPM Web サーバ、 Amazon Linux 2 および 1 / mod_php)。Issue とプルリクエストは歓迎しますが、サポートの 約束はありません。

ライセンス

パッチは PHP のソースコードを変更するものであり、 PHP License v3.01 の下で配布されます。ビルドスクリプトとドキュメントは MIT ライセンスです。LICENSE を参照してください。「PHP」は The PHP Group の商標であり、本プロジェクトは その承認を受けていません。

本ソフトウェアは「現状のまま」提供され、いかなる種類の保証も伴いません。非本番 環境でテストし、ロールバック手段(yum downgrade またはディスクスナップショット)を確保してください。

ツールをダウンロード