概要
PHPUnitはPHP用のテストフレームワークです。バージョン12.5.21および13.1.5では、PHPUnitはPHPのINI設定を子プロセス(孤立したPHPTテスト実行に使用)に-d name=valueのコマンドライン引数として渡しますが、INIのメタ文字を無効化していません。PHPのINIパーサは”を文字列デリミタとして、;をコメントの開始として、そして特に改行をディレクティブの区切りとして解釈するため、改行を含む値は子プロセスで複数のINIディレクティブとして解析されます。攻撃者が単一のINI値を操作できる場合、子プロセスの設定に対してauto_prepend_file、extension、disable_functions、open_basedirなどの任意の追加ディレクティブを注入できます。攻撃者が制御するパスにauto_prepend_fileを設定すると、子プロセスでリモートコード実行が可能になります。この問題はバージョン12.5.22および13.1.6で修正されました。
技術情報
- 公開日: 2026-05-11T11:09:43+09:00
- 更新日: 2026-05-11T11:09:43+09:00
参考リンク
対処方法
該当ソフトウェアの最新版への更新、または開発元が提供する緩和策の適用を推奨します。運用環境に応じて事前検証の上で実施してください。
免責
本記事は公開情報をもとに自動集約された速報です。正確性・完全性は保証できません。必ず一次情報(上記リンク等)をご確認ください。

