سال ۲۰۲۵ سالی بود پر از سوء استفادههای قرارداد هوشمند. پروتکلهایی که چندین حسابرسی را پشت سر گذاشته بودند، پروتکلهایی که سالها مورد آزمایش قرار گرفته بودند، پروتکلهایی که توسط تیمهایی با تخصص عمیق امنیتی ساخته شده بودند. همه آنها قربانی حملاتی شدند که چیزی ناراحتکننده را آشکار کرد: ما در یافتن باگهای سنتی بهتر شدهایم، اما هنوز نقصهای اساسی در نحوه تفکر پروتکلها درباره اقتصاد، ریاضیات و طراحی سیستم را از دست میدهیم.
این بررسی گذشتهنگر، جالبترین حوادث فنی سال را بررسی میکند، که بر اساس آنچه درباره امنیت قرارداد هوشمند به ما میآموزند، مرتب شدهاند. ما بررسی خواهیم کرد که چگونه نقض تغییرناپذیری اقتصادی به مهاجمان اجازه ضرب توکنهای نامحدود را داد، چگونه خطاهای دقت در ریاضیات بازارساز خودکار اشتباهات کوچک رند کردن را به سوء استفادههای میلیون دلاری تبدیل کرد، و چگونه شکستهای مرزی سیستم آسیبپذیریهایی را آشکار کردند که هیچ حسابرسی تکمؤلفهای نمیتوانست آنها را شناسایی کند.
این هکها مسائل اساسی در طراحی پروتکل را آشکار میکنند، شکستهایی که فراتر از اشتباهات ساده هستند و به فرضیات اصلی درباره نحوه کارکرد سیستمهای دیفای مربوط میشوند.
دسامبر ۲۰۲۵
Yearn Finance در دسامبر ۲۰۲۵ دچار دو سوء استفاده مرتبط شد که هر دو زیرساخت قدیمی را هدف قرار دادند که پس از ارتقای پروتکل روی زنجیره باقی مانده بود.
سوء استفاده اول: نقض تغییرناپذیری اقتصادی (۹ میلیون دلار) — اول دسامبر
استخر yETH stableswap قدیمی Yearn Finance در یک تراکنش تخلیه شد. مهاجم نقصی در منطق محاسبه سهام پیدا کرد که امکان ضرب تعداد تقریباً نامحدودی از توکنهای yETH را فراهم کرد. حدود ۱٬۰۰۰ ETH (به ارزش حدود ۳ میلیون دلار) به Tornado Cash ارسال شد.
مهاجم یک مورد استثنایی در فرمولهای stableswap پیدا کرد که در آن محاسبات سهام قابل دستکاری بودند. آسیبپذیری در خود منطق حسابداری وجود داشت. وقتی پروتکل سهام را برای واریزها یا برداشتها محاسبه میکرد، ریاضیات میتوانست دستکاری شود تا سهام از هیچ ایجاد شود.
سوء استفاده دوم: ریسک قرارداد قدیمی (۳۰۰ هزار دلار) — هفدهم دسامبر
پس از سوء استفاده اول، قراردادهای V1 Yearn هدف قرار گرفتند. وقتی پروتکلها ارتقا مییابند، قراردادهای قدیمی ناپدید نمیشوند. آنها روی زنجیره باقی میمانند و به طور بالقوه ارزش نگه میدارند. در مورد Yearn، قراردادهای V1 هنوز وجوهی در خود قفل شده داشتند و این وجوه پس از اینکه سوء استفاده اول توجه را به زیرساخت قدیمی Yearn جلب کرد، هدف قرار گرفتند.
چرا اهمیت دارد (دیدگاه حسابرس و سازمانی):
سوء استفاده اول یک شکاف مهم در روششناسی حسابرسی را نشان میدهد. ابزارهای تحلیل ایستا تغییرناپذیریهای اقتصادی را تأیید نمیکنند. Fuzzers مسیرهای کد را آزمایش میکنند، نه مدلهای اقتصادی. فرآیندهای حسابرسی باید به وضوح تأیید کنند که منطق حسابداری تغییرناپذیریهای مورد نظر را در تمام توالیهای عملیاتی حفظ میکند.
سوء استفاده دوم برجسته میکند که قراردادهای قدیمی ریسک مداوم را نشان میدهند. سوء استفاده اول ممکن است توجه را به زیرساخت قدیمی Yearn جلب کرده و منجر به سوء استفاده دوم شده باشد. پروتکلها به برنامههای روشنی برای متوقف کردن قراردادهای قدیمی، انتقال ارزش باقیمانده و نظارت بر تعاملات غیرمنتظره نیاز دارند.
کاهش: تستهای تغییرناپذیری را اجرا کنید که تأیید میکنند روابط سهام به ارزش در تمام عملیاتها حفظ میشود. از فازینگ افتراقی برای مقایسه محاسبات حسابداری با پیادهسازیهای مرجع استفاده کنید. استراتژیهای واضح منسوخ سازی برای قراردادهای قدیمی با نظارت مداوم داشته باشید.
دسته آسیبپذیری: نقض تغییرناپذیری اقتصادی و ریسک قرارداد قدیمی.
بررسی عمیق: Yearn Finance DeFi Project Hacked for $9M | PeckShield Alert | Yearn Finance V1 Exploit
سوم نوامبر ۲۰۲۵
خطاهای کوچک رند کردن در محاسبات استخر پایدار Balancer از طریق معاوضههای دستهای با فرکانس بالا تقویت شدند و منجر به تخلیه ۷۰ تا ۱۲۸ میلیون دلاری در چندین زنجیره شدند. مهاجمان صدها یا هزاران معاوضه را اجرا کردند که هر معاوضه خطای رند کردن قبلی را تقویت میکرد تا زمانی که این خطاهای کوچک به استخراج ارزش عظیم تبدیل شدند.
چگونه کار کرد:
استخرهای پایدار Balancer از فرمولهای پیچیدهای برای حفظ ثبات قیمت استفاده میکنند. این فرمولها شامل رند کردن در مراحل متعدد هستند. در عملیات عادی، خطاهای رند کردن کوچک هستند. اما مهاجمان راهی پیدا کردند تا معاوضههای دستهای را به گونهای ساختار دهند که به طور مداوم از جهت رند کردن بهرهمند شوند و از طریق عملیاتهای تکراری ارزش استخراج کنند.
چرا اهمیت دارد (دیدگاه طراح پروتکل):
ریاضیات بازارساز خودکار باید در شرایط خصمانه صحیح باشد. هر تصمیم رند کردن هنگام برخورد با سرمایه بزرگ و توانایی اجرای سریع بسیاری از تراکنشها به یک بردار حمله بالقوه تبدیل میشود. طراحان باید به صورت خصمانه فکر کنند: اگر یک مهاجم این عملیات را هزار بار اجرا کند چه اتفاقی میافتد؟
آنچه حسابرسیها از دست دادند: فرآیندهای استاندارد حسابرسی معاوضههای فردی را آزمایش کردند، نه توالیهای صدها یا هزاران معاوضه. خطاهای رند کردن کمتر از ۱ wei به ازای هر معاوضه اندازهگیری شدند و ناچیز در نظر گرفته شدند. هیچ تغییرناپذیری بر روی N عملیات تکراری تأیید نشد. Fuzzers بدون مدلسازی توالی حالتمند نمیتوانستند این را کشف کنند.
کاهش: تغییرناپذیریهایی را تأیید کنید که در عملیاتهای تکراری حفظ میشوند. با اندازههای دستهای خصمانه آزمایش کنید. از تأیید رسمی برای اثبات اینکه محدودههای خطای رند کردن تحت هر توالی از عملیاتها قابل قبول باقی میمانند، استفاده کنید.
دسته آسیبپذیری: خطای دقت ریاضی در فرمولهای بازارساز خودکار.
بررسی عمیق: Balancer DeFi Protocol Suffers Massive Exploit | Balancer Hack Explained with Multi-Chain Details
نهم ژوئیه ۲۰۲۵
GMX، یک پروتکل معاملات دائمی که میلیاردها حجم معاملات را مدیریت میکند، به میزان ۴۲ میلیون دلار مورد سوء استفاده قرار گرفت. سوء استفاده از یک باگ در منطق اصلی معاملات نیامد. در مرزهای بین مؤلفهها ظاهر شد: جایی که اوراکلها با محاسبات مارجین ملاقات میکنند، جایی که منطق لیکوییداسیون با زیرساخت پل تعامل میکند.
چگونه کار کرد:
آسیبپذیری در نحوه تعامل این مؤلفهها وجود داشت، نه در هر مؤلفه منفرد. وقتی اوراکلها قیمتها را بهروزرسانی میکنند، الزامات مارجین تغییر میکند و منطق لیکوییداسیون پاسخ میدهد. مهاجم احتمالاً راهی برای دستکاری این تعاملات پیدا کرد، شاید با زمانبندی بهروزرسانیهای اوراکل با محاسبات مارجین. حدود ۹.۶ میلیون دلار بلافاصله پس از سوء استفاده به اتریوم منتقل شد که نشاندهنده برنامهریزی دقیق است.
چرا اهمیت دارد (دیدگاه معماری سیستم):
مؤلفههای منفرد که به خوبی ممیزی شدهاند، هنوز هم میتوانند هنگام یکپارچهسازی شکست بخورند. آسیبپذیری در هیچ قرارداد منفردی وجود ندارد. در فضای بین مؤلفهها، در نحوه ارتباط و تعامل آنها وجود دارد. همانطور که پروتکلها پیچیدهتر و قابل ترکیبتر میشوند، سطح حمله در مرزهای مؤلفه رشد میکند.
آنچه حسابرسیها از دست دادند: فرآیندهای سنتی حسابرسی معمولاً به شدت بر مؤلفهها به صورت جداگانه تمرکز میکنند. تست یکپارچهسازی وجود دارد، اما ممکن است سناریوهای خصمانه را پوشش ندهد که در آن مهاجم میتواند عملیاتها را در مرزهای مؤلفه زمانبندی کند.
کاهش: تستهای یکپارچهسازی را پیادهسازی کنید که رفتار کامل سیستم را شبیهسازی میکنند. از چارچوبهای شبیهسازی خصمانه استفاده کنید که میتوانند تعاملات بین مؤلفهها را مدل کنند. حملات زمانبندی را آزمایش کنید که در آن عملیاتها برای بهرهبرداری از تعاملات مؤلفه توالی مییابند.
دسته آسیبپذیری: شکست یکپارچهسازی سیستم.
بررسی عمیق: GMX Exploit Coverage
بیست و هشتم می ۲۰۲۵
Cork Protocol حدود ۳٬۷۶۱ wstETH (به ارزش حدود ۱۲ میلیون دلار) را به دلیل آسیبپذیری در نحوه مدیریت مشتقات استیکینگ نقدینه از دست داد. مشتقات استیکینگ نقدینه مانند stETH، wstETH و osETH تغییرات حالت پنهان را معرفی میکنند. نرخ مبادله بین wstETH و ETH در طول زمان با تجمع پاداشهای استیکینگ تغییر میکند.
چگونه کار کرد:
سوء استفاده شامل عدم تطابق بین نحوه مدلسازی تعهد ارزش wstETH توسط Cork Protocol و نحوه واقعی کارکرد آن بود. پروتکل احتمالاً یک رابطه ایستای ۱:۱ را فرض کرد که برقرار نیست. یک مهاجم میتوانست wstETH را زمانی که نرخ مبادله مطلوب است واریز کند، منتظر بماند تا ارزش تعلق بگیرد، سپس بیش از آنچه باید بتواند برداشت کند.
چرا اهمیت دارد (دیدگاه سازمانی):
این یک شکاف دانش سازمانی را برجسته میکند. بسیاری از تیمهای توسعه با همه توکنهای ERC-20 به یک روش رفتار میکنند، اما مشتقات استیکینگ نقدینه متفاوت عمل میکنند. این فقط یک مشکل کد نیست. این یک مشکل مدیریت دانش است. تیمها به فرآیندهایی برای شناسایی و مستندسازی رفتارهای خاص توکن قبل از یکپارچهسازی نیاز دارند.
کاهش: همیشه از توابع نرخ مبادله توکن استفاده کنید (مثلاً wstETH.getStETHByWstETH()). هرگز یک رابطه ۱:۱ را فرض نکنید. تعلق ارزش را در طول زمان در هر محاسبهای که شامل LSDs است، در نظر بگیرید.
دسته آسیبپذیری: سوء تفاهم از مکانیزم توکن.
بررسی عمیق: Cork Protocol Hacked for $12M, Smart Contracts Paused
این هکها درسهای محدودتر اما همچنان آموزندهای درباره دستههای خاص آسیبپذیری آشکار میکنند.
دوم سپتامبر ۲۰۲۵
Bunni، یک پروتکل نقدینگی متمرکز، از طریق یک باگ دقت/رند کردن در سیستم حسابداری LP خود مورد سوء استفاده قرار گرفت. ضرر دقیق بر اساس منبع متفاوت است (۲.۴ میلیون دلار در ابتدا گزارش شد، تحلیلهای بعدی تا ۸.۳ میلیون دلار را پیشنهاد میکنند).
چگونه کار کرد:
مهاجم راهی پیدا کرد تا واریزها و برداشتهای تکراری انجام دهد که رند کردن را به نفع خود مورد سوء استفاده قرار دهد. هر عملیات مقدار کمی را استخراج کرد، اما در بسیاری از عملیات، آن مقادیر کوچک به میلیونها دلار تبدیل شدند.
چرا اهمیت دارد (دیدگاه روششناسی تست):
بیشتر مجموعههای تست عملیات منفرد را مدل میکنند، نه توالیهای عملیاتی. یک تست ممکن است تأیید کند که یک واریز منفرد سهام را به درستی محاسبه میکند، اما خطاهای دقتی را که فقط پس از دهها عملیات ظاهر میشوند، نخواهد گرفت. Fuzzers که توالیهای حالتمند را مدل نمیکنند، این مسائل را از دست میدهند.
کاهش: از کتابخانههای ریاضی مستقر استفاده کنید (مثلاً PRBMath، ABDKMath). توالیهای عملیات را آزمایش کنید، نه فقط عملیات منفرد. استفاده از دقت بالاتر در داخل را در نظر بگیرید حتی اگر رابطهای خارجی از دقت استاندارد استفاده کنند.
دسته آسیبپذیری: خطای دقت/رند کردن در حسابداری LP.
بررسی عمیق: Bunni V2 Exploit: $8.3M Drained
سیام اکتبر ۲۰۲۵
Garden Finance برای ۵.۵ میلیون دلار به علاوه در چندین زنجیره مورد سوء استفاده قرار گرفت. مهاجم در یک زنجیره سوء استفاده کرد، سپس از پل میان زنجیره ای برای انتقال داراییهای سرقت شده به زنجیرههای دیگر استفاده کرد و آنها را از طریق DEXهای مختلف مبادله کرد تا مسیر را مبهم کند.
چرا اهمیت دارد (دیدگاه مدلسازی تهدید):
استقرارهای چند زنجیرهای سطوح حمله جدیدی ایجاد میکنند. مدلهای تهدید باید بردارهای حمله میان زنجیره ای را در نظر بگیرند. مهاجمان ممکن است از پروتکل شما در یک زنجیره سوء استفاده کنند، سپس از زیرساخت میان زنجیره ای برای فرار یا مبهم کردن ردپای خود استفاده کنند.
کاهش: مدلهای تهدید را طراحی کنید که شامل بردارهای حمله میان زنجیره ای باشد. نحوه کار پلها و فرضیات امنیتی آنها را درک کنید. پیادهسازی نظارت و هشدار میان زنجیره ای را در نظر بگیرید.
دسته آسیبپذیری: الگوی حمله چند زنجیرهای.
بررسی عمیق: Garden Finance Breach Coverage
هشتم سپتامبر ۲۰۲۵
Nemo Protocol روی Sui برای ۲.۴ میلیون دلار مورد سوء استفاده قرار گرفت. مهاجم USDC سرقت شده را از طریق Circle از Arbitrum به اتریوم منتقل کرد. سوء استفاده علیرغم ویژگیهای امنیتی Move اتفاق افتاد.
چرا اهمیت دارد (دیدگاه ابزار):
سیستم نوع Move از باگهای خاصی جلوگیری میکند، اما کل دستهای از آسیبپذیریهای سطح پروتکل را پوشش نمیدهد. اگر منطق اقتصادی پروتکل شما معیوب باشد، اگر کنترل دسترسی شما ضعیف باشد، اگر یکپارچهسازی اوراکل شما آسیبپذیر باشد، سیستم نوع Move کمکی نمیکند.
دسته آسیبپذیری: خطای منطق اقتصادی در اکوسیستم غیر EVM.
بررسی عمیق: Nemo Protocol Exploit Details
چندین هک دیگر در سال ۲۰۲۵ نشاندهنده شکستهای عملیاتی ساده به جای آسیبپذیریهای فنی جدید هستند:
این حوادث از الگوهای شناخته شده پیروی میکنند: کلیدهای مدیر به خطر افتاده، تأییدیههای توکن بیش از حد و شکستهای کنترل دسترسی. راهحلها شناخته شده هستند: از multisig برای توابع مدیر استفاده کنید، کنترلهای دسترسی مناسب را پیادهسازی کنید، برای تأییدیههای بیش از حد نظارت کنید.
با نگاهی به هکهای سال ۲۰۲۵، چندین الگو ظاهر میشود. صحت اقتصادی به اندازه امنیت کد مهم است. ضرب نامحدود Yearn و خطاهای رند کردن Balancer نشان میدهند که پروتکلها به تأیید رسمی مدلهای اقتصادی خود نیاز دارند، نه فقط حسابرسی کد. مرزهای سیستم پیچیدگی را پنهان میکنند. سوء استفاده GMX نشان میدهد که مؤلفههای به خوبی ممیزی شده همچنان میتوانند هنگام یکپارچهسازی شکست بخورند. تست یکپارچهسازی و شبیهسازی خصمانه ضروری هستند.
دقت و رند کردن همچنان خطرناک باقی میمانند. سوء استفاده Bunni یادآوری است که آسیبپذیریهای محاسبات اعشاری ثابت همچنان وجود دارند. توالیهای عملیاتی را آزمایش کنید، نه فقط عملیات منفرد. فناوری میان زنجیره ای سطوح حمله جدیدی ایجاد میکند. Garden Finance و Nemo Protocol نشان میدهند که استقرارهای چند زنجیرهای به مدلهای امنیتی نیاز دارند که بردارهای حمله میان زنجیره ای را در نظر بگیرند. امنیت زبان باگهای اقتصادی را از بین نمیبرد. Nemo Protocol نشان میدهد که زبانهای نوع امن از باگهای خاصی جلوگیری میکنند اما خطاهای منطق اقتصادی را پوشش نمیدهند. قراردادهای قدیمی ریسکهای مداوم هستند. سوء استفادههای دسامبر Yearn نشان میدهند که قراردادهای منسوخ شده همچنان آسیبپذیر باقی میمانند و یک سوء استفاده میتواند توجه را به زیرساخت قدیمی جلب کند. استراتژیهای واضح منسوخ سازی و نظارت مداوم داشته باشید.
Audited, Tested, and Still Broken: Smart Contract Hacks of 2025 در ابتدا در Coinmonks در Medium منتشر شد، جایی که مردم با برجسته کردن و پاسخ دادن به این داستان به گفتگو ادامه میدهند.


