PHP においてガベージコレクタにおける Use-After-Free の脆弱性により制限を回避して任意の PHP 関数が実行可能となる問題(Scan Tech Report) | ScanNetSecurity
2024.03.28(木)

PHP においてガベージコレクタにおける Use-After-Free の脆弱性により制限を回避して任意の PHP 関数が実行可能となる問題(Scan Tech Report)

プログラミング言語 PHP に disable_functions による実行制限を回避して、任意の PHP 関数が実行可能となる脆弱性が報告されています。

脆弱性と脅威 エクスプロイト
◆概要

プログラミング言語 PHP に disable_functions による実行制限を回避して、任意の PHP 関数が実行可能となる脆弱性が報告されています。何か別の脆弱性を悪用されて対象の Web サーバに悪意のある PHP ファイルを設置されてしまった場合に備えて、system 関数などの OS コマンド実行につながる関数の実行制限をしていたとしても、別の脆弱性を悪用して PHP ファイルのアップロードに成功した攻撃者に制限を回避され、OS コマンドを実行されてしまい侵入されてしまいます。脆弱性対策の強化とアップデートにより対策してください。

◆分析者コメント

攻撃対象となる Web サーバに何か別の脆弱性や設定不備が存在し、PHP ファイルをアップロード可能であるという前提条件が必要となる脆弱性です。PHP の disable_functions の設定により、system 関数や shell_exec 関数などの制限による OS コマンドの実行に対策していたとしても、当該脆弱性を悪用して OS コマンドが実行されてしまうため、攻撃者に侵入されてしまう危険性があります。前提条件が必要な脆弱性であるため悪用には難しいですが、PHP のバージョン 7 系は幅広く影響を受ける脆弱性であるため、多層防御を強化するために PHP のアップデートによる対策を推奨します。

◆深刻度(CVSS)

本記事執筆時点(2019 年 10 月 8 日)では CVE 番号が発番されておらず、脆弱性に対応したバージョンが公開されていません。

◆影響を受けるソフトウェア

以下のバージョンの PHP が脆弱性の影響を受けると報告されています。脆弱性に対応したエクスプロイトコードは Unix/Linux 版の PHP にのみ対応していますが、Windows で脆弱性が悪用できないかという情報は、本記事執筆時点(2019 年 10 月 8 日)では確認できていません。

  + PHP 7.0 - 7.0.33
  + PHP 7.1 - 7.1.31
  + PHP 7.2 - 7.2.23
  + PHP 7.3 - 7.3.10

◆解説

プログラミング言語 PHP のガベージコレクタに、unserialize 関数と組み合わせた場合に発現する、Use-After-Free の脆弱性が報告されています。
《株式会社ラック デジタルペンテスト部》

関連記事

Scan PREMIUM 会員限定記事

もっと見る

Scan PREMIUM 会員限定記事特集をもっと見る

カテゴリ別新着記事

「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」
「経理」「営業」「企画」「プログラミング」「デザイン」と並ぶ、事業で成功するためのビジネスセンスが「セキュリティ」

ページ右上「ユーザー登録」から会員登録すれば会員限定記事を閲覧できます。毎週月曜の朝、先週一週間のセキュリティ動向を総括しふりかえるメルマガをお届け。(写真:ScanNetSecurity 名誉編集長 りく)

×