🚨 استغلال بقيمة 2.5 مليون دولار @SolvProtocol خطأ Double Mint تم استغلال البروتوكول بسبب ثغرة مزدوجة في النص بين mint() و onERC721Received(). المهاجم هجوم TX عقد الضحية كيف حدث ذلك؟ 🧵👇
تحدث المشكلة عندما يقوم Mint() بنقل NFT. التدفق: 1️⃣ mint() تنادي doSafeTransferIn() 2️⃣ مشغلات نقل NFT على ERC721 تم الاستلام() 3️⃣ إعادة الإشارة ترسل رموز BRO للمهاجم 4️⃣ يعود التحكم إلى السك () الذي يعود للسك مرة أخرى نفس NFT - الرموز التي تم سكها مرتين burn() يحول BRO مرة أخرى إلى قيمة ERC-3525: sftValue = المبلغ * الأعداد العشرية / سعر الصرف استغل المهاجم هذا الأمر بحلقة متكررة: النعناع → الحرق → النعناع (22 مرة) النتيجة: 135 BRO → 567M BRO باستخدام NFT واحد ثم قام المهاجم بتبديل الوضع: BRO → SolvBTCV3 → WBTC → WETH الربح النهائي: 1211 إيه إيثي (~2.5 مليون دولار).
‏‎1.42‏K