CVE-2024-45411: Twig Sandbox Bypass Vulnerability Puts PHP Applications at Risk
2024/09/10 SecurityOnline — 広く使用されている PHP テンプレート・エンジン Twig に、深刻なセキュリティ脆弱性 CVE-2024-45411 (CVSS:8.5) が発見された。この脆弱性の悪用に成功した攻撃者は、サンドボックスの制限を回避し、悪意のコード実行を可能にする。テンプレート・レンダリングにおいて、Twig を使用している Web アプリケーションにとっては、深刻な影響が生じる可能性がある。

この問題のセキュリティ上の脆弱性は、ユーザーが生成するテンプレートに対して、セキュリティ・チェックを実行する機能である、Twig のサンドボックスに起因する。特定の条件下において、これらのサンドボックス・チェックが実行されないケースが生じるため、通常は設定されているはずの制限を、攻撃者が回避する可能性が生じる。この抜け穴が発生する条件について、下記のようにGitHub で詳述されている。
- サンドボックスが、グローバルに無効化されている。
- サンドボックス化された include() 関数を介して、新たなサンドボックスが有効化され、Template または TemplateWrapper インスタンスを使用せずに、名前 (included.twig など) でテンプレートを参照している。
- グローバルなサンドボックスが無効化されているため、サンドボックス以外のコンテキストで、インクルードされたテンプレートが事前に読み込まれている。
これらの条件がすべて満たされると、この脆弱性を悪用する攻撃者による、悪意のコードの注入やテンプレートの制限の回避が可能となり、不正アクセス/データの漏えいなどが引き起こされ、基盤となる PHP アプリケーションのさらなる悪用につながる可能性がある。
脆弱性 CVE-2024-45411 は、以下を含む幅広いバージョンの Twig に影響を与える。
- 1.0.0〜1.44.7
- 2.0.0〜2.16.0
- 3.0.0〜3.13.0
開発者および管理者に強く推奨されるのは、最新のパッチ適用済みバージョンで、Twig を更新することである。
- 1.44.8
- 2.16.1
- 3.14.0
このパッチは、サンドボックスのセキュリティ・チェックが、確実に実行されるようにすることで、以前では問題となっていた状況下でも、脆弱性は対処されている。
この脆弱性の深刻さを考慮すると、Twig を使用している全ての PHP アプリケーションを、パッチが適用されたバージョンに、速やかに更新する必要がある。この作業を先延ばしにすると、アプリケーションは攻撃に直面し続けることになり、データ漏洩/サービスの中断に加えて、その他のセキュリティ侵害などの可能性が生じる。
PHP ユーザーに提供される、多様なテンプレートの1つとして、Twig は評価されているようです。このようなレイヤーに発生する脆弱性は、広範に影響を及ぼす可能性があるため、とても危険な存在となります。ご利用のチームは、アップデートを お急ぎください。よろしけれは、PHP で検索も、ご参照ください。
You must be logged in to post a comment.