Описание
False-positive validity for NFT1 genesis transactions in SLPJS
Impact
In the npm package named "slpjs", versions prior to 0.27.4 are vulnerable to false-positive validation outcomes for the NFT1 Child Genesis transaction type. A poorly implemented SLP wallet or opportunistic attacker could create a seemingly valid NFT1 child token without burning any of the NFT1 Group token type as is required by the NFT1 specification.
Patches
npm package "slpjs" has been patched and is published and tagged as version 0.27.4.
Workarounds
Upgrade to slpjs 0.27.4.
References
- Package location: https://www.npmjs.com/package/slpjs
- SLP NFT1 spec: https://slp.dev/specs/slp-nft-1/#nft1-protocol-requirements
- Git commit hash fixing this issue: https://github.com/simpleledger/slpjs/commit/290c20e8bff13ac81459d43e54cac232b5e3456c
- Unit tests have been added to assist validator implementations in avoiding this bug: https://github.com/simpleledger/slp-unit-test-data/commit/8c942eacfae12686dcf1f3366321445a4fba73e7
For more information
If you have any questions or comments about this advisory please open an issue in the slp-validate repository.
Пакеты
slpjs
< 0.27.4
0.27.4
Связанные уязвимости
In SLPJS (npm package slpjs) before version 0.27.4, there is a vulnerability to false-positive validation outcomes for the NFT1 Child Genesis transaction type. A poorly implemented SLP wallet or opportunistic attacker could create a seemingly valid NFT1 child token without burning any of the NFT1 Group token type as is required by the NFT1 specification. This is fixed in version 0.27.4.