آلية حماية الأمان: اتجاه جديد لإعادة بناء هيكل أمان المحفظة متعددة التواقيع

تحليل متعمق للمعضلة الآمنة: هل يمكن للحارس إعادة بناء برج العقد في بابل؟

في 21 فبراير 2025، واجهت صناعة العملات المشفرة أسوأ أزمة إدارة أصول في تاريخها. تم استهداف محفظة متعددة التوقيع على أحد منصات التداول وتم اختراقها، مما أدى إلى فقدان ما يقرب من 1.5 مليار دولار من الأصول من خلال صفقة "توقيع قانوني". أظهرت التحليلات اللاحقة على السلسلة أن المهاجم تمكن من الحصول على صلاحيات التوقيع المتعدد من خلال هجوم هندسي اجتماعي دقيق، واستخدم وظيفة deleGatecall في عقد Safe لزرع منطق خبيث، مما أدى إلى تجاوز آلية التحقق من التوقيع المتعدد ونقل الأموال إلى عنوان مجهول.

كشفت هذه الحادثة عن واقع قاسي: "التوقيع المتعدد" لا يعني "الأمان المطلق"، حتى مع وجود آلية الأمان مثل محفظة Safe متعددة التوقيعات، إذا افتقرت إلى تدابير حماية إضافية، لا يزال هناك خطر من التعرض للاختراق. وهذه ليست هي الحالة الأولى للهجوم على محفظة Safe متعددة التوقيعات. فقد خسرت منصتان العام الماضي 230 مليون دولار و50 مليون دولار، وتعرضتا لأساليب هجوم مماثلة. تظهر حوادث هجوم محفظة Safe متعددة التوقيعات ما يلي من التقارب التقني:

  • الاعتماد المفرط على آلية التوقيع: تسليم كل المسؤولية الأمنية إلى حفظ المفاتيح الخاصة.
  • نقص في الدفاع الديناميكي: عدم وجود مسح للمخاطر في الوقت الفعلي قبل تنفيذ الصفقة.
  • تحكم في الوصول بشكل خشن: لم يتم إنشاء آلية القائمة البيضاء للعمليات عالية المخاطر مثل deleGatecall.

المسألة الأساسية في سلسلة هذه الأحداث ليست في عقد Safe نفسه، بل في المخاطر الأمنية خلال عملية تكامل النظام بأكمله، وخاصة في مرحلة التحقق من الواجهة الأمامية. هذا يدفعنا إلى التفكير: كيف يمكن تعزيز قدرة حماية محفظة التوقيع المتعدد من خلال آلية التدابير الأمنية الإضافية لـ Safe؟

تحليل عميق لمأزق Safe: هل يمكن لـ Guard إعادة بناء برج بابل العقدي؟

آمن

Safe عبارة عن محفظة متعددة التوقيع (Multi-Sig) ، تستخدم بشكل رئيسي لإدارة الأصول عالية القيمة والتخزين الآمن والتحويل للعملات الرقمية. كونه بنية تحتية لإدارة الأصول اللامركزية ، فإنه يضمن أمان العمليات المالية من خلال آلية التحقق المتعاون من عدة أطراف ، مما يمنع المسؤول الوحيد أو المخترق من استغلال نقطة فشل واحدة للقيام بعمليات خبيثة ، ويستخدم على نطاق واسع في إدارة الحوكمة DAO ، وصناديق الأمانة للشركات ، وحمامات الصناديق اللامركزية وغيرها من السيناريوهات. تم تطوير العقد بواسطة فريق Safe ، وهو الحل القياسي الحالي لإدارة الأصول على السلسلة. يعتمد العقد على معيار EIP-712 لتنفيذ توقيع البيانات الهيكلية ، مما يعزز أمان البيانات التجارية وقابليتها للتحقق.

الاستخدامات الأساسية

  • إدارة أمان الأموال: تتطلب العقود تأكيد المعاملات من عدة مالكين محددين مسبقًا (Owners) معًا قبل التنفيذ، مما يمنع بفعالية الأخطاء الفردية أو العمليات الخبيثة، ويضمن أمان الأموال.
  • تنفيذ وإدارة المعاملات: من خلال آلية التحقق متعددة التوقيعات المدمجة، يمكن للعقد تنفيذ التحويلات الخارجية، واستدعاء العقود الأخرى، أو معالجة المنطق التجاري المعقد في حالة استيفاء شروط عتبة التوقيع، ويدعم دفع الرموز والعملات الأصلية وتعويض الرسوم.
  • التوسيع المعياري: تعتمد العقود على تصميم معياري، من خلال وراثة وتجميع عدة وحدات إدارة (مثل OwnerManager وModuleManager وGuardManager وFallbackManager وغيرها)، مما يجعل وظائفها مرنة وسهلة التوسع، وتوفير دعم مخصص لمختلف سيناريوهات التطبيقات.

تحليل الدوال

execTransaction دالة تنفيذ المعاملات التي تم التحقق من صحتها من خلال التوقيع المتعدد:

  • حساب قيمة الهاش الفريدة للمعاملة (بالجمع بين معلمات المعاملة وnonce وغيرها)؛
  • تحقق من صحة جميع التوقيعات، وتأكد من أن كل توقيع يأتي من مالك شرعي أو عنوان معتمد مسبقًا؛
  • استدعاء منطق الأعمال لعنوان الهدف، وتسجيل حالة النجاح أو الفشل بعد تنفيذ المعاملة من خلال الحدث؛
  • دعم معالجة رسوم الغاز المرنة، لضمان حساب تكلفة المعاملة بدقة عند دفع التعويض.

checkContractSignatures & checkNSignatures دالة للتحقق من بيانات توقيع المعاملات أو الرسائل:

  • معالجة توقيع حساب EOA، توقيع العقد ( EIP-1271)، وأيضًا تجزئة الموافقة المسبقة؛
  • تأكد من ترتيب التوقيعات وفقًا لترتيب المالك، وأن كل توقيع يأتي من عنوان صالح، لمنع هجمات إعادة التشغيل وتعديل التوقيع.

تستخدم دالة getTransactionHash لتوليد تجزئة المعاملة، والتي تُستخدم للتحقق من التوقيع ومنع هجمات إعادة التشغيل:

  • استخدام معيار EIP-712 لهيكلة تجزئة بيانات المعاملات؛
  • استخدام التجميع الداخلي لتحسين عمليات الذاكرة وزيادة كفاءة الحساب؛
  • دمج قيمة nonce الحالية لضمان فريدة كل معاملة.

تعالج دالة handlePayment دفع تعويضات الغاز أثناء تنفيذ عملية المعاملة:

  • يتم حساب مبلغ الدفع بناءً على تكاليف الغاز الفعلية والرسوم الأساسية؛
  • دعم الدفع بـ ETH وغيرها من الرموز، لضمان تعويض الرسوم بدقة.

onBeforeExecTransaction هو دالة خطاف افتراضي داخلي يتم استدعاؤها قبل تنفيذ دالة execTransaction. تم تصميم هذه الدالة للسماح للعقود الفرعية التي ترث عقد Safe بمعالجة منطق مخصص قبل تنفيذ المعاملة. تتضمن مجموعة المعلمات المستلمة:

  • إلى:عنوان الهدف - عنوان العقد أو الحساب الذي سيتم استدعاؤه في المعاملة
  • القيمة: قيمة الإيثيريوم - عدد الإيثيريوم المرسل مع الصفقة
  • data:حمولة البيانات - تحتوي على بيانات استدعاء بما في ذلك محدد الدالة والمعلمات
  • operation:نوع العملية - تحديد ما إذا كانت CALL أو DELEGateCALL
  • safeTxGas: حد الغاز للمعاملات - كمية الغاز المخصصة لتنفيذ المعاملة
  • baseGas:تكلفة الغاز الأساسية - تكلفة الغاز المستقلة عن تنفيذ المعاملة
  • gasPrice:سعر الغاز - يستخدم لحساب تعويض رسوم المعاملات
  • gasToken:رمز الغاز - عنوان الرمز المستخدم لدفع رسوم المعاملات
  • refundReceiver: المستلم المسترد - عنوان استلام تعويض رسوم المعاملة
  • signatures:مجموعة التوقيعات - بيانات توقيع المالك على الصفقة

على الرغم من أن عقود المحفظة المتعددة التوقيعات تقدم حلاً فعالًا وآمنًا لإدارة الأصول الرقمية بفضل تصميمها الآمن الصارم وبنيتها المعيارية المرنة، مما يحقق السيطرة الكاملة على أمان العملية من بدء المعاملات إلى التنفيذ النهائي، ويصبح أداة مهمة لإدارة أمان blockchain، يجب أن نلاحظ أيضًا أن الضحايا يعتمدون إلى حد كبير على محافظ الأجهزة لتوقيع المعاملات، بينما بعض أجهزة الأجهزة تعرض بيانات التوقيع الهيكلية بشكل غير جيد، مما يسهل على المستخدمين عدم التعرف بدقة على بيانات المعاملات في فترة زمنية قصيرة، مما يؤدي إلى خطر "التوقيع الأعمى". لمواجهة هذه الظاهرة، بالإضافة إلى تحسين الأجهزة وتأثير عرض بياناتها، يمكن استكشاف زيادة التأكيدات المتعددة، والتنبيهات الذكية، وتعزيز أدوات التحقق من التوقيع، لتقليل المخاطر الأمنية الناتجة عن التوقيع الأعمى.

! [الغوص العميق في المعضلة الآمنة: هل يمكن للحارس إعادة بناء برج بابل المضغوط؟] ](https://img-cdn.gateio.im/webp-social/moments-e4f0b0daf2f48ba716dc7fdddcfdabec.webp)

حماية آمنة

تم إدخال ميزة الأمان المهمة في إصدار 1.3.0 من Safe العقد - آلية Safe Guard. تهدف هذه الآلية إلى تقديم شروط تقييد إضافية لنموذج التوقيع المتعدد n-out-of-m القياسي، مما يعزز أمان المعاملات بشكل أكبر. تكمن القيمة الأساسية لـ Safe Guard في القدرة على إجراء فحوصات أمان في مراحل مختلفة من تنفيذ المعاملات:

  • تحقق من ( checkTransaction ) قبل التداول: يمكن لآلية Guard إجراء فحص برمجي لجميع معلمات الصفقة قبل تنفيذ الصفقة، لضمان امتثال الصفقة للقواعد الأمنية المحددة مسبقًا.
  • تحقق بعد المعاملة (checkAfterExecution): بعد اكتمال تنفيذ المعاملة، ستقوم Guard بإجراء تحقق أمني إضافي، للتحقق مما إذا كانت الحالة النهائية لمحفظة Safe بعد تنفيذ المعاملة تتوافق مع التوقعات.

تحليل الهيكل

في Safe، يتم تنفيذ معاملات متعددة التوقيع عادةً من خلال دالة execTransaction. في حالة تفعيل Safe Guard، عندما يقوم المستخدم بتنفيذ معاملة متعددة التوقيع، ستقوم عقدة Safe باستدعاء دالة checkTransaction لعقدة Guard لإجراء فحص قبل التنفيذ، وعندما يتم تنفيذ المعاملة المتعددة التوقيع، ستقوم عقدة Safe باستدعاء دالة checkAfterExecution لعقدة Guard للتحقق من نتيجة التنفيذ.

عند تنفيذ Safe العقد لعمليات التوقيع المتعددة من خلال آلية Guard، ستستقبل دالة checkTransaction بيانات سياق المعاملة الكاملة، بما في ذلك عنوان العقد المستهدف، طريقة الاستدعاء، بيانات التنفيذ (مثل deleGatecall)، معلومات توقيع المالك، تكوين Gas ومعلومات الدفع. تتيح هذه الآلية للمطورين تنفيذ استراتيجيات إدارة المخاطر متعددة الأبعاد، مثل التحكم في القائمة البيضاء للعقود (تقييد العناوين القابلة للتفاعل)، إدارة الأذونات على مستوى الوظائف (تعطيل محددات الوظائف عالية الخطورة)، تقييد تكرار المعاملات، بالإضافة إلى القواعد الديناميكية المستندة إلى تدفق الأموال. من خلال تكوين استراتيجيات Guard بشكل معقول، يمكن فعليًا منع المهاجمين من تنفيذ هجمات عبر طبقة غير عقدية.

في ظل الخلفية المستمرة للأحداث الأمنية التي تم الكشف عنها مؤخرًا، يزداد اهتمام جميع الأطراف بأمان عقود المحافظ متعددة التوقيع، حيث دعا مقدمو محافظ الأجهزة لتعزيز قدرة تحليل وحماية عقود Safe، لتجنب تكرار مثل هذه المخاطر. بعد حادثة في إحدى منصات التداول، بدأت العديد من المشاريع في التركيز على عقود Safe واستكشاف ترقيات وتوسعات قائمة على آلية Guard. ومن بين هذه المشاريع، هناك تطبيقات مبتكرة تعتمد على آلية Guard، لبناء حل أمان وسطي قائم على محافظ Safe متعددة التوقيع، مما يوفر ضمانًا إضافيًا للأمان بين الأصول الأساسية وأصول المستخدمين. وتكمن الوظيفة الأساسية لها في تنفيذ فحص دقيق للغاية للمعاملات من خلال تمرير العقود المستهدفة، وطرق الاستدعاء، وبيانات التنفيذ، ومعلومات توقيع المالك، ومعلومات الدفع، ومعلومات الغاز إلى دالة checkTransaction، بما في ذلك التحكم في الوصول إلى استدعاء العقود المدرجة في القائمة البيضاء، وعمليات الوظائف المدرجة في القائمة البيضاء، وأهداف التحويل المدرجة في القائمة البيضاء، وتكرار المعاملات.

من الجدير بالذكر أن Safe يوفر فقط إدارة Guard وميزات الاسترجاع، بينما يتم تنفيذ منطق فحص المعاملات متعددة التوقيع من قبل المستخدم نفسه، وتعتمد سلامته على جودة تنفيذ Guard. قامت بعض الحلول بتوسيع هذه الفكرة، من خلال تكوين Guardian مخصص لكل Vault لتحديد العناوين المسموح بها وأذونات العمليات، مما يحقق ثلاثة عناصر رئيسية للتحكم في الأذونات: تحديد العقود المسموح بها، تعريف وظائف العمليات المسموح بها ومتطلبات التحقق من ACL. في الوقت نفسه، يتم استخدام آلية حوكمة منفصلة، حيث يكون Vault Guardian مسؤولاً عن التنفيذ، بينما يتحكم Governor في صلاحيات الحوكمة، مما يضمن أنه حتى في حالة حدوث مشكلة مع Guardian، يمكن اتخاذ تدابير تصحيحية لحماية أصول المستخدمين في الوقت المناسب. تم تطبيق مفهوم التصميم المماثل أيضًا في وحدات الأمان لمشاريع أخرى، من خلال اعتراض العمليات الحاسمة، وبالاستفادة من آلية القائمة البيضاء للتحكم الدقيق في عمليات التثبيت، إعداد الخطافات وإدارة المدققين، مما يضمن أن العقود الموثوقة فقط يمكن إضافتها إلى النظام، مما يوفر ضمانًا دائمًا للأمان للمحفظة.

في سلسلة هجمات على منصة تداول معينة، إذا تم نشر عقد Safe بآلية Guard ذات تكوين معقول، فسيتم اعتراض المكالمات الخبيثة deleGatecall التي يطلقها المهاجم من خلال execTransaction في مرحلة الفحص بواسطة استراتيجيات متعددة: حيث يقوم دالة checkTransaction في Guard أولاً بالتعرف على نوع العملية deleGatecall ويقوم بتفعيل قواعد الحظر (مثل فرض تقييد operation ليكون مكالمة عادية فقط)، ثم يقوم بتحليل حقل data للكشف عن عنوان عقد غير تقليدي ومحددات دالة عالية المخاطر، ومن خلال قائمة العقود البيضاء المحددة مسبقًا واستراتيجية قائمة الدوال السوداء يتم التراجع عن الصفقة مباشرة، مما يشكل في النهاية نظام دفاع "اعتراض الاستراتيجية → عرقلة المنطق"، مما يمنع تمامًا تعديل التخزين ومسارات تحويل الأموال.

! [الغوص العميق في المعضلة الآمنة: هل يمكن للحارس إعادة بناء برج بابل المضغوط؟] ](https://img-cdn.gateio.im/webp-social/moments-4947f64f2aa4163ee644b6f8e911c6f8.webp)

بشكل عام، تقدم Safe ميزة Guard فقط بعد الإصدار 1.3.0، على الرغم من أن Guard يمكن أن يوفر فحصًا متعدد التوقيع بدقة عالية، إلا أن هناك عائقًا كبيرًا للمستخدمين عند استخدام ميزة Guard. يحتاجون إلى تنفيذ منطق فحص Guard بأنفسهم، وقد لا تساعد تطبيقات Guard البدائية أو المعيبة المستخدمين في تعزيز أمان محفظة Safe الخاصة بهم، لذا فإن إجراء تدقيق أمني على تنفيذ Guard أمر ضروري. لا شك أن تنفيذ Guard بشكل آمن ومناسب يمكن أن يعزز بشكل كبير من أمان محفظة Safe.

الخاتمة والتطلعات

أبرزت حادثة الهجوم على منصة تداول أهمية تحديث البنية التحتية الأمنية على الفور، حيث كانت المنصة تستخدم إصدار Safe 1.1.1 (<1.3.0)، مما يعني أنهم لم يتمكنوا من استخدام ميزة الأمان الأساسية المعروفة باسم Guard. إذا قامت المنصة بالترقية إلى إصدار Safe 1.3.0 أو أعلى، وطبقت آلية Guard المناسبة، مثل تحديد عنوان قائمة بيضاء فريد لاستقبال الأموال، وإجراء تحقق صارم من ACL لوظائف العقود، فقد تتمكن من تجنب هذه الخسارة. على الرغم من أن هذا مجرد افتراض، إلا أنه يوفر أفكارًا مهمة لإدارة أمان الأصول في المستقبل.

آلية Safe Guard تشبه نظام الأمن الذكي المثبت على خزينة الأصول الرقمية، وتعتمد فعاليتها على دقة تصميم القواعد وجودة التنفيذ.面对日益精密的攻击手段,我们需要:

  • التحقق الآلي: إنشاء آلية تحقق تجارية آلية
  • تعديل السياسات الديناميكية: تعديل استراتيجيات الأمان في الوقت الحقيقي بناءً على معلومات التهديد
  • دفاع متعدد الطبقات: بناء نظام دفاعي عميق يجمع بين آليات الأمان المتنوعة
  • تدقيق مستمر: إجراء تدقيق أمني دوري لتنفيذ Guard

إدارة الأصول الرقمية في المستقبل ستكون ذكية

SAFE-2.84%
شاهد النسخة الأصلية
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
  • أعجبني
  • 4
  • مشاركة
تعليق
0/400
MetaverseLandlordvip
· 07-09 09:40
تم اختراق Safe مرة أخرى؟ لا أفهم.
شاهد النسخة الأصليةرد0
MEVictimvip
· 07-09 09:39
آه، هذه الأمان مجرد نكتة فقط.
شاهد النسخة الأصليةرد0
MechanicalMartelvip
· 07-09 09:39
又一个 العقود الذكية挖洞神🤔
شاهد النسخة الأصليةرد0
SchrodingerWalletvip
· 07-09 09:26
خداع الناس لتحقيق الربح لعدة سنوات وما زال يعبث بلا هدف
شاهد النسخة الأصليةرد0
  • تثبيت