Trusted Design

CVE-2018-15133 の詳細

CVEの情報

説明:
In Laravel Framework through 5.5.40 and 5.6.x through 5.6.29, remote code execution might occur as a result of an unserialize call on a potentially untrusted X-XSRF-TOKEN value. This involves the decrypt method in Illuminate/Encryption/Encrypter.php and PendingBroadcast in gadgetchains/Laravel/RCE/3/chain.php in phpggc. The attacker must know the application key, which normally would never occur, but could happen if the attacker previously had privileged access or successfully accomplished a previous attack.

CVE更新日: 2018-08-09 19:29:00.333000

CVSSバージョン: 3.1

CVSSスコア: 8.1

KEVの情報

KEV更新日: 2024-01-16

EPSSの情報

EPSSは脆弱性が今後30日以内に悪用される確率を予測するスコアリングシステムで、FIRST(Forum of Incident Response and Security Teams)が提供しています。
EPSSのスコアが高いということは、攻撃されるリスクが高いことを意味するので、早めの対策が必要です。

EPSSスコア: 0.765700000

EPSS更新日: 2026-10-16 00:00:00

SSVCの情報

SSVCはカーネギーメロン大学ソフトウェア工学研究所が提案する脆弱性の評価手法です。ステークホルダーごとに脆弱性対応の優先度を決定することを支援します。
本サイトでは、CVE、KEV、EPSSの内容からExploitation(悪用状況)、Technical Impact(技術的影響)、Automatable(自動攻撃の可否)を判定します。

Exploitation: active

Technical Impact: high

Automatable: True

AIを使った解説

解説:

CVE-2018-15133に関する調査結果を以下にまとめます。

1. 脆弱性の概要

Laravel Frameworkに存在する、信頼できないデータのデシリアライゼーションの脆弱性です。これにより、リモートからのコード実行(RCE)が可能となります。この脆弱性は、悪意のあるユーザーがアプリケーションの暗号化キー(APP_KEY環境変数)にアクセスできた場合にのみ悪用される可能性があります。

1.1 影響

この脆弱性が悪用されると、リモートの攻撃者がLaravelアプリケーションが稼働しているシステム上で任意のコードを実行できる可能性があります。 攻撃は、Illuminate/Encryption/Encrypter.php内のdecryptメソッドにおける、信頼できないX-XSRF-TOKEN値の非シリアル化処理を介して行われます。

1.2 深刻度

CVSS v3.1の基本スコアは8.1であり、「高(High)」と評価されています。 また、一部の評価ではCVSS v2.0の基本スコア6.8で「中(Medium)」とされています。 この脆弱性は、CISA(サイバーセキュリティ・インフラセキュリティ庁)の既知の悪用されている脆弱性カタログ(Known Exploited Vulnerabilities Catalog)に掲載されており、活発な悪用が確認されています。

2. 対象となる環境

2.1 影響を受けるOSバージョン

本脆弱性はLaravel Framework自体に影響を与えるものであり、特定のOSバージョンに限定されません。 * Laravel Framework 5.5.40以前のバージョン * Laravel Framework 5.6.xから5.6.29までのバージョン * Debian 11 (php-laravel-framework が 6.20.14+dfsg-2+deb11u1 未満) * Debian 12 (php-laravel-framework が 8.83.26+dfsg-2 未満)

2.2 影響を受ける設定

この脆弱性は、攻撃者がアプリケーションの暗号化キー(APP_KEY環境変数)を知っている場合に悪用される可能性があります。 特に、Illuminate/Encryption/Encrypter.phpのdecryptメソッドと、潜在的に信頼できないX-XSRF-TOKEN値に対するunserialize呼び出しが関与します。

3. 影響を受けた時の兆候

  • 予期せぬリモートコード実行が発生している。
  • サーバー上で見慣れないプロセスが実行されている、または不審なファイルが作成されている。
  • 機密データへの不正アクセスやデータの改ざん。
  • AndroxGh0stやMoziなどのマルウェアが、脆弱なLaravelサーバーをスキャンするためにこの脆弱性を悪用していることが報告されています。

4. 推奨対策

4.1 本対策

  • Laravel Frameworkのアップデート: Laravel Frameworkを以下のバージョンにアップグレードしてください。
    • 5.5.41以降
    • 5.6.30以降 公式のアップグレードガイドを参照し、ベンダーの指示に従って緩和策を適用してください。
  • APP_KEYの漏洩対策: APP_KEYが漏洩した場合は、直ちにキーをローテーションし、古いセッションを無効化し、影響を受けるすべてのシステムを再デプロイしてください。
  • 継続的なシークレットスキャン: CI/CDパイプラインに継続的なシークレットスキャンを導入し、APP_KEYなどの機密情報が公開リポジトリなどに漏洩するのを防いでください。
  • セキュアな設計の採用: 機密情報を扱う際には、セキュア・バイ・デザインのパターンを採用し、コードやコンテナに直接機密性の高い設定を保存することを避けてください。

4.2 暫定回避策(緩和策)

  • セッションドライバーの変更: 可能な限りSESSION_DRIVER=cookieの使用を避けることで、デシリアライゼーション攻撃の対象領域を減らすことができます。
  • APP_KEYの厳重な管理: APP_KEYは常に秘密に保ち、GitHubのような公開リポジトリやその他の安全でない場所に公開されないように徹底してください。攻撃が成功するための最も重要な前提条件の一つは、APP_KEYが攻撃者に知られていることです。

その他解説すべき観点

  • 悪用方法: この脆弱性はphpggcガジェットチェーンを使用して悪用されることがあります。 公開されたエクスプロイト(PoC)も存在し、悪用されやすい状態です。
  • 攻撃経路: 攻撃はリモートから行われ、APP_KEYが既知であれば認証は不要です。

参照したサイト

NVDサイト

NVDでCVEの詳細を見る

戻る