概要
Spring Frameworkは、エンタープライズレベルのアプリケーションを構築するための包括的なJavaフレームワークです。アプリケーションのコンフィギュレーション、データアクセス、セキュリティを管理する様々なツールを提供しながら、Javaを主要言語として使用できるようにすることで、Webアプリケーションの開発を簡素化する強力で柔軟なプログラミングモデルを提供します。
Spring にパストラバーサルの脆弱性(CVE-2024-38816) が確認されました。この脆弱性により、攻撃者はアプリケーションのファイルパスの不適切な扱いを悪用してサーバー上の機密ファイルにアクセスすることができ、データ漏洩やシステム侵害の可能性があります。
OWASP による:パス・トラバーサル攻撃(「ドット・ドット・スラッシュ」、「ディレクトリ・トラバーサル」、「ディレクトリ・クライミング」、「バックトラック」としても知られる)は、ウェブ・ルート・フォルダの外部に保存されているファイルやディレクトリにアクセスすることを目的としています。ドットドットスラッシュ(../)」シーケンスとそのバリエーションでファイルを参照する変数を操作したり、絶対ファイルパスを使 用することで、アプリケーションのソースコードや設定ファイル、重要なシステムファイルを含む、ファイルシステム上に保存さ れている任意のファイルやディレクトリにアクセスすることが可能です。ファイルへのアクセスは、システム運用上のアクセス制御(Microsoft Windows オペレーティングシステム上のロックされたファイルや使用中のファイルの場合など)によって制限されることに注意する必要があります。
This issue affects Spring Framework versions >=5.3.0, <=5.3.39, >=6.0.0, <=6.0.23, >=6.1.0, <=6.1.12
詳細
モジュール情報
- 製品スプリングフレームワーク
- 影響を受けるパッケージ
スプリングウェブエムヴィシー
,スプリングウェブフラックス
- Affected versions: >= 6.1.0, < 6.1.13, >= 6.0.0, < 6.0.24, < 5.3.40
- GitHubリポジトリ: https://github.com/spring-projects/spring-framework
- パッケージマネージャ:メイブン
脆弱性情報
この深刻度の高い脆弱性は、5.3.0 以上 6.1.13 未満の Spring Framework の spring-webmvcおよび spring-webfluxパッケージに存在します。
この脆弱性は、WebMvc.fn または WebFlux.fn 機能的ウェブフレームワークを通して静的リソースを提供するアプリケーションにおけるファイルパスの不適切な処理に起因します。悪意のある HTTP リクエストを作成することで、攻撃者はこの欠陥を悪用して制限を回避し、Spring アプリケーションが実行されているプロセスからアクセス可能な、サーバーのファイルシステム上のファイルにアクセスすることができます。これは機密データへの不正アクセスにつながる可能性があり、データ漏洩やシステム侵害のリスクをもたらします。
再現の手順
詳細が判明次第、この手順を更新する予定だ。
緩和
Spring Framework 5.3のコミュニティサポートは終了しました。コミュニティサポート版には、この問題に対処するためのアップデートはありません。詳細はこちらをご覧ください。
影響を受けるコンポーネントのユーザーは、以下のいずれかの緩和策を適用してください:
- 影響を受けるアプリケーションを、サポートされているバージョンのSpring Frameworkにアップグレードする。
- サポートされていない古いバージョンのユーザーは、アプリケーションでSpring Securityのファイアウォールを有効にしたり、TomcatやJettyをウェブサーバーとして使うように切り替えたりすることができる。
- EOL後のセキュリティ・サポートには、HeroDevsのような商用サポート・パートナーを活用する。
クレジット
参考文献
弊社がサポートするオープンソースソフトウェアに新たな脆弱性が修正された場合、いつでもアラートを受け取ることができます。