BTC
ETH
HTX
SOL
BNB
ดูตลาด
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

SlowMist: การวิเคราะห์ช่องโหว่ของ "Zero Yuan Purchase" ในตลาดซื้อขาย TreasureDAO NFT

慢雾科技
特邀专栏作者
2022-03-03 11:30
บทความนี้มีประมาณ 1264 คำ การอ่านทั้งหมดใช้เวลาประมาณ 2 นาที
ช่องโหว่นี้ทำให้ NFT ของมาตรฐาน ERC-721 ถูกถ่ายโอนโดยตรง และต้นทุนที่จำเป็นในการซื้อ NFT จะคำนวณเป
สรุปโดย AI
ขยาย
ช่องโหว่นี้ทำให้ NFT ของมาตรฐาน ERC-721 ถูกถ่ายโอนโดยตรง และต้นทุนที่จำเป็นในการซื้อ NFT จะคำนวณเป

ที่อยู่ตามสัญญา

ข้อมูลที่เกี่ยวข้อง

ที่อยู่ตามสัญญา

TreasureMarketplaceBuyer:

0x812cda2181ed7c45a35a691e0c85e231d218e273

TreasureMarketplace:

0x2e3b85f85628301a0bce300dee3a6b04195a15ee

การวิเคราะห์รายละเอียดช่องโหว่

1. ผู้ใช้ซื้อ NFT ผ่านฟังก์ชัน buyItem ในสัญญา TreasureMarketplaceBuyer อันดับแรก ฟังก์ชันนี้จะคำนวณราคาซื้อทั้งหมดและป้อน Token ที่จำเป็นสำหรับการชำระเงินลงในสัญญา จากนั้นเรียก buyItem ในสัญญา TreasureMarketplace เพื่อซื้อ NFT จากตลาด ไปยังสัญญา TreasureMarketplaceBuyer จากนั้นโอน NFT ไปยังผู้ใช้จากสัญญา TreasureMarketplaceBuyer

2. ในสัญญา TreasureMarketplace:

พบว่าถ้าพารามิเตอร์ _quantity ที่เข้ามาเป็น 0 คุณสามารถส่ง requirement(listedItem.quantity >= _quantity,"not enough quantity"การวิเคราะห์ธุรกรรมการโจมตี

การวิเคราะห์ธุรกรรมการโจมตี

ที่นี่จะแสดงเฉพาะรายละเอียดของธุรกรรมการโจมตีหนึ่งรายการเท่านั้น และวิธีการของธุรกรรมการโจมตีอื่นๆ ก็เหมือนกัน ดังนั้นฉันจะไม่ทำซ้ำที่นี่

ธุรกรรมการโจมตี:

https://arbiscan.io/tx/0x82a5ff772c186fb3f62bf9a8461aeadd8ea0904025c3330a4d247822ff34bc02

ผู้โจมตี:

0x4642d9d9a434134cb005222ea1422e1820508d7b

รายละเอียดการโจมตี:

ดังที่เห็นได้จากรูปด้านล่าง ผู้โจมตีเรียกฟังก์ชัน buyItem ในสัญญา TreasureMarketplaceBuyer และทำให้พารามิเตอร์ _quantity ขาเข้าเป็น 0

สรุป

สรุป

หัวใจหลักของช่องโหว่นี้คือก่อนที่จะถ่ายโอน NFT ของมาตรฐาน ERC-721 จะไม่มีการตัดสินว่าพารามิเตอร์ _quantity ที่เข้ามานั้นไม่ใช่ 0 ซึ่งนำไปสู่ความจริงที่ว่า NFT ของมาตรฐาน ERC-721 สามารถถ่ายโอนได้ โดยตรงและการซื้อ NFT เมื่อคำนวณราคา ต้นทุนที่ต้องการจะคำนวณเป็น 0 เพื่อตอบสนองต่อช่องโหว่ดังกล่าว ทีมรักษาความปลอดภัยของ SlowMist แนะนำว่าก่อนที่จะถ่ายโอน NFT ของมาตรฐาน ERC-721 จำเป็นต้องตัดสินใจให้ดีเกี่ยวกับปริมาณที่เข้ามาเพื่อหลีกเลี่ยงปัญหาดังกล่าวไม่ให้เกิดขึ้นอีก

DAO
NFT
ความปลอดภัย
ยินดีต้อนรับเข้าร่วมชุมชนทางการของ Odaily
กลุ่มสมาชิก
https://t.me/Odaily_News
กลุ่มสนทนา
https://t.me/Odaily_CryptoPunk
บัญชีทางการ
https://twitter.com/OdailyChina
กลุ่มสนทนา
https://t.me/Odaily_CryptoPunk
ค้นหา
สารบัญบทความ
คลังบทความของผู้เขียน
慢雾科技
อันดับบทความร้อน
Daily
Weekly
ดาวน์โหลดแอพ Odaily พลาเน็ตเดลี่
ให้คนบางกลุ่มเข้าใจ Web3.0 ก่อน
IOS
Android