PHP 7.2.26リリース対応 PHPセキュリティ保守サービス パッチ配布開始
PHPプロジェクトによるPHP 7.1のメンテナンス期間は2019年12月のリリースで終了しました。今後、PHP 7.1以下の利用を継続されるには既知のセキュリティ問題を修正したPHPを利用する必要があります。ESIのPHPセキュリティ保守サービスではPHP 4.4以降のPHPに既知のセキュリティ問題を修正したバージョンをご利用頂けます。
以下はPHP 7.2.26に対応したPHPセキュリティ保守サービスのリリースノートです。
19 Dec 2019, PHP 7.2.26
=================================================================================
- Bcmath:
. Fixed bug #78878 (Buffer underflow in bc_shift_addsub). (CVE-2019-11046).
(cmb)
PHP 4.4以降
BCMathのビットシフト操作でスケールに非整数の引数を渡した場合にバッファアンダーフローが発生する。
■ 互換性
問題無し
■ 影響
通常、スケール引数に非整数を渡すことは考えられないが、渡した場合バッファーアンダーフローにより
メモリ破壊が発生し、それに伴う攻撃が可能になる可能性がある。
=================================================================================
- Core:
. Fixed bug #78862 (link() silently truncates after a null byte on Windows).
(CVE-2019-11044). (cmb)
PHP 5.3以降
Windows版PHPでヌル文字を含むファイル名がヌル文字位置で短縮される。
PHP 5.3以前のPHPではlink()はサポートされていない。
■ 互換性
問題無し
■ 影響
不正なファイルアクセスを許可する。
=================================================================================
. Fixed bug #78863 (DirectoryIterator class silently truncates after a null
byte). (CVE-2019-11045). (cmb)
PHP 5.3以降で対応(SPLを持つPHP 5.2以降に影響)
ヌル文字が含まれる場合に文字列がヌル文字位置で丸められる。PHP 5.3以降のPHPはパス中にヌル文字
が含まれる場合にエラーとなるよう修正されている。PHP 5.2のオブジェクト仕様は汎用的なヌル文字
チェックが不適当である為、影響はあるば未対応です。一般に不正ヌル文字はセキュリティ問題の原因
となるため入力データバリデーションで対応する必要があります。PHP 5.2をご利用の場合はPHPの
フェイルセーフ機能に頼らずバリデーションで対応する必要があります。
備考: ヌル文字対策はPHPにバンドルされているモジュールのみで3rdパーティーモジュールの対応
は保証されていません。この為、入力文字列の妥当性確認は必要です。
■ 互換性
問題無し
■ 影響
不正なファイルアクセスを許可する。
=================================================================================
- EXIF:
. Fixed bug #78793 (Use-after-free in exif parsing under memory sanitizer).
(CVE-2019-11050). (Nikita)
. Fixed bug #78910 (Heap-buffer-overflow READ in exif). (CVE-2019-11047).
(Nikita)
PHP 5.2以降
Exif情報データ処理に問題があり、開放後メモリアクセスとヒープオーバーフローが発生する。PHP 4.4
にも該当するコードがあるが、報告されている方法ではメモリ問題は発生しない。
■ 互換性
問題無し
■ 影響
不正なExif情報で任意コードを実行される可能性がある。
=================================================================================
- GD:
. Fixed bug #78849 (GD build broken with -D SIGNED_COMPARE_SLOW). (cmb)
PHP 5.2以降
コンパイル問題のバグ修正。セキュリティ上の問題は発生しない。
■ 互換性
問題無し
■ 影響
通常はセキュリティ上の問題にはならない。
=================================================================================
- Intl:
. Fixed bug #78804 (Segmentation fault in Locale::filterMatches). (Stas)
PHP 5.3以降
不正なオプション指定でLocale::filterMatchesがクラッシュする。
通常、ロケールオプション指定がユーザーパラメーターになることはない為、通常のバグ修正として
対応されているが本サービスでは対応。
■ 互換性
問題無し
■ 影響
通常はセキュリティ上の問題にはならない。
=================================================================================
- OPcache:
. Fixed $x = (bool)$x; with opcache (should emit undeclared variable notice).
(Tyson Andre)
対応なし
通常のバグ修正
- Standard:
. Fixed bug #78759 (array_search in $GLOBALS). (Nikita)
対応なし
通常のバグ修正
=================================================================================
. Fixed bug #78833 (Integer overflow in pack causes out-of-bound access).
(cmb)
PHP 4.4以降
不正なフォーマット文字オプション指定でpackのフォーマット文字処理で整数オーバーフローが発生する。
通常のバグ修正として対応されているが本サービスでは対応。
■ 互換性
問題無し
■ 影響
通常はセキュリティ問題とならない。
=================================================================================
. Fixed bug #78814 (strip_tags allows / in tag name => whitelist bypass).
(cmb)
PHP 5.3以降
タグ名に不正な/を許してしまうバグ。通常のバグ修正として対応されているが本サービスでは対応。
そもそもstrip_tags()はセキュリティ処理として利用できない為、セキュリティ問題として扱われない。
■ 互換性
問題無し
■ 影響
場合によってはJavaScript/HTMLインジェクションを許してしまう。