Alibaba fastjson 1.xに認証不要RCEのCVE-2026-16723、パッチ未提供でSafeModeとfastjson2移行を推奨

この記事は約14分で読めます。

Alibabaが開発したオープンソースのJava用JSONライブラリfastjson 1.xに、リモートコード実行(RCE)につながる脆弱性CVE-2026-16723が存在すると、プロジェクトメンテナが2026年7月21日にGitHubの公式Security Advisoryで公表しました。影響対象はfastjson 1.2.68から1.2.83で、1.x系の最終リリースである1.2.83も含まれます。SafeModeが無効な初期設定のまま、Spring Boot実行可能fat JARとして展開され、攻撃者が制御するJSONを影響を受けるパース処理へ渡せるネットワーク経路が存在する場合、Javaプロセスの権限で任意コードを実行される可能性があります。AutoTypeの明示的な有効化や、従来型のクラスパスガジェット(classpath gadget)は必要ありません。CVSSスコアはAlibaba(CNA)による評価で9.0(Critical)です。

脆弱性の発見者はFearsOff CybersecurityのKirill Firsov氏で、責任ある開示の手続きを経て公開されました。ThreatBookは2026年7月20日に検出サポートを追加し、7月22日付の報告で実環境における悪用活動を捕捉したと公表しました。Impervaも2026年7月24日付の報告で、金融サービス、ヘルスケア、コンピューティング、小売などを対象とする攻撃活動を観測したと公表しています。ただし、両社の公開資料では被害組織名、実環境で成功したコード実行の証拠、被害件数までは明らかにされておらず、悪用を狙う攻撃活動の観測にとどまります。alibaba/fastjsonリポジトリは2024年10月23日にアーカイブされ、読み取り専用(read-only)の状態で、2026年7月28日確認時点でfastjson 1.xの修正版は公式に案内されていません。Alibabaは対処として、SafeModeの有効化、noneautotypeビルドへの切り替え、または後継のfastjson2への移行を推奨しています。

項目 内容
CVE ID CVE-2026-16723
種別 認証不要のリモートコード実行(RCE)
CVSS 3.1基本値 9.0(Alibaba(CNA)による評価、Critical)
影響バージョン fastjson 1.2.68〜1.2.83(1.x系の最終リリース1.2.83含む)
影響を受けない条件 fastjson2の全バージョン、SafeMode有効、noneautotypeビルド、非fat JAR展開。NVDのCNAレコードは1.2.68〜1.2.83以外を影響なしとして扱っており、Alibaba公式Wikiは特に1.2.60以下について脆弱なコードパスが存在しないと明記
悪用条件 影響バージョン、SafeMode無効、Spring Boot実行可能fat JAR(java -jar xxx.jar形式)、攻撃者が制御するJSONをパース処理に渡せるネットワーク到達可能な経路
検証済み環境 Spring Boot 2.x / 3.x / 4.x、JDK 8 / 11 / 17 / 21
公開日 2026年7月21日(Alibaba公式Security Advisory)
発見者 Kirill Firsov氏(FearsOff Cybersecurity)
悪用を狙う攻撃活動の観測 ThreatBookが2026年7月20日から検出サポートを追加、7月22日付報告で実環境における悪用活動を捕捉。Impervaも2026年7月24日付の報告で金融・ヘルスケア・コンピューティング・小売などを対象とする攻撃活動を米国中心に観測したと公表。公開資料では実環境での侵害成功や被害組織は未確認
CISA KEV 2026年7月28日確認時点でCISA KEVカタログに未登録。CISA-ADPは2026年7月23日にSSVC情報を追加し、exploitationをnoneと評価(SSVCとKEVは別プロセス)
パッチ alibaba/fastjsonリポジトリは2024年10月23日にアーカイブされ、読み取り専用の状態。2026年7月28日確認時点でfastjson 1.xの修正版は未リリース。Alibabaの推奨はSafeMode有効化、noneautotypeビルド利用、またはfastjson2への移行

fastjsonとfastjson2 — Alibaba発のJava用JSONライブラリと世代交代

fastjsonはAlibabaが開発したオープンソースのJava用JSONライブラリで、JavaオブジェクトをJSONにシリアライズし、JSONをJavaオブジェクトにデシリアライズする用途で広く利用されてきました。JavaエコシステムにおいてJacksonやGsonと並ぶ選択肢の一つで、企業のバックエンド、銀行系システム、Eコマース基盤など、Spring Boot上で稼働する数多くのアプリケーションが直接的または推移的に依存しています。

fastjsonには歴史的に複数のデシリアライゼーション脆弱性が発見されてきており、その多くはAutoType機能(JSON内の @type フィールドで型情報を渡し、任意のクラスとしてインスタンス化する機能)の悪用を経路としてきました。2022年に開示されたAutoTypeバイパス脆弱性への対応として、Alibabaはfastjson 1.2.83を最終アップグレード版として推奨しました。1.2.83は1.x系の最終リリースで、以降Alibabaは後継のfastjson2の開発に注力しています。alibaba/fastjsonリポジトリは2024年10月23日にアーカイブされ、以降読み取り専用の状態にあります。

fastjson2は1.xとは別のコードベースで、型解決アーキテクチャやAutoTypeの扱いを根本的に書き直しています。ユーザー制御のクラス名に対するリソース探索を行わず、@JSONType アノテーションを型解決の信頼判定には使わず、多態的な型処理は許可リスト優先モデルを採用しています。Alibabaはfastjson 1.xユーザーに対して、以前からfastjson2への移行を長期的な解決策として推奨してきました。

CVE-2026-16723の中核 — デフォルト設定で悪用可能なRCE

公式Security Advisoryで示された技術的な骨格は、以下の通りです。攻撃者がJSONリクエスト内に細工した @type 値を送り込むと、fastjson 1.xの型解決経路がその値をクラスリソース検索に変換します。この経路は攻撃者が制御するバイトコードを、Spring Boot fat JAR内のネストされたJARパスから引き出せる形になっていました。読み込まれたクラスに付与された @JSONType アノテーションが型解決過程で信頼シグナルとして機能し、fastjsonのセキュリティチェックをすり抜ける経路が成立します。

この脆弱性が特に危険とされる理由は、fastjsonを「初期状態のまま利用している場合」で成立する点です。AutoTypeの明示的な有効化は必要ありません。攻撃対象アプリケーションのクラスパスに、従来型のガジェットチェーンで悪用されるような特定のクラスが存在している必要もありません。従来のfastjsonデシリアライゼーション脆弱性で有効だった「危険な依存関係を減らす」「ブロックリストを拡張する」といった対策では防げない構造になっています。

Alibabaのアドバイザリでは、Spring Boot 2.x / 3.x / 4.xおよびJDK 8 / 11 / 17 / 21の各組み合わせでエンドツーエンドの検証が完了したと明記されています。侵入経路となるfastjsonのAPIとして、公式アドバイザリは JSON.parseJSON.parseObject(String)JSON.parseObject(String, Class) を挙げています。攻撃者が制御するJSONを認証なしでこれらのAPIに渡せるネットワーク経路が存在すれば、Javaプロセスと同じ権限で任意コードを実行される可能性があります。

悪用条件と、緩和にならない対策

公式アドバイザリは、悪用が成立する条件と、成立しない条件を明確に切り分けています。悪用が成立するのは、fastjsonバージョンが1.2.68から1.2.83の範囲にあり、AutoTypeがOFF、SafeModeがOFFという「初期設定のまま」で、かつSpring Boot実行可能fat JARとして展開されているケースです。JDKは8 / 11 / 17 / 21のいずれも検証済みで、Spring Bootも2.x / 3.x / 4.xのいずれも検証済みです。

一方で影響を受けないケースとしては、fastjson2の全バージョン、fastjson 1.2.60以下(脆弱なコードパス自体が存在しない)、SafeModeが明示的に有効化されている環境、noneautotypeビルドを利用している環境、そして非fat JAR展開(通常の java -jar 起動でもfat JARでないもの、uber-jar、TomcatやJettyにWARとして配置しているものなど)がAlibaba公式Wikiに明記されています。

特に注意が必要なのは、パースするターゲットクラスを明示的に指定する呼び出し方(JSON.parseObject(body, SomeDto.class))が緩和策として機能しないという点です。Alibabaのアドバイザリでは、DTO内に Object 型や Map 型のフィールドがあれば、攻撃者はそこにペイロードをネストできると明記しています。つまり「型を絞っているから安全」という直感は成立しません。API側でクラスを指定していても、DTOの内部構造次第で悪用の余地が残ります。

悪用を狙う攻撃活動の観測状況とCISAの評価

ThreatBookは2026年7月20日に本脆弱性の検出サポートを追加し、7月22日付の報告で実環境における悪用活動を捕捉したと公表しました。Impervaも2026年7月24日付の報告で、金融サービス、ヘルスケア、コンピューティング、小売、ビジネスなど幅広い業種を対象とする攻撃活動を観測したと公表しています。観測された攻撃のほぼすべては米国の組織を標的としており、シンガポールとカナダに少数の攻撃が観測されている状況です。攻撃元の傾向として、ブラウザなりすまし(browser impersonators)が多数派を占め、RubyやGoで書かれたツールが合計で約30%の割合を占めるとのことです。

NVDの変更履歴では、CISA-ADP(Authorized Data Publisher)が2026年7月23日にSSVC情報を追加し、exploitationをnone、automatableをno、technicalImpactをtotalと評価しています。一方、ThreatBookとImpervaは悪用を狙う攻撃活動を観測したと報告しています。CISA-ADPのSSVC評価は特定時点の情報に基づくもので、CISAのKnown Exploited Vulnerabilities(KEV)カタログへの登録判断とは別のプロセスです。2026年7月28日確認時点で、CVE-2026-16723はKEVカタログに登録されていません。

公表資料の状況としては、AlibabaもThreatBookもImpervaも、具体的な被害組織、成功した実際のコード実行の証拠、生の攻撃リクエスト、被害数のカウントを公表していません。ThreatBookとImpervaの報告は「悪用の試行が観測された」という点までを立証するもので、実世界の標的での成功事例までを直接的に示すものではない点は、記事執筆時点の状況として押さえておくべき点です。

過去の更新推奨先だった1.2.83も影響対象

2022年に公表された別のAutoTypeバイパス脆弱性への対応で1.2.83へ更新した環境も、今回のCVE-2026-16723の影響対象に含まれます。1.2.83は1.x系の最終リリースですが、他の影響バージョンより脆弱というわけではなく、1.2.68から1.2.83の範囲がいずれも同じ影響対象として公表されています。2022年の対応で1.2.83まで更新済みの環境も、追加でSafeModeの有効化、noneautotypeビルドへの切り替え、またはfastjson2への移行が必要になります。

alibaba/fastjsonリポジトリは2024年10月23日にアーカイブされ、読み取り専用の状態にあります。The Hacker Newsは2026年7月25日時点で、プロジェクトのGitHubタグにもMaven Centralにも修正済みのfastjson 1.xアーティファクトは存在しないと確認しています。標準的な1.x最新版は1.2.83のままで、制限付きビルドとして1.2.83_noneautotypeが公開されている状況です。今後の1.x向け修正リリース計画については、Alibabaから明らかにされていません。

組織側の対応としては、fastjsonを直接依存として指定している場合だけでなく、他のライブラリを経由した推移的依存として引き込んでいるケースが実務上は多く、この推移的依存の棚卸しが対応の起点になります。特に長期運用中のSpring Bootサービス、レガシー化して更新を停止している内部システム、外部ライブラリのミドルウェア層でfastjson 1.xを引き込んでいるケースは、この機に洗い出しておく必要があります。

Alibabaが示す対処 — SafeMode、noneautotype、fastjson2移行

公式Security Advisoryは、fastjson 1.xユーザー向けの対処を優先度付きで整理しています。優先度P0の対処は、SafeModeを有効化するか、noneautotypeビルドに切り替えるかのいずれかです。SafeModeの有効化には3通りの方法があります。JVM起動オプションとして -Dfastjson.parser.safeMode=true を渡すか、コード内で ParserConfig.getGlobalInstance().setSafeMode(true) を呼び出すか、fastjson.properties ファイルで設定する方法です。SafeModeが有効な場合、fastjsonは脆弱な処理経路に到達する前にすべての @type 値を拒否します。

SafeModeの有効化が正規のパース動作に影響を与える場合の代替として、noneautotypeビルドへの切り替えが提示されています。Mavenの座標指定は com.alibaba:fastjson:1.2.83_noneautotype です。このビルドでは脆弱なコード自体がコンパイル時に取り除かれており、AutoType機能そのものが利用できなくなる代わりに、脆弱性の到達経路自体が消えます。

優先度P1の対処は、fastjson2への移行です。fastjson2は今回の脆弱性の根本原因となる型解決処理を持たず、CVE-2026-16723の影響を受けません。ただしAlibabaはfastjson2利用者に対して、一般的な安全対策として非推奨扱いの JSONReader.Feature.SupportAutoType を明示的に有効化しないこと、AutoType機能が必要な場合は ContextAutoTypeBeforeHandler で厳格な許可リストを用いることを案内しています。またfastjson 1.xから2.xへの移行はAPI変更を伴うため、コード修正と回帰テストが必要です。緊急対応としてはP0のSafeModeまたはnoneautotypeで悪用経路を遮断し、中長期的にP1のfastjson2移行を計画するのが実務的な選択肢になります。

実務チェックリスト — 直接依存・推移的依存とSpring Boot実行モード

組織側で確認すべき項目は、大きく分けて依存関係の棚卸しと実行構成の確認の2軸です。依存関係については、Mavenの mvn dependency:tree やGradleの ./gradlew dependencies を活用して、直接依存だけでなく推移的依存にfastjson 1.xが含まれていないかを確認します。バージョンが1.2.68から1.2.83の範囲にあるかを確認し、範囲内であればSafeModeの有効化状況、またはnoneautotypeビルドへの切り替え状況をチェックします。

実行構成については、対象アプリケーションがSpring Boot実行可能fat JAR形式で展開されているかを確認します。公式アドバイザリが明示している通り、通常の java -jar 起動でもfat JARではないもの、uber-jar、TomcatやJettyにWARとして配置している構成は、CVE-2026-16723の悪用条件を満たさず、影響を受けません。ただし、fastjson 1.xのリポジトリはアーカイブ済みの旧系列であるため、今回の脆弱性とは別に、長期的な保守性の観点からfastjson2への移行を検討することが望まれます。

Impervaは、影響を受ける可能性のあるシステムについて、疑わしい @type 値や jar:httpjar:file を含むリクエスト、想定外のプロセス実行、外向き通信、不正なファイル変更、Webシェルなどの痕跡を確認するよう推奨しています。修正版のfastjson 1.xが提供されていない状況では、緩和策の適用と並行して、既に侵害されていないかを確認する必要があります。

一次情報・公式情報

Security Advisory: Remote Code Execution in fastjson 1.2.68–1.2.83(alibaba/fastjson2 Wiki、2026年7月21日)
FastJson 1.2.83 Remote Code Execution(FearsOff、Kirill Firsov氏、2026年7月26日最終更新)
Fastjson RCE (≤1.2.83): Active Exploitation Detected — Detection & Mitigation(ThreatBook、2026年7月22日)
Imperva Customers Protected Against CVE-2026-16723: Critical FastJson 1.x Zero-Day RCE(Imperva)
Known Exploited Vulnerabilities Catalog(CISA、2026年7月28日確認時点でCVE-2026-16723は未登録)

参考情報

Fastjson 1.x RCE Vulnerability Targeted in Attacks With No Patched Available(The Hacker News、2026年7月25日)
Hackers target US firms in FastJson RCE zero-day attacks(BleepingComputer、2026年7月27日)

コメント

タイトルとURLをコピーしました