مؤخراً، شارك أحد خبراء الأمن دورة تدريبية حول أمان التمويل اللامركزي لأعضاء المجتمع. استعرضت الدورة الأحداث الأمنية الكبرى التي شهدها قطاع Web3 على مدار العام الماضي، واستكشفت أسباب هذه الأحداث وطرق تجنبها، وملخصت الثغرات الأمنية الشائعة في العقود الذكية وطرق الوقاية منها، وقدمت بعض النصائح الأمنية للمشاريع والمستخدمين العاديين.
تشمل أنواع الثغرات الشائعة في التمويل اللامركزي القروض الفورية، والتلاعب بالأسعار، ومشكلات صلاحيات الدوال، والاستدعاء الخارجي العشوائي، ومشكلات دالة fallback، والثغرات في منطق الأعمال، وتسرب المفاتيح الخاصة، وهجمات إعادة الإدخال. ستركز هذه المقالة على ثلاثة أنواع وهي القروض الفورية، وتلاعب الأسعار، وهجمات إعادة الإدخال.
القرض الفوري هو ابتكار في التمويل اللامركزي، ولكنه قد يُستغل من قبل القراصنة. عادةً ما يقوم المهاجمون باقتراض كميات كبيرة من الأموال عبر القرض الفوري، للتلاعب بالأسعار أو مهاجمة منطق العمل. يحتاج المطورون إلى النظر في ما إذا كانت وظائف العقد ستؤدي إلى شذوذ بسبب الأموال الضخمة، أو ما إذا كان من الممكن من خلال الأموال الكبيرة التفاعل مع عدة وظائف في صفقة واحدة للحصول على مكافآت غير مشروعة.
تبدو العديد من مشاريع التمويل اللامركزي ذات عوائد مرتفعة، لكن مستوى فريق المشروع متفاوت. بعض المشاريع قد تستخدم رموزاً تم شراؤها، وحتى لو لم يكن هناك ثغرات في الشيفرة نفسها، قد تبقى هناك مشكلات من الناحية المنطقية. على سبيل المثال، تقوم بعض المشاريع بتوزيع المكافآت في أوقات محددة بناءً على كمية الرموز التي يمتلكها حاملوها، مما قد يستغله المهاجمون من خلال اقتراض رموز كبيرة عبر القروض السريعة ليحصلوا على معظم المكافآت عند توزيعها.
التحكم في الأسعار
تتعلق مشكلة التلاعب بالأسعار ارتباطًا وثيقًا بالقروض الفورية، وذلك بسبب إمكانية التحكم ببعض المعلمات أثناء حساب الأسعار. هناك نوعان شائعان من المشكلات:
عند حساب الأسعار، يتم استخدام بيانات الطرف الثالث، ولكن إذا كانت طريقة الاستخدام غير صحيحة أو كانت هناك فحوصات مفقودة، فقد يؤدي ذلك إلى التلاعب بالأسعار بشكل خبيث.
استخدام عدد الرموز المميزة لبعض العناوين كمتغير حسابي، حيث يمكن زيادة أو تقليل رصيد الرموز المميزة لهذه العناوين بشكل مؤقت.
هجوم إعادة الإدخال
من المخاطر الرئيسية لاستدعاء العقود الخارجية هو أنها قد تستولي على تدفق التحكم وتقوم بإجراء تغييرات غير متوقعة على البيانات. على سبيل المثال، في دالة السحب، إذا تم تعيين رصيد المستخدم إلى 0 فقط في نهاية الدالة، فإن الاستدعاء الثاني (وأي استدعاءات لاحقة) سيظل ناجحًا، مما يؤدي إلى سحب مكرر.
لحل مشكلة إعادة الدخول، يجب الانتباه إلى النقاط التالية:
يجب منع مشكلة إعادة الدخول لوظيفة واحدة فقط.
اتباع نمط Checks-Effects-Interactions في الترميز.
استخدم المعدل المضاد لإعادة الدخول الذي تم التحقق من صحته عبر الزمن.
من الجدير بالذكر أن إعادة اختراع العجلة قد يؤدي إلى مخاطر أكبر. استخدام أفضل الممارسات الأمنية المثبتة غالبًا ما يكون أكثر أمانًا من تطوير طرق جديدة بنفسك.
نصائح أمان المشروع
اتباع أفضل ممارسات الأمان في تطوير العقود.
تنفيذ وظيفة ترقية العقد وإيقافه.
استخدام آلية قفل الوقت.
زيادة الاستثمار في الأمن، وإنشاء نظام أمان متكامل.
زيادة الوعي الأمني لجميع الموظفين.
منع الأذى الداخلي، مع تعزيز كفاءة العمل وزيادة التحكم في المخاطر.
يجب توخي الحذر عند إدخال طرف ثالث، حيث أن الجانبين العلوي والسفلي غير آمنين بشكل افتراضي.
كيف يحدد المستخدم/موفر السيولة ما إذا كان العقد الذكي آمنًا
تأكد من أن العقد مفتوح المصدر.
تحقق مما إذا كان المالك يستخدم التوقيع المتعدد، وما إذا كان التوقيع المتعدد لامركزي.
تحقق من حالة التداول الحالية للعقد.
تأكيد ما إذا كانت العقد هي عقد وكيل، وما إذا كانت قابلة للتحديث، وما إذا كان هناك قفل زمني.
تحقق مما إذا كانت العقد قد خضعت لتدقيق من قبل عدة مؤسسات، وما إذا كانت صلاحيات المالك كبيرة جدًا.
انتبه إلى استخدام الأوراكيل.
من خلال التركيز على هذه الجوانب، يمكن للمستخدمين تقييم أمان العقود الذكية بشكل أفضل وتقليل احتمال المشاركة في مشاريع عالية المخاطر.
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
تسجيلات الإعجاب 9
أعجبني
9
6
مشاركة
تعليق
0/400
GateUser-a180694b
· منذ 13 س
القروض السريعة 啧啧啧 يُستغل بغباء.老伙计了吧
شاهد النسخة الأصليةرد0
ContractCollector
· منذ 13 س
الآن القروض السريعة حقاً هي الأكثر استغلالاً للثغرات.
شاهد النسخة الأصليةرد0
AirdropChaser
· منذ 13 س
أريد أن أجرب حظي أولاً، لقد خدعني الناس لتحقيق الربح هذه المرة.
شاهد النسخة الأصليةرد0
BridgeTrustFund
· منذ 13 س
مرة أخرى حدث مشكلة في القروض السريعة
شاهد النسخة الأصليةرد0
DeFiVeteran
· منذ 13 س
مرة أخرى ضحايا القروض السريعة
شاهد النسخة الأصليةرد0
MidnightSnapHunter
· منذ 13 س
هجوم إعادة الدخول أصبح موضوعًا شائعًا، الآن من لا يعرف ذلك؟
تحليل الثغرات الأمنية الشائعة في التمويل اللامركزي: القروض السريعة، والتلاعب في الأسعار، ووسائل الحماية من هجمات إعادة الإدخال
التمويل اللامركزي 常见安全漏洞及预防措施
مؤخراً، شارك أحد خبراء الأمن دورة تدريبية حول أمان التمويل اللامركزي لأعضاء المجتمع. استعرضت الدورة الأحداث الأمنية الكبرى التي شهدها قطاع Web3 على مدار العام الماضي، واستكشفت أسباب هذه الأحداث وطرق تجنبها، وملخصت الثغرات الأمنية الشائعة في العقود الذكية وطرق الوقاية منها، وقدمت بعض النصائح الأمنية للمشاريع والمستخدمين العاديين.
تشمل أنواع الثغرات الشائعة في التمويل اللامركزي القروض الفورية، والتلاعب بالأسعار، ومشكلات صلاحيات الدوال، والاستدعاء الخارجي العشوائي، ومشكلات دالة fallback، والثغرات في منطق الأعمال، وتسرب المفاتيح الخاصة، وهجمات إعادة الإدخال. ستركز هذه المقالة على ثلاثة أنواع وهي القروض الفورية، وتلاعب الأسعار، وهجمات إعادة الإدخال.
! قسم أمان Cobo DeFi (الجزء الثاني) :D الثغرات الأمنية الشائعة والوقاية من eFi
قرض فوري
القرض الفوري هو ابتكار في التمويل اللامركزي، ولكنه قد يُستغل من قبل القراصنة. عادةً ما يقوم المهاجمون باقتراض كميات كبيرة من الأموال عبر القرض الفوري، للتلاعب بالأسعار أو مهاجمة منطق العمل. يحتاج المطورون إلى النظر في ما إذا كانت وظائف العقد ستؤدي إلى شذوذ بسبب الأموال الضخمة، أو ما إذا كان من الممكن من خلال الأموال الكبيرة التفاعل مع عدة وظائف في صفقة واحدة للحصول على مكافآت غير مشروعة.
تبدو العديد من مشاريع التمويل اللامركزي ذات عوائد مرتفعة، لكن مستوى فريق المشروع متفاوت. بعض المشاريع قد تستخدم رموزاً تم شراؤها، وحتى لو لم يكن هناك ثغرات في الشيفرة نفسها، قد تبقى هناك مشكلات من الناحية المنطقية. على سبيل المثال، تقوم بعض المشاريع بتوزيع المكافآت في أوقات محددة بناءً على كمية الرموز التي يمتلكها حاملوها، مما قد يستغله المهاجمون من خلال اقتراض رموز كبيرة عبر القروض السريعة ليحصلوا على معظم المكافآت عند توزيعها.
التحكم في الأسعار
تتعلق مشكلة التلاعب بالأسعار ارتباطًا وثيقًا بالقروض الفورية، وذلك بسبب إمكانية التحكم ببعض المعلمات أثناء حساب الأسعار. هناك نوعان شائعان من المشكلات:
هجوم إعادة الإدخال
من المخاطر الرئيسية لاستدعاء العقود الخارجية هو أنها قد تستولي على تدفق التحكم وتقوم بإجراء تغييرات غير متوقعة على البيانات. على سبيل المثال، في دالة السحب، إذا تم تعيين رصيد المستخدم إلى 0 فقط في نهاية الدالة، فإن الاستدعاء الثاني (وأي استدعاءات لاحقة) سيظل ناجحًا، مما يؤدي إلى سحب مكرر.
لحل مشكلة إعادة الدخول، يجب الانتباه إلى النقاط التالية:
من الجدير بالذكر أن إعادة اختراع العجلة قد يؤدي إلى مخاطر أكبر. استخدام أفضل الممارسات الأمنية المثبتة غالبًا ما يكون أكثر أمانًا من تطوير طرق جديدة بنفسك.
نصائح أمان المشروع
كيف يحدد المستخدم/موفر السيولة ما إذا كان العقد الذكي آمنًا
من خلال التركيز على هذه الجوانب، يمكن للمستخدمين تقييم أمان العقود الذكية بشكل أفضل وتقليل احتمال المشاركة في مشاريع عالية المخاطر.