XRP Ledger آسیبپذیری ساخت توکن غیرمجاز را برطرف کرد
دفتر کل XRP با فعالسازی اصلاحیه fixCleanup3_4_0 در ۴ نوامبر، نقصی را بست که میتوانست در شرایطی به حسابهای دارای مجوز PaymentBurn اجازه ایجاد توکنهای صادرشده بدهد.

خلاصه محتوا
- •اصلاحیه fixCleanup3_4_0 در ۴ نوامبر ساعت ۱۴:۵۲ UTC در لجر ۱۰۸,۱۱۲,۱۲۹ فعال شد.
- •نقص در مجوز PaymentBurn میتوانست در تراکنشهای عبورکننده از مرز موجودی صفر، امکان ایجاد توکن صادرشده را در کنار امکان سوزاندن آن فراهم کند.
- •فعالسازی پس از وقفه ۲۱ اکتبر و آغاز دوباره دوره ۱۴ روزه انجام شد؛ اصلاحات استخر معاملاتی، حسابداری Vault و امضای تراکنش نیز اعمال شد، اما سیستم وامدهی فعال نشد.
دفتر کل ریپل روز ۴ نوامبر ساعت ۱۴:۵۲ UTC اصلاحیه fixCleanup3_4_0 را در لجر ۱۰۸,۱۱۲,۱۲۹ فعال کرد. رهگیر اصلاحیه XRPLWin این فعالسازی را تأیید کرده است. این اقدام پس از دو هفته متوالی حمایت ولیدیتورها انجام شد؛ حمایتی که پیشتر در اکتبر با وقفهای کوتاه روبهرو شده و فرایند تأیید را از نو آغاز کرده بود.
آسیبپذیری PaymentBurn چه بود؟
این اصلاح یک نقص در سیستم واگذاری مجوز XRP Ledger را هدف گرفته است؛ سیستمی که به صاحبان حساب اجازه میدهد بدون واگذاری کنترل کامل، به حسابهای دیگر برای انجام تراکنشهای مشخص اختیار بدهند. آسیبپذیری به مجوز واگذارشده PaymentBurn مربوط میشد که به حساب تأییدشده اجازه میدهد توکنهای صادرشده توسط حساب دیگر را از بین ببرد.
در حالت عادی، یک صادرکننده میتواند این مجوز را به سرویس پرداختی بدهد که بازخرید استیبلکوین را انجام میدهد؛ سرویس هنگام تبدیل استیبلکوین مشتری به دلار میتواند توکنهای بازخریدشده را بسوزاند، بدون آنکه اجازه ایجاد توکن جایگزین داشته باشد. اما قواعد پیشین تراکنش در XRP Ledger میتوانست در برخی شرایط به حسابی که فقط مجوز PaymentBurn دارد امکان ایجاد توکنهای صادرشده بدهد.
مشکل زمانی رخ میداد که پرداختهای انجامشده با مجوز واگذارشده از مرز موجودی صفر عبور میکردند. اصلاحیه جدید اجازه عبور تراکنشها از این مرز را نمیدهد و بدین ترتیب سوزاندن توکن را از ایجاد آن جدا میکند. یادداشتهای رسمی انتشار XRPL این اصلاح را رد تراکنشهای PaymentBurn که از موجودی صفر عبور میکنند توصیف کردهاند.
این آسیبپذیری داراییهای صادرشده روی شبکه، از جمله استیبلکوینها، توکنهای مبتنی بر خط اعتماد (trust-line tokens) و توکنهای چندمنظوره (Multi-Purpose Tokens) را درگیر میکرد. خود XRP خارج از این سیستم مجوز بود؛ بنابراین نقص یادشده امکان ایجاد غیرمجاز ارز بومی شبکه را فراهم نمیکرد. هیچ سوءاستفاده عمومی تأییدشدهای از این آسیبپذیری گزارش نشده و افشاگریهای موجود نیز صادرکنندهای را که دچار ایجاد غیرمجاز توکن شده باشد مشخص نکردهاند.
چرا فعالسازی به نوامبر موکول شد؟
توسعهدهندگان این اصلاح را در سپتامبر در نسخه ۳.۴.۰ نرمافزار سرور XRP Ledger گنجانده بودند، اما انتشار نرمافزار بلافاصله قواعد تراکنش شبکه را تغییر نمیدهد. اصلاحیههای پروتکل باید بیش از ۸۰٪ از ولیدیتورهای مورد اعتماد را برای ۱۴ روز متوالی همراه خود داشته باشند. با ۳۵ ولیدیتور در فهرست پیشفرض رصدشده، حداقل ۲۹ ولیدیتور باید در تمام این دوره از اصلاحیه حمایت میکردند.
نخستین دوره تأیید در ۹ اکتبر آغاز شد و قرار بود فعالسازی حدود ۲۳ اکتبر انجام شود. اما حمایت ولیدیتورها در ۲۱ اکتبر به زیر آستانه لازم افتاد و شمارش معکوس پیش از واجد شرایط شدن اصلاحیه قطع شد. دادههای XRPLWin نشان میدهد تلاش اول ۱۲ روز و سه ساعت طول کشید. بعداً در همان روز ۲۱ اکتبر اکثریت تازهای شکل گرفت و دوره انتظار دو هفتهای دیگری آغاز شد. تلاش دوم ۱۴ روز و پنج دقیقه طول کشید تا شبکه اصلاحیه را در ۴ نوامبر فعال کرد.
اصلاحات دیگر و وضعیت وامدهی
فراتر از نقص ایجاد توکن، fixCleanup3_4_0 اصلاحاتی در چند کارکرد تراکنشی XRP Ledger اعمال میکند. یکی از آنها تغییر در بازپسگیری (clawback) بازارساز خودکار (AMM) است که صادرکنندگان برای بازیابی برخی داراییها از استخرهای نقدینگی به کار میبرند. بهروزرسانی مانع از آن میشود که یک تراکنش در محاسبات گرد کردن، توکنهای تأمینکننده نقدینگی را نابود کند و در همان حال صادرکننده هیچ دارایی پایهای بازیابی نکند.
توسعهدهندگان قواعد معاملات مجوزدار را نیز اصلاح کردهاند تا حسابها نتوانند از طریق پیشنهادها توکنهایی را دریافت کنند که محدودیتهای صادرکننده باید مانعشان شود. تغییرات جداگانهای هم به ذخایر اسکرو، مجوز توکنهای چندمنظوره و امضای تراکنشها مربوط میشود. پیشتر برخی رویههای امضا از ساختارهای مجوز همپوشان استفاده میکردند؛ اصلاحیه پیشوندهای امضای متمایز معرفی میکند تا امضای در نظر گرفتهشده برای یک نقش تراکنشی در نقش دیگری بازاستفاده نشود.
این اصلاحات در نسخه نرمافزاری سپتامبر قرار داشتند و توسعهدهندگان از اپراتورهای سرور خواسته بودند پیش از اجرایی شدن قواعد تازه، نرمافزار خود را بهروزرسانی کنند.
فعالسازی این اصلاحیه شامل اصلاحات حسابداری برای خزانههای تکدارایی (Single Asset Vaults) و پروتکل پیشنهادی وامدهی XRP Ledger هم میشود. سیستم خزانه به کاربران اجازه میدهد داراییها را در استخرهایی سپردهگذاری کنند که میتوانند پشتیبان وامهای مدتدار باشند. توسعهدهندگان محاسبات مربوط به سپردهگذاری، برداشت و داراییهای قابل بازیابی را تنظیم کردهاند. اصلاحات مرتبط با وامدهی نیز تعیین میکند شبکه چه زمانی پرداختها را معوق میداند و وامهای آسیبدیده چگونه بر حسابداری خزانه اثر میگذارند.
با این حال، این اصلاحیه نگهداری، قابلیتهای وامدهی را فعال نمیکند؛ این قابلیتها به تأیید جداگانه ولیدیتورها نیاز دارند. ریپل پیشتر از اصلاحیههای وامدهی برای معرفی خزانههای تکدارایی و وامدهی نهادی مدتدار حمایت کرده بود. این پیشنهادها به کارگزاران وام اجازه میدهد وامگیرندگان را ارزیابی و با داراییهای سپردهشده در خزانهها وامدهی کنند، در حالی که دفتر کل بازپرداختها و تراکنشهای مرتبط را ثبت میکند.
اصلاحیه تکمیلی LendingProtocolV1_1 نیز خزانههای بسته با دورههای اشتراک، سرمایهگذاری و بازخرید را پیشنهاد میکند، همراه با حسابداریای که سود را هنگام پرداخت وامگیرندگان شناسایی میکند. هر اصلاحیه وامدهی باید بهطور مستقل الزامات تأیید ولیدیتورهای شبکه را برآورده کند تا قابلیتهای مرتبط با آن روی میننت فعالیت کنند.
سوالات متداول
این اصلاحیه در ۴ نوامبر ساعت ۱۴:۵۲ UTC و در لجر ۱۰۸,۱۱۲,۱۲۹ فعال شد. رهگیر XRPLWin این زمانبندی را تأیید کرده است.
این نقص میتوانست تحت شرایطی به حسابی که تنها مجوز PaymentBurn دارد اجازه ایجاد توکنهای صادرشده بدهد. داراییهای درگیر شامل استیبلکوینها، توکنهای مبتنی بر خط اعتماد و توکنهای چندمنظوره بودند، نه عرضه بومی XRP.
حمایت ولیدیتورها در ۲۱ اکتبر به زیر آستانه لازم افتاد و دوره تأیید ۱۴ روزه از نو آغاز شد. تلاش اول ۱۲ روز و سه ساعت طول کشید و تلاش دوم ۱۴ روز و پنج دقیقه ادامه یافت.
خیر، هیچ سوءاستفاده عمومی تأییدشدهای گزارش نشده است. افشاگریهای موجود نیز صادرکنندهای را که دچار ایجاد غیرمجاز توکن شده باشد مشخص نکردهاند.
خیر، این اصلاحیه فقط اصلاحات حسابداری مرتبط با خزانههای تکدارایی و وامدهی را شامل میشود. فعالسازی قابلیتهای وامدهی به تأیید جداگانه ولیدیتورها نیاز دارد.



