pacioli-guard に 認可不備 (CVE-2026-107841)
概要
pacioli-guard に 脆弱性 (CVE-2026-107841) が存在。データの不正な改ざんを許す可能性があります。true 経由で攻撃可能。対策: 0.10.0 以上に更新。
原文の説明
取得元が公開している説明をそのまま載せています (多くは英語)。
Impact
pacioli-guard's document-layer consent gate requires a human-minted, single-use, document-bound and act-bound marker before a credential carrying API Key Scope.require_consent may submit or cancel a document. Because ERPNext performs further document writes as a consequence of a governed act, nested acts are allowed to "ride" the consent established by the enclosing act instead of needing a marker of their own.
The ride predicate returned true for every cancel, regardless of which act the enclosing marker authorised. Riding never reaches consent_verdict, which is where the marker-to-act binding is enforced. The result: any Document.cancel() performed inside an act that had established consent reached docstatus = 2 with no marker, no act-binding check, no single-use spend, and no denial audit row.
This is reachable with the exact grant an operator is documented to give the broker, and the cancelled document's identity is caller-controlled:
Sales Invoice.on_submit(sales_invoice.py:507) callsprocess_asset_depreciation()unconditionally, reachingdepreciate_asset_on_sale(:1508-1516).- That iterates the invoice's item rows and calls
frappe.get_doc("Asset", d.asset).Sales Invoice Item.assetis a plain writableLinkwith noread_onlyand nofetch_from, so the caller supplies it in the request body. The validation that would constrain it sits behindif d.is_fixed_asset:(:428-429), a server-set field. - The chain r…
出典: NIST National Vulnerability Database NVD GitHub Advisory
自動生成の要約
取得元のデータ (CVSS・CWE・影響バージョンなど) から SecPulse が定型文で組み立てた要約です。AI は使っていません。正確な内容は下の原文と参照URLで確認してください。
pacioli-guard という製品で、CVE-2026-107841 という番号がついた弱点 (脆弱性) が見つかりました。
悪い人がインターネット越しに true のような特定の入り口を狙うことで、製品の中を不正に操作できてしまいます。
データの不正な改ざんを許す可能性があります。重要度は CVSS スコア 5.7/10 です。
対策: pacioli-guard を 0.10.0 以上に更新してください。
心配なら、システム担当者や製品の公式サイトで「pacioli-guard CVE-2026-107841」を検索してください。
CVE-2026-107841 (pacioli-guard) — CWE-863 / CVSS v3 5.7
攻撃ベクター: ネットワーク経由 (リモート攻撃可)
脆弱箇所: true / consent_verdict / depreciate_asset_on_sale / Link
修正バージョン: 0.10.0 (即時適用推奨)
暫定回避: On 0.9.6, remove require_consent from affected grants and rely on the credential-scoping floor alone, or scope governed credentials so they cannot submit documents whose controllers cancel other documents (for ERPNext slice-one, Sales Invoice wit
対応方針: 1) SBOMで影響バージョン横断確認, 2) ステージング検証→本番更新, 3) WAF/プロキシで該当エンドポイントを監視, 4) ログでIOC調査。
参考: 当ページの『参照URL』の GHSA / vendor advisory / patched release を参照。
pacioli-guard に 認可不備 (CWE-863) があります。攻撃者は true を経由して脆弱な処理に到達できます。
pacioli-guard の影響バージョンはベンダーのアドバイザリで確認してください。攻撃箇所: true / consent_verdict / depreciate_asset_on_sale / Link。
重要度: 中 (CVSS 5.7/10)。データの不正な改ざんを許す可能性があります。
0.10.0 に更新してください。
暫定回避: On 0.9.6, remove require_consent from affected grants and rely on the credential-scoping floor alone, or scope governed credentials so they cannot submit documents whose controllers cancel other documents (for ERPNext slice-one, Sales Invoice wit
Webサーバ・プロキシ・WAFログで該当CVEのIOCに合致する不審リクエストを検索。SBOM/依存ファイルで影響バージョンを横断確認。
対応アクション
SOC/SREチームが順番に実行すべき具体的なステップとコマンド例
-
1影響範囲の特定 identify
grep -r 'pacioli-guard' . | grep -v node_modulesリポジトリと本番環境の依存ファイル (package-lock.json / requirements.txt / go.sum / Gemfile.lock 等) で
pacioli-guardを grep し、稼働しているサービス・バージョンを把握する。 -
2暫定回避策の適用 mitigate
On 0.9.6, remove `require_consent` from affected grants and rely on the credential-scoping floor alone, or scope governed credentials so they cannot submit documents whose controllers cancel other documents (for ERPNext slice-one, `Sales Invoice` witパッチが適用されるまでの応急処置として、On 0.9.6, remove
require_consentfrom affected grants and rely on the credential-scoping floor alone, or scope governed credentials so they cannot submit documents whose controllers cancel other documents (for ERPNext slice-one,Sales Invoicewit を実施。回避策の副作用 (機能低下) を確認した上で。 -
3パッチ適用 patch
Upgrade pacioli-guard to 0.10.0ステージング環境で 0.10.0 に上げて回帰テスト → 本番反映。回帰テストはアプリの主要ハッピーパスを含めること。
-
4事後検証 verify
Confirm patched version is live in productionパッチ適用後、ステージングで PoC または同等の悪用パターンを再現して脆弱性が閉じたことを確認。本番ではアクセスログ・WAF でアラート再発が無いか継続監視。