البقايا القاتلة: سرقة بقيمة 300,000 دولار داخل السلسلة نتيجة التخزين اللحظي
في 30 مارس 2025، وقعت عملية سطو داخل السلسلة بقيمة تزيد عن 300,000 دولار أمريكي على شبكة Ethereum. وفقًا لنظام المراقبة الأمنية، تعرض مشروع التداول بالرافعة المالية SIR.trading للهجوم، مما أدى إلى خسائر فادحة. قامت فريق الأمن بتحليل عميق لهذه الحادثة، والآن يتم نشر نتائج التحقيق كما يلي.
خلفية الحدث
تم تقديم إصدار Solidity 0.8.24 في يناير 2024 مع ميزة التخزين المؤقت (transient storage). هذه طريقة جديدة لتخزين البيانات تهدف إلى توفير تخزين مؤقت فعال من حيث التكلفة ومتاح خلال المعاملات للمطورين. يتم تحقيق التخزين المؤقت من خلال تعليمتي EVM الجديدة TSTORE و TLOAD، والتي تتميز بتكاليف غاز منخفضة، واستمرارية داخل المعاملة، وإزالة تلقائية.
سبب الهجوم
السبب الجذري لهذا الحدث هو أن القيم المخزنة مؤقتًا باستخدام tstore في الدالة لم يتم مسحها بعد انتهاء استدعاء الدالة. استغل المهاجم هذه الخاصية، فقام بإنشاء عنوان ضار محدد لتجاوز فحص الأذونات، ونجح في سحب الرموز.
عملية الهجوم
يقوم المهاجم بإنشاء رمزين ضارين A و B، ويقوم بإنشاء بركة لهذين الرمزين على DEX معين لإضافة السيولة، حيث يكون رمز A هو عقد الهجوم.
يقوم المهاجم باستدعاء دالة initialize لعقد Vault، باستخدام رمز A كرمز ضمان ورمز B كرمز دين لإنشاء سوق تداول رافعة APE-21.
يقوم المهاجم باستدعاء دالة mint في عقد Vault، وإيداع رمز الدين B لصك رموز الرفع APE. خلال هذه العملية، يتم تخزين عنوان تجمع DEX وكمية الصك في الذاكرة المؤقتة.
يقوم المهاجم بإنشاء عقد خبيث يكون عنوانه مطابقًا لعدد الصكوك الذي تم تخزينه مؤقتًا سابقًا.
قام المهاجم باستدعاء دالة uniswapV3SwapCallback لعقد Vault مباشرة من خلال هذا العقد الخبيث لسحب الرموز. نظرًا لأن القيم في التخزين المؤقت لم يتم مسحها، مما أدى إلى اجتياز فحص الهوية بشكل خاطئ.
أخيرًا، قام المهاجم باستدعاء دالة uniswapV3SwapCallback لعقد Vault من خلال مهاجمة عقد (عملة A)، مما أدى إلى تحويل عملات أخرى (WBTC، WETH) من عقد Vault لتحقيق الربح.
تحليل تدفق الأموال
وفقًا لبيانات أدوات التحليل داخل السلسلة ، قام المهاجم بسرقة أصول تقدر بحوالي 300,000 دولار أمريكي ، بما في ذلك 17,814.8626 USDC و 1.4085 WBTC و 119.871 WETH. بعد ذلك ، قام المهاجم بتبادل هذه الأصول ونقلها:
تم تحويل WBTC إلى 63.5596 WETH
تم تحويل USDC إلى 9.7122 WETH
تم تحويل 193.1428 WETH إلى شبكة مجهولة داخل السلسلة
من الجدير بالذكر أن مصدر رأس المال الأولي للمهاجمين هو 0.3 ETH تم تحويلها من شبكة مجهولة.
الملخص والتوصيات
استغل هذا الهجوم خاصية التخزين المؤقت التي تظل ثابتة طوال مدة المعاملة، ونجح في تجاوز التحقق من أذونات دالة الاستدعاء. للحد من وقوع أحداث مماثلة، يُنصح الأطراف المعنية بالمشروع بـ:
وفقًا للمنطق التجاري، استخدم tstore(key، 0) لمسح القيم من التخزين المؤقت على الفور بعد انتهاء استدعاء الدالة.
تعزيز تدقيق كود العقد واختبارات الأمان، مع التركيز بشكل خاص على مخاطر استخدام الميزات الجديدة.
تنفيذ آلية تحقق متعددة، وعدم الاعتماد فقط على فحص هوية واحد.
إجراء تقييمات أمنية بشكل دوري لاكتشاف وإصلاح الثغرات المحتملة في الوقت المناسب.
تُذكّرنا هذه الحادثة مرة أخرى بضرورة التوخي الحذر عند اعتماد تقنيات جديدة، وتقييم تأثيرها الأمني بشكل شامل. وفي الوقت نفسه، فإن التدقيق الأمني المستمر وإدارة المخاطر أمران حيويان لحماية أصول المستخدمين.
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 18
أعجبني
18
6
مشاركة
تعليق
0/400
GhostChainLoyalist
· 07-23 20:02
فوّت الفرصة! مرة أخرى مشروع تم خداع الناس لتحقيق الربح.
شاهد النسخة الأصليةرد0
HypotheticalLiquidator
· 07-23 17:12
300 ألف؟ هذا هو ما يحدث في تنقية السوق...
شاهد النسخة الأصليةرد0
P2ENotWorking
· 07-20 21:17
فريق المشروع مرة أخرى نائم في سبات عميق
شاهد النسخة الأصليةرد0
BlockchainRetirementHome
· 07-20 21:16
مرة أخرى نرى العقود الذكية يُستغل بغباء.
شاهد النسخة الأصليةرد0
DYORMaster
· 07-20 20:49
يبدو جيدًا ولكنه غير مفيد، حتى الكود لا يمكن مراجعته
ثغرة تخزين مؤقت تؤدي إلى تعرض مشروع تداول الهامش لسرقة داخل السلسلة بقيمة 300,000 دولار
البقايا القاتلة: سرقة بقيمة 300,000 دولار داخل السلسلة نتيجة التخزين اللحظي
في 30 مارس 2025، وقعت عملية سطو داخل السلسلة بقيمة تزيد عن 300,000 دولار أمريكي على شبكة Ethereum. وفقًا لنظام المراقبة الأمنية، تعرض مشروع التداول بالرافعة المالية SIR.trading للهجوم، مما أدى إلى خسائر فادحة. قامت فريق الأمن بتحليل عميق لهذه الحادثة، والآن يتم نشر نتائج التحقيق كما يلي.
خلفية الحدث
تم تقديم إصدار Solidity 0.8.24 في يناير 2024 مع ميزة التخزين المؤقت (transient storage). هذه طريقة جديدة لتخزين البيانات تهدف إلى توفير تخزين مؤقت فعال من حيث التكلفة ومتاح خلال المعاملات للمطورين. يتم تحقيق التخزين المؤقت من خلال تعليمتي EVM الجديدة TSTORE و TLOAD، والتي تتميز بتكاليف غاز منخفضة، واستمرارية داخل المعاملة، وإزالة تلقائية.
سبب الهجوم
السبب الجذري لهذا الحدث هو أن القيم المخزنة مؤقتًا باستخدام tstore في الدالة لم يتم مسحها بعد انتهاء استدعاء الدالة. استغل المهاجم هذه الخاصية، فقام بإنشاء عنوان ضار محدد لتجاوز فحص الأذونات، ونجح في سحب الرموز.
عملية الهجوم
يقوم المهاجم بإنشاء رمزين ضارين A و B، ويقوم بإنشاء بركة لهذين الرمزين على DEX معين لإضافة السيولة، حيث يكون رمز A هو عقد الهجوم.
يقوم المهاجم باستدعاء دالة initialize لعقد Vault، باستخدام رمز A كرمز ضمان ورمز B كرمز دين لإنشاء سوق تداول رافعة APE-21.
يقوم المهاجم باستدعاء دالة mint في عقد Vault، وإيداع رمز الدين B لصك رموز الرفع APE. خلال هذه العملية، يتم تخزين عنوان تجمع DEX وكمية الصك في الذاكرة المؤقتة.
يقوم المهاجم بإنشاء عقد خبيث يكون عنوانه مطابقًا لعدد الصكوك الذي تم تخزينه مؤقتًا سابقًا.
قام المهاجم باستدعاء دالة uniswapV3SwapCallback لعقد Vault مباشرة من خلال هذا العقد الخبيث لسحب الرموز. نظرًا لأن القيم في التخزين المؤقت لم يتم مسحها، مما أدى إلى اجتياز فحص الهوية بشكل خاطئ.
أخيرًا، قام المهاجم باستدعاء دالة uniswapV3SwapCallback لعقد Vault من خلال مهاجمة عقد (عملة A)، مما أدى إلى تحويل عملات أخرى (WBTC، WETH) من عقد Vault لتحقيق الربح.
تحليل تدفق الأموال
وفقًا لبيانات أدوات التحليل داخل السلسلة ، قام المهاجم بسرقة أصول تقدر بحوالي 300,000 دولار أمريكي ، بما في ذلك 17,814.8626 USDC و 1.4085 WBTC و 119.871 WETH. بعد ذلك ، قام المهاجم بتبادل هذه الأصول ونقلها:
من الجدير بالذكر أن مصدر رأس المال الأولي للمهاجمين هو 0.3 ETH تم تحويلها من شبكة مجهولة.
الملخص والتوصيات
استغل هذا الهجوم خاصية التخزين المؤقت التي تظل ثابتة طوال مدة المعاملة، ونجح في تجاوز التحقق من أذونات دالة الاستدعاء. للحد من وقوع أحداث مماثلة، يُنصح الأطراف المعنية بالمشروع بـ:
تُذكّرنا هذه الحادثة مرة أخرى بضرورة التوخي الحذر عند اعتماد تقنيات جديدة، وتقييم تأثيرها الأمني بشكل شامل. وفي الوقت نفسه، فإن التدقيق الأمني المستمر وإدارة المخاطر أمران حيويان لحماية أصول المستخدمين.