Verus Ethereum Bridge Exploit: একই $11.58M বাগ

২০২৬ সালের ১৮ মে, কেউ একজন Verus-Ethereum ব্রিজ থেকে ১১.৫৮ মিলিয়ন ডলার হাতিয়ে নেয়। CoinDesk-এর প্রতিবেদন অনুযায়ী, এটি ছিল বছরের অষ্টম ব্রিজ হ্যাক। Verus Ethereum ব্রিজ এক্সপ্লয়েটে কোনো অদ্ভুত নতুন আক্রমণ পদ্ধতি ছিল না। এটি ছিল সেই একই ব্যর্থতা যা ২০২১ সাল থেকে আমরা বারবার ব্রিজগুলোকে ধ্বংস করতে দেখে আসছি: চুক্তিটি অন্য চেইনে আসলে কী ঘটেছে তা সঠিকভাবে যাচাই না করেই এক চেইনে অর্থ ছেড়ে দিয়েছে।
দুর্বল ফাংশনটির এবার একটি নাম ছিল। checkCCEValues। এটিই সেই রুটিন যা Ethereum পাশে মিন্ট বা রিলিজ করার আগে ক্রস-চেইন এক্সপোর্ট ভ্যালুগুলো বাস্তবতার সাথে মিলছে কিনা তা নিশ্চিত করার কথা ছিল। এটি তার কাজ করেনি, এবং আক্রমণকারী চলে গেল।
আমি চার বছর ধরে একটি নিয়ন্ত্রিত প্রেক্ষাপটে ব্রিজ-সংলগ্ন অবকাঠামো নির্মাণে কাজ করেছি, এবং হতাশাজনক বিষয় হলো এটি কতটা অনুমানযোগ্য হয়ে উঠেছে। আমরা বারবার একই ক্ষতের নতুন নাম দিয়ে চলেছি।
Verus Ethereum ব্রিজ এক্সপ্লয়েট ছিল একটি উৎস-যাচাইকরণ ব্যর্থতা
ব্র্যান্ডিং সরিয়ে রাখলে প্রতিটি ব্রিজ একটাই কাজ করে। এটি চেইন A-তে একটি ঘটনা পর্যবেক্ষণ করে (একটি ডিপোজিট, একটি লক, একটি এক্সপোর্ট) এবং চেইন B-তে একটি সংশ্লিষ্ট পদক্ষেপ নেয় (একটি মিন্ট, একটি আনলক, একটি রিলিজ)। সমগ্র নিরাপত্তা মডেলটি একটি একক প্রশ্নে এসে ঠেকে: চেইন B কি আসলেই বিশ্বাস করে যা চেইন A তাকে বলেছে, এবং সে কি তা যাচাই করেছে?
যখন উৎস-পাশের পরিমাণ নিশ্চিত করার যাচাইকরণটি ভুল থাকে, উত্তরটি হয়ে যায় "না।" আক্রমণকারী দাবিকৃত এক্সপোর্ট ভ্যালু জাল করে বা স্ফীত করে, গন্তব্য চুক্তিটি তা বিশ্বাস করে, এবং কখনো ব্যাক করা হয়নি এমন টোকেন মিন্ট বা মুক্ত হয়ে যায়। The Block জানিয়েছে ক্ষতির পরিমাণ প্রায় ১১.৫৮ মিলিয়ন ডলার, ক্রস-চেইন এক্সপোর্ট চেকের এই ধরনের হিসাবের ফাঁকের মধ্য দিয়ে নিঃশেষ করা হয়েছে।
এটি একটি ব্রিজে সোর্স অ্যামাউন্ট ভ্যালিডেশন, এবং এটি পুরো সিস্টেমের সবচেয়ে গুরুত্বপূর্ণ ফাংশন। একটি তুলনায় ভুল করুন, আর ব্রিজটি বিনামূল্যে অর্থ ছাপানোর যন্ত্রে পরিণত হয়।
checkCCEValues হলো একটি পুরনো দুর্বলতার সর্বশেষ নাম
checkCCEValues দুর্বলতাটি কাঠামোগতভাবে এমন বাগের সাথে অভিন্ন যা ইতিমধ্যে শিল্পের কোটি কোটি ডলার খরচ করেছে। নামগুলো বদলায়। কার্যপ্রণালী বদলায় না।
- Wormhole, ২০২২: একটি সিগনেচার যাচাইয়ের ফাঁক আক্রমণকারীকে ১,২০,০০০ র্যাপড ইটিএইচ মিন্ট করতে দিয়েছিল, যা কখনো জমা হয়নি।
- Nomad, ২০২২: একটি ত্রুটিপূর্ণ মার্কেল রুট ইনিশিয়ালাইজেশনের অর্থ ছিল যেকোনো বার্তাই সত্য হিসেবে যাচাই হতো, এবং ব্রিজটি ভিড়ের হাতে কপি-পেস্ট হতে হতে শেষ হয়ে গেল।
- Multichain, ২০২৩: কী এবং বিশ্বাসের অনুমান যা বাইরে থেকে কেউ আসলে যাচাই করতে পারত না।
এর প্রতিটির মূলে ছিল একটিই বিষয়: গন্তব্য চেইন উৎস ইভেন্টের কোনো সুস্পষ্ট প্রমাণ ছাড়াই মূল্য ছেড়ে দিচ্ছিল। checkCCEValues হলো সেই একই শব্দের ২০২৬ সালের বানান।
আমি মনে করি শিল্পটি এগুলোকে স্বতন্ত্র ইঞ্জিনিয়ারিং ভুল হিসেবে দেখতেই থাকে, অথচ এগুলো একটি শ্রেণির ব্যর্থতা। একটি ফাংশন আরো কঠিনভাবে অডিট করে কোনো শ্রেণির সমস্যা সমাধান হয় না।
Tornado Cash আক্রমণকারীকে অর্থায়ন করেছিল, যা উদ্দেশ্য সম্পর্কে অনেক কিছু বলে
শোষণের আগে আক্রমণকারীর ওয়ালেটে Tornado Cash-এর মাধ্যমে অর্থায়ন হয়েছিল। এই তথ্যটি দায় নির্ধারণের চেয়ে প্রস্তুতি সম্পর্কে যা বলে তার জন্যই বেশি গুরুত্বপূর্ণ। এটি কোনো হোয়াইটহ্যাটের কাজ নয় যে একটি কন্ট্র্যাক্টে খোঁচা দিতে গিয়ে ফলাফলে অবাক হয়ে গেছে। Tornado Cash-এ অর্থায়িত আক্রমণকারীর প্যাটার্ন হলো এমন কারো চিহ্ন যে দিনের আগেই অপারেশনাল আড়াল তৈরি করেছে এবং আশা করেছিল যে অর্থ বের করতে লন্ডারিংয়ের দরকার হবে।
এটাই রক্ষাকারীরা অবমূল্যায়ন করে। শোষণের লেনদেন আসার সময়, অফ-র্যাম্প ইতিমধ্যে প্রস্তুত। পরবর্তী ট্রেসিং প্রসিকিউটরদের সাহায্য করে, কিন্তু যে প্রোটোকল মাত্র আট সংখ্যার ক্ষতির মুখে পড়েছে তার জন্য এটি প্রায় কিছুই করে না।
ব্রিজ নিরাপত্তা ব্যর্থতা এখন মাসিক কর হয়ে দাঁড়িয়েছে
পিছিয়ে তাকালে Verus হ্যাক একটি লাইন আইটেম, কোনো ব্যতিক্রম নয়। PeckShield-এর তথ্য Bitcoin.com-এ উদ্ধৃত অনুযায়ী, ক্রিপ্টো ব্রিজ শোষণ শুধু মে ২০২৬-এ প্রায় ৩২ কোটি ৮০ লাখ ডলারে পৌঁছেছে। বছরের পাঁচ মাসেরও কম সময়ে আটটি ব্রিজ ঘটনা।
বাজার এটিকে ক্রস-চেইন ব্যবসার স্বাভাবিক খরচ হিসেবে চুপচাপ মেনে নিয়েছে। এটি ভুল শিক্ষা। প্রতি মাসে বারবার নয় অঙ্কের ক্ষতি অস্থিরতা নয়, এটি একটি কাঠামোগত ত্রুটি যা ডিজাইনের জগৎ মোকাবেলা করতে অস্বীকার করছে।
যারা সত্যিকারের মূল্য স্থানান্তর করছেন তাদের জন্য উপসংহারটি অস্বস্তিকর: বেশিরভাগ ব্রিজ গণিতের পোশাক পরা বিশ্বাসের অনুমান মাত্র। আমি আগেও বলেছি, How Stablecoin Bridges Actually Fail-এ, যে নিরাপদ ব্রিজ প্রায়শই সেটিই যেটি স্বীকার করে নেয় যে সে আসলে কতটুকু যাচাই করে।
একটি সত্যিকারের নির্ভরযোগ্য ব্রিজ চেক কেমন হওয়া উচিত
আপনি যদি ব্রিজ তৈরি বা অডিট করছেন, তাহলে সোর্স অ্যামাউন্ট ভ্যালিডেশনই সেই জায়গা যেখানে আপনার সন্দেহপ্রবণতার অসামঞ্জস্যপূর্ণ অংশ ব্যয় করা উচিত। কয়েকটি বিষয় আমি অপরিহার্য মনে করি:
- ডেস্টিনেশন কন্ট্র্যাক্টকে অবশ্যই সোর্স ইভেন্টের ক্রিপ্টোগ্রাফিক প্রমাণ যাচাই করতে হবে, কোনো রিলেয়ারের কথার উপর ভিত্তি করে নয়। লেটেন্সি বাজেট যেখানে সুযোগ দেয় সেখানে মাল্টিসিগ অ্যাটেস্টেশনের বদলে লাইট-ক্লায়েন্ট বা zk প্রুফ ব্যবহার করুন।
- প্রতিটি পথে অ্যামাউন্ট চেক সম্পূর্ণ হতে হবে।
checkCCEValuesধরনের বাগ সাধারণত এমন কোনো শাখায় লুকিয়ে থাকে যেটি কিছু ইনপুট এড়িয়ে যায়। তুলনাটি ফাজ করুন, শুধু চোখ বুলিয়ে যাবেন না। - প্রতিটি অ্যাসেটের জন্য রেট লিমিট ও সার্কিট ব্রেকার রাখুন, যাতে একটি জাল মান একটি ট্রানজেকশনেই পুরো রিজার্ভ নিঃশেষ করতে না পারে। প্রতি ঘণ্টায় TVL-এর ৫% সীমায় স্বয়ংক্রিয় পজ করার ব্যবস্থা ২০২৬ সালের বেশিরভাগ ঘটনা ঠেকাতে পারত।
- স্বতন্ত্র ইনভেরিয়েন্ট মনিটরিং যা রিয়েল টাইমে মোট মিন্টেড বনাম মোট লকড পর্যবেক্ষণ করে এবং বিচ্যুতি ধরা পড়লে থামিয়ে দেয়।
এর কিছুই নতুন নয়। এগুলো ধরার জন্য অডিট স্ট্যাক বিদ্যমান, যা আমি the audit-stack piece-এ বিস্তারিত আলোচনা করেছি। সমস্যা হলো ব্রিজগুলো ভ্যালিডেশনকে পণ্যের বদলে উপসংহারে রেখে শিপ করতেই থাকে।
২০২৬ সালের পরবর্তী ব্রিজ হ্যাক ইতিমধ্যে লেখা হয়ে যাচ্ছে। এটির ফাংশনের নাম আলাদা হবে এবং মূল কারণ একই থাকবে, আর আমরা আবার অবাক হওয়ার ভান করব। করা উচিত নয়।