Cryptonews

بہت بڑی ڈکیتی کا پردہ فاش: سہولت کا آلہ مہلک بن گیا جب ہیکرز نے سولانا بلاکچین پر بڑھے ہوئے $270 ملین کی رقم چھین لی

ماخذ
cryptonewstrend.com
شائع شدہ
بہت بڑی ڈکیتی کا پردہ فاش: سہولت کا آلہ مہلک بن گیا جب ہیکرز نے سولانا بلاکچین پر بڑھے ہوئے $270 ملین کی رقم چھین لی

ڈرفٹ پروٹوکول پر حملہ روایتی معنوں میں کوئی ہیک نہیں تھا۔

کسی کو کوئی بگ نہیں ملا اور نہ ہی کسی نجی کلید کو کریک کیا گیا۔ کوئی فلیش لون کا استحصال یا ہیرا پھیری اوریکل بھی نہیں تھا۔

اس کے بجائے، ایک حملہ آور نے ایک جائز سولانا فیچر، 'پائیدار نونسز' کا استعمال کیا تاکہ ڈرفٹ کی سیکیورٹی کونسل کو پہلے سے منظور شدہ ٹرانزیکشنز میں پھنسایا جائے جو ہفتوں بعد، ایک وقت میں اور ایسے تناظر میں، جس پر دستخط کرنے والوں کا کبھی ارادہ نہیں تھا۔

نتیجہ کم از کم 270 ملین ڈالر کا نکلا جس پر عمل درآمد میں ایک منٹ سے بھی کم وقت لگا لیکن ترتیب دینے میں ایک ہفتہ سے زیادہ کا وقت لگا۔

پائیدار نانس کیا ہیں اور وہ کیوں موجود ہیں؟

سولانا پر، ہر ٹرانزیکشن میں 'حالیہ بلاک ہیش' شامل ہوتا ہے، بنیادی طور پر ایک ٹائم اسٹیمپ جو یہ ثابت کرتا ہے کہ لین دین حال ہی میں بنایا گیا تھا۔ وہ بلاک ہیش تقریباً 60 سے 90 سیکنڈ کے بعد ختم ہو جاتا ہے۔ اگر لین دین اس ونڈو کے اندر نیٹ ورک پر جمع نہیں کیا جاتا ہے، تو یہ غلط ہو جاتا ہے۔ یہ ایک حفاظتی خصوصیت ہے اور پرانے، باسی لین دین کو بعد میں دوبارہ چلانے سے روکنے میں مدد کرتا ہے۔

پائیدار نونس اس حفاظتی خصوصیت کو اوور رائیڈ کرتے ہیں۔ وہ معیاد ختم ہونے والے بلاک ہیش کی جگہ ایک مقررہ 'nonce' سے بدل دیتے ہیں، جو ایک خصوصی آنچین اکاؤنٹ میں ذخیرہ شدہ ایک بار کا کوڈ ہے، جو لین دین کو غیر معینہ مدت تک درست رکھتا ہے جب تک کہ کوئی اسے جمع کرانے کا انتخاب نہ کرے۔

یہ خصوصیت جائز وجوہات کی بناء پر موجود ہے۔ ہارڈ ویئر والیٹس، آف لائن سائننگ سیٹ اپس، اور ادارہ جاتی تحویل کے حل سبھی کو لین دین کو 90 سیکنڈ کے اندر جمع کرانے پر مجبور کیے بغیر تیار کرنے اور منظور کرنے کی اہلیت کی ضرورت ہوتی ہے۔

لیکن غیر معینہ مدت تک درست لین دین ایک مسئلہ پیدا کرتا ہے۔ اگر کوئی آج کسی سے کسی لین دین پر دستخط کروا سکتا ہے، تو اسے سسٹم کے ہارڈ کوڈ کردہ اصولوں کے مطابق اگلے ہفتے یا اگلے مہینے پر عمل میں لایا جا سکتا ہے۔ دستخط کنندہ کے پاس ایک بار منظوری دینے کے بعد ان کی منظوری کو منسوخ کرنے کا کوئی طریقہ نہیں ہے، جب تک کہ نونس اکاؤنٹ کو دستی طور پر ایڈوانس نہیں کیا جاتا، جس کی زیادہ تر صارفین نگرانی نہیں کرتے ہیں۔

حملہ آور نے انہیں کس طرح استعمال کیا۔

ڈرفٹ کا پروٹوکول ایک 'سیکیورٹی کونسل ملٹی سیگ' کے زیر انتظام تھا، ایک ایسا نظام جس میں ایک سے زیادہ لوگ (اس معاملے میں، پانچ) کنٹرول کا اشتراک کرتے ہیں، اور کسی بھی کارروائی کے لیے ان میں سے کم از کم دو کی منظوری کی ضرورت ہوتی ہے۔ ملٹی سیگس ڈی فائی میں ایک معیاری سیکیورٹی پریکٹس ہے، جہاں یہ خیال ہے کہ کسی ایک فرد سے سمجھوتہ کرنا فنڈز چوری کرنے کے لیے کافی نہیں ہے۔

لیکن حملہ آور کو کسی کی چابیوں پر سمجھوتہ کرنے کی ضرورت نہیں تھی۔ انہیں صرف دو دستخطوں کی ضرورت تھی، اور ایسا لگتا ہے کہ انہوں نے انہیں اس کے ذریعے حاصل کیا ہے جسے Drift "غیر مجاز یا غلط پیش کردہ لین دین کی منظوری" کے طور پر بیان کرتا ہے، یعنی دستخط کرنے والوں کا خیال تھا کہ وہ معمول کے لین دین کی منظوری دے رہے ہیں۔

جمعرات X پوسٹ میں شائع ہونے والی ٹائم لائن ڈرفٹ یہ ہے۔

23 مارچ کو چار پائیدار ناننس اکاؤنٹس بنائے گئے۔ دو قانونی ڈرفٹ سیکیورٹی کونسل کے ارکان سے وابستہ تھے۔ دو کو حملہ آور نے قابو کر لیا۔ اس کا مطلب ہے کہ حملہ آور نے پہلے ہی کونسل کے پانچ ارکان میں سے دو سے درست دستخط حاصل کر لیے تھے، جو کہ پائیدار غیر قانونی لین دین میں بند تھے جن کی میعاد ختم نہیں ہوگی۔

27 مارچ کو، ڈرفٹ نے کونسل کے رکن کو تبدیل کرنے کے لیے سلامتی کونسل کی ایک منصوبہ بند ہجرت کو انجام دیا۔ حملہ آور نے موافقت کی۔ 30 مارچ تک، ایک نیا پائیدار نانس اکاؤنٹ نمودار ہوا، جو اپ ڈیٹ شدہ ملٹی سیگ کے ممبر سے منسلک ہے، جس سے ظاہر ہوتا ہے کہ حملہ آور نے نئی ترتیب کے تحت مطلوبہ دو میں سے پانچ کی منظوری کی حد دوبارہ حاصل کر لی ہے۔

یکم اپریل کو حملہ آور کو پھانسی دے دی گئی۔

سب سے پہلے، ڈرفٹ نے اپنے انشورنس فنڈ سے ایک جائز ٹیسٹ نکالا۔ تقریباً ایک منٹ بعد، حملہ آور نے پہلے سے دستخط شدہ پائیدار غیر لین دین جمع کرایا۔ دو ٹرانزیکشنز، سولانا بلاکچین پر چار سلاٹس کے علاوہ، ایک بدنیتی پر مبنی ایڈمن ٹرانسفر بنانے اور اسے منظور کرنے، پھر اسے منظور کرنے اور اس پر عمل کرنے کے لیے کافی تھے۔

چند منٹوں میں، حملہ آور کے پاس ڈرفٹ کے پروٹوکول کی سطح کی اجازتوں کا مکمل کنٹرول تھا۔ انہوں نے اس کنٹرول کو دھوکہ دہی سے نکالنے کا طریقہ کار متعارف کرانے اور والٹس کو نکالنے کے لیے استعمال کیا۔

کیا لیا گیا اور کہاں گیا۔

Onchain محققین نے حقیقی وقت میں فنڈ کے بہاؤ کو ٹریک کیا۔ سیکورٹی محقق ولادیمیر ایس کی طرف سے مرتب کردہ چوری شدہ اثاثوں کی ٹوٹ پھوٹ، درجنوں ٹوکنز میں تقریباً $270 ملین تھی۔

سب سے بڑی سنگل کیٹیگری JPL ٹوکنز میں $155.6 ملین تھی، اس کے بعد $USDC میں $60.4 ملین، CBBTC میں $11.3 ملین (Coinbase wrapped bitcoin)، USDT میں $5.65 ملین، لپیٹے ہوئے ایتھر میں $4.7 ملین، DSOL میں $4.5 ملین، $4.4 ملین FARTINCO میں، $4.4 ملین اور FARTIN4 ملین میں چھوٹی رقم۔ JUP، JITOSOL، MSOL، BSOL، EURC، اور دیگر۔

پرائمری ڈرینر والیٹ کو حملے سے آٹھ دن پہلے NEAR پروٹوکول کے ارادے کے ذریعے مالی اعانت فراہم کی گئی تھی لیکن پھانسی کے دن تک غیر فعال رہا۔ چوری شدہ فنڈز بیچوان والے بٹوے میں منتقل کر دیے گئے تھے جنہیں بیک پیک کے ذریعے صرف ایک دن پہلے فنڈز فراہم کیے گئے تھے، ایک وکندریقرت کرپٹو ایکسچینج جس کے لیے شناخت کی تصدیق کی ضرورت ہوتی ہے، ممکنہ طور پر تفتیش کاروں کو رہنمائی فراہم کرتے ہیں۔

وہاں سے، فنڈز ورم ہول، ایک کراس چین پل کے ذریعے ایتھریم پتوں پر منتقل ہوئے۔ ان ایتھریم پتوں کو ٹورنیڈو کیش، منظور شدہ پرائیویسی مکسر کا استعمال کرتے ہوئے پہلے سے فنڈ کیا گیا تھا۔

ZachXBT، ایک ممتاز onchain تفتیش کار، نے نوٹ کیا کہ $230 ملین سے زیادہ USDC میں 100 سے زیادہ ٹرانزیکشنز میں Circle's CCTP (کراس چین ٹرانسفر پروٹوکول) کے ذریعے سولانا سے Ethereum تک پہنچایا گیا۔

اس نے $USDC کے مرکزی جاری کنندہ سرکل کو تنقید کا نشانہ بنایا،