概要
オープンソースの在庫管理システムInvenTreeにおいて、サーバーサイドテンプレートインジェクション(SSTI)の脆弱性(CVE-2026-27629)が発見されました。この脆弱性は、バージョン1.2.3より前のInvenTreeに存在し、カスタムバッチコードの生成時に使用されるJinja2テンプレートが悪意を持って変更されることで発生します。スタッフ権限を持つユーザーが悪用した場合、機密情報の漏洩やサーバー上での任意のコード実行につながる可能性があります。本脆弱性はバージョン1.2.3および1.3.0以降で修正されており、セキュアなサンドボックス環境でテンプレート生成が行われるようになっています。
影響範囲
InvenTreeのバージョン1.2.3より前のすべてのバージョンが影響を受けます。具体的には、カスタムバッチコード生成機能におけるテンプレート処理が対象となります。
想定される影響
- スタッフ権限を持つ悪意のあるユーザーによって、サーバー上の機密情報がクライアントに漏洩する可能性があります。
- サーバー上で任意のコードが実行される可能性があります。
- 一度悪意のあるテンプレートが設定されると、他のユーザーがAPI経由でバッチコードを生成する際にも、その悪意のあるコードがユーザーコンテキストで実行される可能性があります。
攻撃成立条件・悪用状況
攻撃成立条件
- スタッフ権限を持つユーザーによるアクセスが必要です。
- API経由でカスタムバッチコード生成リクエストを行う必要があります。
- 悪意のあるテンプレートが一度設定されると、他のユーザーのAPI呼び出しでも実行される可能性があります。
悪用状況
現時点での具体的な悪用状況に関する詳細な報告は確認されていませんが、潜在的なリスクが存在します。
推奨対策
今すぐできる対策(最優先)
- InvenTreeのアップデート: InvenTreeをバージョン1.2.3以降、または1.3.0以降に速やかにアップデートしてください。これにより、テンプレート生成がセキュアなサンドボックスコンテキストで行われるようになり、本脆弱性が修正されます。
中長期的な対策
- システムレベルでの設定上書き: システム管理者権限を持つユーザーが、グローバル設定である
STOCK_BATCH_CODE_TEMPLATEおよびPART_NAME_FORMATをシステムレベルで上書きし、編集不可に設定することを検討してください。これにより、スタッフユーザーによるテンプレートの悪意ある変更を防ぐことができます。
一時的な緩和策
バージョンアップが直ちに困難な場合、以下の緩和策を適用することを推奨します。
- グローバル設定のシステムレベルでの上書き: InvenTreeのバージョン1.2.3より前のインストール環境では、システム管理者権限で
STOCK_BATCH_CODE_TEMPLATEおよびPART_NAME_FORMATのグローバル設定をシステムレベルでデフォルト値に上書きし、編集できないようにしてください。この設定はサーバー実行中にクライアント側から変更できないため、システムレベルでの適切な設定が必要です。
確認方法
- 現在利用しているInvenTreeのバージョンを確認し、バージョン1.2.3より前である場合は脆弱性の影響を受けます。
- グローバル設定
STOCK_BATCH_CODE_TEMPLATEおよびPART_NAME_FORMATがシステムレベルで上書きされ、編集不可になっているかを確認してください。