طبق اعلام بنیاد XRP Ledger، یک آسیب‌پذیری که می‌توانست به مهاجم اجازه دهد توکن‌های ریپل (XRP) جدید را بدون پشتوانه و از هیچ ایجاد کند، بیش از یک دهه در این شبکه وجود داشت؛ بدون آنکه کسی متوجه آن شود.

دلیل اصلی این بود که فعالیت‌های عادی کاربران هیچ‌وقت شرایط لازم برای فعال‌شدن این باگ را ایجاد نمی‌کرد.

این آسیب‌پذیری که احتمالا از سال ۲۰۱۵ وجود داشته، در ۲۲ سپتامبر توسط پژوهشگر امنیتی، کیدن لیائو (Cayden Liao)، و شرکت Veria AI شناسایی و به‌صورت داخلی گزارش شد.

اهمیت ماجرا به یکی از اصول اساسی XRP برمی‌گردد:

عرضه این رمزارز نباید از ۱۰۰ میلیارد واحدی که هنگام راه‌اندازی شبکه در سال ۲۰۱۲ ایجاد شد، بیشتر شود.

طبق اعلام بنیاد، هیچ خسارتی رخ نداده و توکن جدیدی ساخته نشده است. شرکت RippleX نیز اصلاحیه این آسیب‌پذیری را منتشر کرد. در حال حاضر حدود ۹۹٫۹۸۶ میلیارد XRP در گردش است.

ریپل
شروع خریدوفروش ارز ریپل

خریدوفروش ریپل با واریز سریع تومان

خرید ریپل

این باگ چطور می‌توانست میلیاردها XRP بسازد؟

ریشه مشکل، نوعی آسیب‌پذیری به نام «سرریز عدد صحیح» (Integer Overflow) بود. برای درک ساده آن، تصور کنید شمارنده امتیاز یک بازی قدیمی به حداکثر مقدار قابل‌نمایش برسد و ناگهان به صفر برگردد.

در شبکه XRP نیز اگر اندازه یک تراکنش از حداکثر عدد قابل‌پشتیبانی سیستم عبور می‌کرد، مقدار محاسبه‌شده به عدد بسیار کوچکی تبدیل می‌شد.

این خطا می‌توانست باعث شود که فروشنده کل مبلغ XRP را دریافت می‌کرد، اما خریدار تقریبا هیچ هزینه‌ای نمی‌پرداخت.

در نتیجه، تفاوت میان مبلغی که به فروشنده اعتبار داده می‌شد و هزینه‌ای که از خریدار دریافت می‌شد، عملا به XRP جدید تبدیل می‌شد.

سناریوی حمله چگونه بود؟

مهاجم می‌توانست چندین حساب ساختگی ایجاد کند و از طریق آن‌ها، فروش‌های جعلی با مبالغ نجومی XRP ثبت کند.

سپس خودش در نقش خریدار وارد می‌شد و همه توکن‌های عرضه‌شده را یکجا می‌خرید.

به‌دلیل خطای محاسباتی، شبکه می‌توانست میلیاردها XRP معتبر به حساب‌های فروشنده واریز کند، درحالی‌که هزینه خرید را تنها کسری از یک سنت محاسبه می‌کرد.

مهاجم در چنین سناریویی می‌توانست XRPهای ایجادشده را به دست آورد و در صرافی‌های خارجی به فروش برساند. به این ترتیب، باگی در محاسبات شبکه می‌توانست اصل محدودبودن عرضه XRP را نقض کند.

چرا این آسیب‌پذیری ۱۱ سال شناسایی نشد؟

به گفته بنیاد XRP Ledger، دلیل اصلی این بود که فعال‌کردن باگ به مجموعه‌ای بسیار بزرگ و غیرعادی از عملیات نیاز داشت.

تراکنش‌های عادی کاربران حتی به شرایط لازم برای فعال‌شدن آن نزدیک هم نمی‌شدند.

این اتفاق نشان می‌دهد حتی در شبکه‌ای که محدودیت عرضه یکی از اصول بنیادی طراحی آن است، یک خطای محاسباتی می‌تواند همان اصل را تهدید کند؛ بدون آنکه در استفاده روزمره کاربران نشانه‌ای از مشکل دیده شود.

1.1 12 دلیل مخفی شدن باگ 15 ساله‌ی ریپل چه بود؟
نمودار هفتگی قیمت ریپل

در لحظه نگارش این خبر قیمت ریپل در حوالی 1.4 دلار در نوسان است و اتفاقات اخیر تاثیر چندانی روی آن نداشته است.

پرسش مهم این است: اگر چنین آسیب‌پذیری‌ای بیش از یک دهه در شبکه باقی مانده باشد، چه تضمینی وجود دارد که محدودیت‌های بنیادی سایر بلاک چین‌ها نیز در برابر خطاهای ناشناخته نرم‌افزاری مصون باشند؟