SharkTeam: تحليل هجوم KyberSwap

星球日报

في 23 نوفمبر 2023 ، تم اختراق KyberSwap على شبكات متعددة مثل Ethereum و Arbitrum بسبب التلاعب بالقراد والعد المزدوج للسيولة ، وحقق المهاجمون ربحا يبلغ حوالي 48 مليون دولار.

SharkTeam:KyberSwap攻击事件原理分析

أجرت SharkTeam تحليلا فنيا لهذا الحادث لأول مرة ، ولخصت الاحتياطات الأمنية ، على أمل أن تأخذ مشاريع المتابعة هذا كتحذير وبناء خط دفاع أمني مشترك لصناعة blockchain.

I. تحليل معاملات الهجوم

هذا الهجوم أكثر تعقيدا وتنفيذ الهجوم أكثر إبداعا ، لذلك نختار إحدى معاملات الهجوم للتحليل والشرح المفصل.

تداول الهجوم:

0x09a3a12d58b0bb80e33e3fb8e282728551dc430c65d1e520fe0009ec519d75e8

عنوان المهاجم:

0x50275E0B7261559cE1644014d4b78D4AA63BE836

عقد المهاجم:

0xaF2Acf3D4ab78e4c702256D214a3189A874CDC13

في هذه المعاملة ، أجرى المهاجم سلسلة من العمليات ضد 3 مجمعات سيولة مختلفة لاستنزاف المجمعات. اخترنا مجموعة لتحليل تدفق الهجوم ، والتي كانت موجودة بشكل مستقل عن بعضها البعض.

عملية الهجوم:

  1. اقترض المهاجم أولا 10،000 wstETH من خلال قرض فلاش ، ثم أضاف حوالي 2،998 wstETH إلى المجمع ، واستبدل حوالي 2،842 WETH.

SharkTeam:KyberSwap攻击事件原理分析

  1. في هذا الوقت ، تكون حالة التجزئة المقابلة في التجمع هي -110 ، 910 ، ويتغير سعر wstETH من 1.05 ETH إلى 0.000015257. في هذا الوقت ، تبلغ سيولة المجمع 0 ، مما يمهد الطريق لإنشاء سيولة زائفة ؛

SharkTeam:KyberSwap攻击事件原理分析

  1. يضيف المهاجم سيولة 3.4 wstETH ويزيل 0.56 wstETH في نطاق [0.000014659 ، 0.000015260].

SharkTeam:KyberSwap攻击事件原理分析 SharkTeam:KyberSwap攻击事件原理分析 SharkTeam:KyberSwap攻击事件原理分析

  1. بعد ذلك ، يقوم المهاجم بإجراء مبادلتين ، وهما WETH->wstETH ، wstETH-> WETH. بعد المبادلة الأولى ، تم دفع السعر لأسفل إلى 0.000014657 ، وهو أقل قليلا من 0.000014659. بعد المبادلة الثانية ، ارفع السعر إلى 0.000016368 ؛

SharkTeam:KyberSwap攻击事件原理分析 SharkTeam:KyberSwap攻击事件原理分析

  1. في البداية ، كان هناك حوالي 3 سيولة wstETH في المجمع (النعناع 3.4 wstETH - حرق 0.56 wstETH) ، والآن هناك حوالي (1،056 + 3،911) في المجمع ، وهو أكثر من الواضح ؛

  2. بعد الهجوم يعيد القرض الفلاش ، ويتم تحويل الأموال من عقد الهجوم

SharkTeam:KyberSwap攻击事件原理分析

2. تحليل سبب الثغرة الأمنية

السبب الجذري لهذا الهجوم: في وظيفة computeSwapStep ، هناك فقدان للدقة عند حساب القراد. نظرا لأنه يمكن التلاعب بالعلامة ، فإنها تتجاوز بنجاح الدالة _updateLiquidityAndCrossTick ، مما يسمح بزيادة السيولة بشكل متكرر.

  1. في المبادلة الأولى ، يستخدم المهاجم الدالة calcReachAmount لحساب مقدار wstETH ، وأخيرا يحسب 1،056.056735638220800000 ؛

SharkTeam:KyberSwap攻击事件原理分析 SharkTeam:KyberSwap攻击事件原理分析

  1. بعد استدعاء وظائف تقدير السيولة المتزايدة و calcFinalPrice ، فإن الرقم الذي تم تمريره هو 1،056.056735638220799999. بعد التقريب لأعلى ولأسفل ، تكون العلامة -111311 والعلامة السفلية -111310. لذلك ، باستخدام nextTick = currentTick + 1 واستخدام “!=” للحكم على معلمتي sqrtP ، يتم تجاوز الدالة _updateLiquidityAndCrossTick بنجاح ، ويتم تجنب تحديث السيولة.

SharkTeam:KyberSwap攻击事件原理分析 SharkTeam:KyberSwap攻击事件原理分析 SharkTeam:KyberSwap攻击事件原理分析

  1. في المبادلة الثانية ، تم استدعاء _updateLiquidityAndCrossTick ، مما زاد السيولة. نظرا لفقدان الدقة في حساب الكمية خلال المبادلة الأولى ، لا يتم تحديث السيولة وإزالتها ، مما يؤدي إلى وضع مزدوج عند حساب السيولة في المرة الثانية.

SharkTeam:KyberSwap攻击事件原理分析

III. توصيات السلامة

ردا على هذا الهجوم ، يجب على المطورين اتخاذ الإجراءات الأمنية التالية في تطورهم اليومي:

  1. انتبه إلى الحساب الصحيح للثوابت والمنطق الرياضي في العمل لتجنب فقدان الدقة.

  2. قبل إصدار المشروع ، من الضروري التعاون مع فريق تدقيق محترف تابع لجهة خارجية لإجراء تدقيق العقد.

من نحن

تتمثل رؤية SharkTeam في تأمين عالم Web3. يتكون الفريق من متخصصين أمنيين ذوي خبرة وكبار الباحثين من جميع أنحاء العالم ، وهم على دراية جيدة بالنظرية الأساسية ل blockchain والعقود الذكية. وهي توفر خدمات بما في ذلك تحليل البيانات الضخمة على السلسلة ، والتحذير من المخاطر على السلسلة ، وتدقيق العقود الذكية ، واسترداد الأصول المشفرة ، وما إلى ذلك ، وقد أنشأت ChainAegis ، وهي منصة لتحليل البيانات الضخمة والإنذار المبكر بالمخاطر على السلسلة ، والتي تدعم مستويات غير محدودة من تحليل الرسم البياني المتعمق ويمكنها مكافحة مخاطر التهديد المستمر المتقدم (APT) بشكل فعال في عالم Web3. لقد أقامت علاقات تعاون طويلة الأمد مع اللاعبين الرئيسيين في مختلف مجالات النظام البيئي Web3 ، مثل Polkadot و Moonbeam و Polygon و Sui و OKX و imToken و ChainIDE وما إلى ذلك.

الموقع الرسمي:

التغريد:

الخلاف:

برقية:

إخلاء المسؤولية: قد تكون المعلومات الواردة في هذه الصفحة من مصادر خارجية ولا تمثل آراء أو مواقف Gate. المحتوى المعروض في هذه الصفحة هو لأغراض مرجعية فقط ولا يشكّل أي نصيحة مالية أو استثمارية أو قانونية. لا تضمن Gate دقة أو اكتمال المعلومات، ولا تتحمّل أي مسؤولية عن أي خسائر ناتجة عن استخدام هذه المعلومات. تنطوي الاستثمارات في الأصول الافتراضية على مخاطر عالية وتخضع لتقلبات سعرية كبيرة. قد تخسر كامل رأس المال المستثمر. يرجى فهم المخاطر ذات الصلة فهمًا كاملًا واتخاذ قرارات مدروسة بناءً على وضعك المالي وقدرتك على تحمّل المخاطر. للتفاصيل، يرجى الرجوع إلى إخلاء المسؤولية.
تعليق
0/400
لا توجد تعليقات