セキュリティ研究者は、エンタープライズおよび政府環境全体に配備されている広く使用されているオープンソースアイデンティティ管理プラットフォームであるApache Syncopeに影響を与える高重大度のリモートコード実行(RCE)脆弱性CVE-2025-57738の完全な技術詳細と動作するプルーフオブコンセプト(PoC)エクスプロイトを公開しました。
CVSS スコア 7.2として追跡されるこの脆弱性は、Syncope バージョン 2.x、3.0.14 前の 3.x、および 4.0.2 前の 4.x に影響します。
この欠陥は、プラットフォームの ImplementationManager コンポーネント内での Groovy ベースの実装の不安全な処理に由来しています。
問題の核心は、サンドボックス制御、CompilerConfiguration、または抽象構文木(AST)制限のない単純な GroovyClassLoader の使用です。
これにより、管理者権限を持つ認証済みユーザーは、静的初期化ブロックを含む悪意のある Groovy クラスをアップロードできます。これらのブロックは検証チェックが発生する前にコンパイル中に実行されます。
コンパイル時に実行が発生するため、攻撃者は Runtime.exec()、ProcessBuilder、ファイル操作、ネットワークソケットなどの危険な API を含む Java 仮想マシン(JVM)への無制限アクセスを取得します。
Syncope がルート権限で実行されるコンテナ化環境では、これはシステム全体の侵害につながる可能性があります。
この脆弱性は CWE-653(不適切な分離またはコンパートメンタライゼーション)に分類され、サンドボックス制御の欠落、静的初期化子の無制限実行、および継承されたフル JVM 権限の組み合わせが原因です。
エクスプロイトは、攻撃者が Syncope REST API に認証し、エンドポイント経由で悪意のあるペイロードをアップロードする方法を示しています:
ペイロードは GroovyClassLoader.parseClass() フェーズ中に実行されます。サーバが最終的にエラーを返したとしても。
成功した悪用は、「uid=0(root) gid=0(root)」などの出力によって確認されるルートレベルの実行につながります。
PoC には、実行後に悪意のある実装のトレースを削除する自動クリーンアップ機能も含まれています。
Apache は、多層的な Groovy サンドボックスを導入することで、Syncope バージョン 3.0.14 および 4.0.2 でこの問題に対処しました。
パッチは、SecureASTCustomizer、SandboxTransformer、および Runtime.exec、ProcessBuilder、File、Socket、リフレクションなどの高リスク API へのアクセスをブロックするランタイムブラックリストを含む Jenkins スクリプトセキュリティメカニズムを活用しています。
組織はパッチが適用されたバージョンへの即座のアップグレードを強くお勧めします。セキュリティチームは、実装管理権限を持つすべての管理アカウントと委任アカウントも監査する必要があります。これらのロールは悪用をトリガーするために悪用される可能性があるためです。
admin: password などのデフォルト認証情報を使用しているシステムは、著しく増加したリスクに直面しています。
この脆弱性は、CVE-2023-26360、CVE-2024-27348、および不安全な拡張性メカニズムに関連するその他を含む Apache Syncope の繰り返しRCE 欠陥のパターンに従っています。
このトレンドは、ランタイムコード挿入を許可するプラットフォームにおける厳格なサンドボックスとセキュアコード実行制御の継続的な必要性を強調しています。
翻訳元: https://cyberpress.org/apache-syncope-rce-vulnerability/