JVNDB-2026-033025 | |
ZenhiveのMachine Payments Protocol (MPP)におけるTime-of-check Time-of-use (TOCTOU) 競合状態の脆弱性 | |
| 概要 | |
ZenHive mppにおけるTime-of-check Time-of-use (TOCTOU)レースコンディションにより、認証されていないリモートクライアントが1つの確定済みオンチェーン支払いを複数の有料リソースアクセスとして再利用できてしまう問題があります。MPP.Methods.Tempo.verify/2内のtype="hash"認証情報パスは、非原子的なチェック・アンド・マークのシーケンスでリプレイを防止しています。具体的には、check_hash_unused/2が重複排除ストアを読み取り、eth_getTransactionReceiptでオンチェーンの支払いを検証し、その後にmark_hash_used/2がマークを書き込みます。複数の同一決済済み支払いハッシュを持つ同時リクエストは、いずれかが書き込む前にすべての読み取りを通過するため、それぞれに領収書が発行されてしまいます。重複排除ストアの原子的なcheck_and_mark/2原始関数はtype="transaction"パスで使用されていますが、hashパスは設定されたストアが原子的操作を実装していても単純なgetとputを呼び出しています。攻撃には重複排除ストアの設定が必要であり、デフォルトのnilストアはステートレスでリプレイ保護をまったく提供しないことが文書化されています。この問題はバージョン0.2.0から0.6.1の間のmppに影響します。 | |
| CVSS による深刻度 (CVSS とは?) | |
|
CVSS v3 による深刻度
基本値: 3.7 (注意) [NVD値]
| |
| 影響を受けるシステム | |
|
| |
Zenhive | |
本脆弱性の影響を受ける製品の詳細については、ベンダ情報および参考情報をご確認ください。 | |
| 想定される影響 | |
・当該ソフトウェアが扱う情報について、外部への漏えいは発生しません。 | |
| 対策 | |
ベンダ情報を参照して適切な対策を実施してください。 | |
| ベンダ情報 | |
Erlang Ecosystem Foundation | |
| CWEによる脆弱性タイプ一覧 CWEとは? | |
|
| |
| 共通脆弱性識別子(CVE) CVEとは? | |
|
| |
| 参考情報 | |
| |
| 更新履歴 | |
|
| 公表日 | 2026/08/19 |
| 登録日 | 2026/09/11 |
| 最終更新日 | 2026/09/11 |



