PHPの複数の脆弱性情報(CVE-2019-11044, CVE-2019-11045, CVE-2019-11046, CVE-2019-11047, CVE-2019-11049, CVE-2019-11050)

こんにちは。SIOS OSSエバンジェリスト/セキュリティ担当の面 和毅です。

12/18/2019にPHPの複数の脆弱性情報(CVE-2019-11044, CVE-2019-11045, CVE-2019-11046, CVE-2019-11047, CVE-2019-11049, CVE-2019-11050)が公開されています。PoCコードも公開されています。今回はこちらの脆弱性の概要と、各ディストリビューションの対応について簡単にまとめてみます。



一次情報源

CVE番号影響するバージョンリファレンスPriorityCVSS
CVE-2019-11044 7.2.26より前の7.2.x系, 7.3.13より前の7.3.x系, 7.4.0 (Windows)

link() silently truncates after a null byte on Windows

NVD: 3.7 Low

NVD: Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N

CVE-2019-11045 7.2.26より前の7.2.x系, 7.3.13より前の7.3.x系, 7.4.0

DirectoryIterator class silently truncates after a null byte

NVD: 3.7 Low

NVD: Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N

CVE-2019-11046 7.2.26より前の7.2.x系, 7.3.13より前の7.3.x系, 7.4.0

Buffer underflow in bc_shift_addsub

NVD: 3.7 Low

NVD: Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N

CVE-2019-11047 7.2.26より前の7.2.x系, 7.3.13より前の7.3.x系, 7.4.0

Heap-buffer-overflow READ in exif

NVD: 4.8 MEDIUM

NVD: Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:L

CVE-2019-11049 7.3.13より前の7.3.x系, 7.4.0 (Windows)

mail() may release string with refcount==1 twice

NVD: 6.5 MEDIUM

NVD: Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H

CVE-2019-11050 7.2.26より前の7.2.x系, 7.3.13より前の7.3.x系, 7.4.0

Use-after-free in exif parsing under memory sanitizer

NVD: 4.8 MEDIUM

NVD: Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:L

修正方法

各ディストリビューションの情報を確認してください。

CVE概要(詳細はCVEのサイトをご確認ください)

  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11044
    • \0バイトを含むファイル名の不適切な取扱
    • 該当のバージョンでは、PHP link()関数が\0バイトを含むファイル名を許可し、そのバイトでターミネートされているとして扱います。これによりセキュリティの脆弱性が生じる可能性が有ります。
  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11045
    • \0バイトを含むファイル名の不適切な取扱
    • 該当のバージョンでは、PHP DirectoryIteratorクラスが\0バイトを含むファイル名を許可し、そのバイトでターミネートされているとして扱います。これによりセキュリティの脆弱性が生じる可能性が有ります。
  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11046
    • 一部のメモリ上のコンテンツの不適切な開示
    • 該当のバージョンでは、いくつかのシステム(Windowsを含む)のPHP bcmath 拡張関数が、文字を含む文字列を与える事で、割り当てられたスペースを超えて読み取るようにだまされる可能性があります OSによって数値として識別されますが、ASCII番号ではありません。 これにより、一部のメモリ上のコンテンツを読み取ることができます。
  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11047
    • ヒープバッファーオーバーフロー読み込みの可能性
    • 該当のバージョンでは、PHP EXIF拡張モジュールが画像からEXIF情報を解析しているとき、例えばexif_read_data()関数を介して、割り当てられたバッファを超えてデータを読み込む事ができる可能性があります。 これにより、情報漏えいやクラッシュが発生する可能性があります。
  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11049
    • メモリ二重解放の可能性
    • 該当のバージョンでは、カスタムヘッダーをmail()関数に渡すときに、ヘッダーが小文字で提供されると、二重解放が発生する可能性があります。
  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11050
    • use-after-freeの可能性
    • 該当のバージョンでは、PHP EXIF拡張モジュールが画像からEXIF情報を解析しているとき、use-after-freeが発生する可能性が有ります。

主なディストリビューションの対応方法

詳細は、各ディストリビューションの提供元にご確認ください


対処方法

各ディストリビューションの案内に従い、アップデートを行ってください。全てのRed Hat製品でパッチが行き渡っているかを確認するには、Red Hat SatelliteKatello、Spacewalk等を使うと管理が便利でしょう。


セキュリティ系連載案内


タイトルとURLをコピーしました