$XRP #Tether冻结Ledger盗窃案相关USDT
#XRP账本修复可增发XRP的漏洞 XRP Ledger يصلح ثغرة عمرها عشر سنوات أتاحت إنشاء XRP من العدم
أصلح XRP Ledger ثغرة خطيرة ظلت كامنة لنحو عشر سنوات. ووفقًا لتقرير الإفصاح عن الثغرة الذي نشره XRPL رسميًا في 9 أكتوبر، كان من الممكن لخطأ تجاوز سعة عددية في محرك المدفوعات أن يتيح للمهاجمين إنشاء XRP قابل للإنفاق من العدم، باستخدام مجموعة من أوامر البيع المصممة خصيصًا ودفعة واحدة، وربما بكمية تتجاوز إجمالي المعروض من XRP. أُصدر التصحيح ضمن الإصدار xrpld 3.4.1، وأفاد الفريق الرسمي بعدم وجود أدلة على استغلال هذه الثغرة على أي شبكة عامة.
كيف تعمل الثغرة: عندما تكبر الأرقام كثيرًا، «تلتف» عملية الجمع لتصبح النتيجة أصغر
بحسب التقرير، تكمن المشكلة في طريقة احتساب محرك المدفوعات للمبلغ المستحق على المشتري. فعندما تمر دفعة عبر دفتر أوامر على السلسلة وتنفّذ عددًا كبيرًا من أوامر البيع دفعة واحدة، يجمع المحرك مبالغ هذه الأوامر، لكن عملية الجمع تستخدم عددًا صحيحًا من 64 بت من دون فحص لتجاوز السعة. وتُخزّن أرصدة XRP في أعداد صحيحة محدودة النطاق؛ فإذا تجاوز المجموع الحد الأقصى، لا يظهر خطأ، بل «يلتف» الرقم ليصبح صغيرًا جدًا.
والنتيجة أن المحرك يدفع للبائعين المبالغ الكاملة لكل أمر بيع كالمعتاد، لكنه لا يقتطع من المشتري سوى المبلغ الصغير الناتج عن الالتفاف، ويكون الفرق هو XRP الذي أُنشئ من العدم. والأدهى أن فحص الأمان المدمج في XRP Ledger، الذي يمنع «إنشاء XRP»، يستخدم الطريقة نفسها في الجمع، لذا يلتف الرقم بالطريقة ذاتها ولا يرصد شيئًا. أما الفحص الآخر الذي يتحقق من رصيد حساب واحد، فلم يُفعّل لأن XRP المستحدث توزّع على مئات الحسابات.
ولا يتطلب الهجوم عتبة مرتفعة. يذكر التقرير أن المهاجم لا يحتاج إلا إلى إنشاء مئات الحسابات، ووضع أوامر بيع في كل منها لمبادلة كمية ضئيلة جدًا من الرموز بكمية هائلة من XRP، ثم استخدام حساب آخر لإرسال دفعة واحدة وتنفيذ جميع هذه الأوامر. وتقتصر التكلفة الفعلية على امتلاك مئات الحسابات وضمانات أوامر البيع (التي يمكن استردادها لاحقًا)، إضافة إلى رسوم المعاملات. لكن هذا الهجوم لا يحدث عرضًا، إذ إن مبالغ المعاملات العادية لا تقترب من حد تجاوز السعة.
ظلت الثغرة كامنة منذ عام 2015، واكتُشفت بفضل برنامج مكافآت اكتشاف الثغرات
يفيد التقرير بأن هذا الخطأ قد يكون موجودًا منذ عام 2015، حين كُتب محرك المدفوعات الحالي. وأبلغ باحثون عن الثغرة في 22 سبتمبر عبر برنامج مكافآت اكتشاف الثغرات التابع لـ XRPL. ووفقًا لـ CoinDes
#XRP账本修复可增发XRP的漏洞 XRP Ledger يصلح ثغرة عمرها عشر سنوات أتاحت إنشاء XRP من العدم
أصلح XRP Ledger ثغرة خطيرة ظلت كامنة لنحو عشر سنوات. ووفقًا لتقرير الإفصاح عن الثغرة الذي نشره XRPL رسميًا في 9 أكتوبر، كان من الممكن لخطأ تجاوز سعة عددية في محرك المدفوعات أن يتيح للمهاجمين إنشاء XRP قابل للإنفاق من العدم، باستخدام مجموعة من أوامر البيع المصممة خصيصًا ودفعة واحدة، وربما بكمية تتجاوز إجمالي المعروض من XRP. أُصدر التصحيح ضمن الإصدار xrpld 3.4.1، وأفاد الفريق الرسمي بعدم وجود أدلة على استغلال هذه الثغرة على أي شبكة عامة.
كيف تعمل الثغرة: عندما تكبر الأرقام كثيرًا، «تلتف» عملية الجمع لتصبح النتيجة أصغر
بحسب التقرير، تكمن المشكلة في طريقة احتساب محرك المدفوعات للمبلغ المستحق على المشتري. فعندما تمر دفعة عبر دفتر أوامر على السلسلة وتنفّذ عددًا كبيرًا من أوامر البيع دفعة واحدة، يجمع المحرك مبالغ هذه الأوامر، لكن عملية الجمع تستخدم عددًا صحيحًا من 64 بت من دون فحص لتجاوز السعة. وتُخزّن أرصدة XRP في أعداد صحيحة محدودة النطاق؛ فإذا تجاوز المجموع الحد الأقصى، لا يظهر خطأ، بل «يلتف» الرقم ليصبح صغيرًا جدًا.
والنتيجة أن المحرك يدفع للبائعين المبالغ الكاملة لكل أمر بيع كالمعتاد، لكنه لا يقتطع من المشتري سوى المبلغ الصغير الناتج عن الالتفاف، ويكون الفرق هو XRP الذي أُنشئ من العدم. والأدهى أن فحص الأمان المدمج في XRP Ledger، الذي يمنع «إنشاء XRP»، يستخدم الطريقة نفسها في الجمع، لذا يلتف الرقم بالطريقة ذاتها ولا يرصد شيئًا. أما الفحص الآخر الذي يتحقق من رصيد حساب واحد، فلم يُفعّل لأن XRP المستحدث توزّع على مئات الحسابات.
ولا يتطلب الهجوم عتبة مرتفعة. يذكر التقرير أن المهاجم لا يحتاج إلا إلى إنشاء مئات الحسابات، ووضع أوامر بيع في كل منها لمبادلة كمية ضئيلة جدًا من الرموز بكمية هائلة من XRP، ثم استخدام حساب آخر لإرسال دفعة واحدة وتنفيذ جميع هذه الأوامر. وتقتصر التكلفة الفعلية على امتلاك مئات الحسابات وضمانات أوامر البيع (التي يمكن استردادها لاحقًا)، إضافة إلى رسوم المعاملات. لكن هذا الهجوم لا يحدث عرضًا، إذ إن مبالغ المعاملات العادية لا تقترب من حد تجاوز السعة.
ظلت الثغرة كامنة منذ عام 2015، واكتُشفت بفضل برنامج مكافآت اكتشاف الثغرات
يفيد التقرير بأن هذا الخطأ قد يكون موجودًا منذ عام 2015، حين كُتب محرك المدفوعات الحالي. وأبلغ باحثون عن الثغرة في 22 سبتمبر عبر برنامج مكافآت اكتشاف الثغرات التابع لـ XRPL. ووفقًا لـ CoinDes