POJIA破甲
地图 / SpendProofV1 txid-substitution: get_spend_proof/check_spend_proof do not verify returned transaction hash

SpendProofV1 txid-substitution: get_spend_proof/check_spend_proof do not verify returned transaction hash

密码学缺陷 / Missing Required Cryptographic Step / #3700036

厂商
Monero
严重程度
低危 · CVSS 5.3
赏金
—
弱点
Missing Required Cryptographic Step
研究员
@bebensap
披露日期
2026-08-05
资产
—
CVE
—

该报告还没有中文解读。

原文摘录

摘自原文(5705 字符中的一小部分)
**Repository:** [`monero-project/monero`](https://github.com/monero-project/monero) — `src/wallet/wallet2.cpp`. Snapshot: `master @ 3ad4a5ee8` (`v0.18.1.0-3ad4a5ee8`).
原文中的代码
std::string sig_prefix_data((const char*)&txid, sizeof(crypto::hash));
sig_prefix_data += message;
crypto::hash sig_prefix_hash;
crypto::cn_fast_hash(sig_prefix_data.data(), sig_prefix_data.size(), sig_prefix_hash);
// ring sigs use tx / rings from res.txs[0], not a second hash check

默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 Monero 所有。

时间线

  • 报告提交
  • 公开披露
阅读 HackerOne 原文 ↗作者 @bebensap · 版权归作者与 Monero 所有

同类报告

HMAC signature verification omits endpoint and payload allowing request forgery on CoinMate APICoinMate.io · 2026-05-20`check_reserve_proof` sums RingCT ECDH amounts without checking the output commitmentMonero · 2026-08-05SSL options ISSUERCERT, EC_CURVES and CRLFILE silently ignored by non-OpenSSL backendscurl · 2026-01-20Missing AES-GCM Authentication Tag Validation and Improper Deprecation HandlingNode.js · 2025-12-19Phabricator is vulnerable to padding oracle attacks and chosen-ciphertext attacks.Phabricator · 2017-04-05 · $750Able to bypass HSTS using trailing dotcurl · 2026-02-26