spring-beans パッケージの RCE 脆弱性について
通称 “Spring4shell” に絡む情報は錯綜していて,実は私も勘違いしていたのだが,情報の整理のために記事をのこしておく。
Java の Spring Framework に関する脆弱性報告は大きく2つあって,どちらも RCE (Remote Code Execution) 脆弱性だからか,両者がとっちらかっている印象を受ける。
報告された脆弱性のひとつは Spring Cloud Function に絡むもので(CVE-2022-22963),これに関して詳しくは VMWare の記事を見ていただきたい。 これはこれで結構ヤバいっす。
- CVE-2022-22963: Remote code execution in Spring Cloud Function by malicious Spring Expression | Security | VMware Tanzu
- Remote Code Execution in org.springframework.cloud:spring-cloud-function-context | CVE-2022-22963 | Snyk
で,もうひとつが本命の org.springframework:spring-beans パッケージの RCE 脆弱性,通称 “Spring4shell” である(CVE-2022-22965)。
- CVE-2022-22965: Spring Framework RCE via Data Binding on JDK 9+ | Security | VMware Tanzu
- Spring4Shell: What we know about the Java RCE vulnerability | Snyk
- Remote Code Execution in org.springframework:spring-beans | CVE-2022-22965 | Snyk
Snyk のブログ記事によると
だそうな。 これはヤバいわ。
対策としては,既に出ている Spring Framework の最新バージョン(5.2.20 または5.3.18 以降)に更新すればよい。 みんな大好き Spring Boot については,これを含んだバージョンが既に登場している。
- Release v2.5.12 · spring-projects/spring-boot · GitHub
- Release v2.6.6 · spring-projects/spring-boot · GitHub
というわけで,慌てず騒がず,冷静に対処しましょう。 アップデートは計画的に。
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- 深刻度: 緊急 (Score: 9.8)
基本評価基準 | 評価値 |
---|---|
攻撃元区分 | ネットワーク |
攻撃条件の複雑さ | 低 |
必要な特権レベル | 不要 |
ユーザ関与レベル | 不要 |
スコープ | 変更なし |
機密性への影響 | 高 |
完全性への影響 | 高 |
可用性への影響 | 高 |
ブックマーク
- Spring Framework RCE, Early Announcement
- VU#970766 - Spring Framework insecurely handles PropertyDescriptor objects with data binding
- Spring Frameworkの任意のコード実行の脆弱性(CVE-2022-22965)について
- Spring Frameworkの脆弱性 CVE-2022-22965(Spring4shell)についてまとめてみた - piyolog
- SpringShell RCE vulnerability: Guidance for protecting against and detecting CVE-2022-22965 - Microsoft Security Blog
- CVE-2022-22947: Spring Cloud Gateway Code Injection Vulnerability | Security | VMware Tanzu
参考図書
- Spring Boot 2 入門: 基礎から実演まで
- 原田 けいと (著), 竹田 甘地 (著), Robert Segawa (著)
- 2020-05-22 (Release 2020-05-22)
- Kindle版
- B0893LQ5KY (ASIN)
- 評価
Spring Boot を勉強することになって急遽買った本。めっさ分かりやすかった。 PDF 版が欲しいくらい(笑) Spring Boot 3.2 対応にアップデートされていた。素敵!
- Spring Data JPAプログラミング入門
- 溝口賢司 (著)
- 秀和システム 2017-08-03 (Release 2018-04-23)
- Kindle版
- B07CKHR8C1 (ASIN)
- 評価
JPA のお勉強用に購入。紙のほうはプレミアが付いてるっぽいが Kindle で買えるよ。固定レイアウトだからブラウザの Kindle Cloud Reader で読めるし。真面目に基本を押さえて書いていて分かりやすい。
- Effective Java 第3版
- Joshua Bloch (著), 柴田 芳樹 (翻訳)
- 丸善出版 2018-10-30
- 単行本(ソフトカバー)
- 4621303252 (ASIN), 9784621303252 (EAN), 4621303252 (ISBN)
- 評価
再勉強中。 Kindle 版のほうがちょっと安いが,勤務先でも使いたかったので紙の本にした。