একটি পাঁচ বছরের পুরনো কোল্ডকার্ড সফটওয়্যার ত্রুটির কারণে একজন আক্রমণকারী ব্যক্তিগত চাবি পুনর্গঠন করে ১,১০০ এর বেশি বিটকয়েন স্বীকার করতে পারেছিল, যার ফলে ওয়ালেটের নির্মাতা এই আবিষ্কারের অংশবিশেষের জন্য কৃত্রিম বুদ্ধিমত্তা (এআই)কে দায়ী ঠাহর করেছে।
প্রধান বিষয়গুলি
- কোল্ডকার্ড-সংযুক্ত সীড প্রকাশিত হয়েছে, যা ১,১২৮.৪৭১৭ BTC, প্রায় ৭১.১ মিলিয়ন ডলারের সমান।
- কয়নকাইট বলছে যে এআই হয়তো পাঁচ বছরের ত্রুটি খুঁজে পেয়েছে, কিন্তু দায়িত্ব প্রমাণিত হয়নি।
- প্রভাবিত সীড সহ কোল্ডকার্ড ব্যবহারকারীদের ফিক্সড ফার্মওয়্যারে নতুন ওয়ালেট তৈরি করতে হবে।
একটি সমন্বিত স্বীকৃতি শত শত ওয়ালেট খালি করে দেয়
ঘটনাটি প্রকাশ্যে আসে যখন প্রায় ৫৯৪ বিটকয়েন, যা সময়ের সময় প্রায় ৩৮ মিলিয়ন ডলারের মূল্যবান ছিল, ৩০ জুলাইয়ে প্রায় ৫০০টি সিঙ্গেল-সিগনেচার বিটকয়েন ঠিকানা থেকে সরিয়ে নেওয়া হয়। যখন খবরটি প্রথম প্রকাশিত হয়, বিটকয়েন.কম নিউজ উল্লেখ করে যে ট্রান্সফারগুলি প্রায় ২৫ মিনিটের মধ্যে ঘটেছিল এবং একটি সাধারণ প্রযুক্তিগত দুর্বলতা সহ ওয়ালেটগুলিকে লক্ষ্যবস্তু করেছিল।
পরবর্তীতে ব্লকচেইন রিভিউগুলি চুরির সম্ভাব্য পরিসর বাড়িয়ে দেয়। গবেষকদের অনুমান, প্রায় ৪১ মিনিটের একটি সময়কালে ১,০৮২ থেকে ১,১৯৬টি ঠিকানা প্রভাবিত হতে পারে। একটি কাস্টম ড্যাশবোর্ড কল্ডকার্ড স্বিপ ওয়াচ পরবর্তীতে মোট ১,১২৮.৪৭১৭ BTC এর পরিমাণ নির্ধারণ করে। যখন বিটকয়েন $63,044-এর কাছাকাছি ট্রেড হচ্ছিল, তখন এটি প্রায় $71.1 মিলিয়নের সমমূল্য।

অধিকাংশ অর্থ শত শত বিটকয়েন ধারণকারী একটি ঠিকানায় একত্রিত হয়েছিল, যেখানে বড় অংশটি প্রায় স্থির থাকে। প্রভাবিত ঠিকানাগুলি একটি গুরুত্বপূর্ণ বিস্তার দ্বারা সংযুক্ত ছিল: তাদের পুনরুদ্ধার বীজগুলি কানাডিয়ান কোম্পানি কোইনকাইট দ্বারা তৈরি কোল্ডকার্ড হার্ডওয়্যার ওয়ালেটে তৈরি করা হয়েছিল।
একটি রিকভারি সিড হল শব্দের একটি তালিকা যা একটি ক্রিপ্টোকারেন্সি ওয়ালেটের অ্যাক্সেস নিয়ন্ত্রণ করে। যে কেউ যে সিডটি পুনর্গঠন বা প্রাপ্তি করতে পারে, তারা সাধারণত ভৌত ডিভাইসটি অধিকার না করেও ওয়ালেটের অর্থ স্থানান্তর করতে পারে।
কোল্ডকার্ড একটি ভাঙা র্যান্ডমনেসিস সিস্টেম খুঁজে পায়
Coinkite একটি জরুরি পরামর্শ জারি করেছে যে কিছু কোল্ডকার্ড ডিভাইসে তৈরি করা সিড দুর্বল হতে পারে। মার্চ 2021-এর প্রায় সময়ে প্রকাশিত ফার্মওয়্যার সংস্করণ 4.0.1 এবং পরবর্তী সংস্করণ চলাকালীন Mk3 ডিভাইসগুলি সবচেয়ে বেশি ঝুঁকিপূর্ণ ছিল।
আরও বিশ্লেষণে দেখা গেছে যে Coinkite এমারজেন্সি ফার্মওয়্যার ফিক্স প্রকাশ করার আগে কিছু Mk4, Mk5 এবং Q ডিভাইসে তৈরি সিডগুলির প্রতি উদ্বেগ বৃদ্ধি পেয়েছে। ট্যাপসাইনার, ওপেনডাইম এবং স্যাটসকার্ড পণ্যগুলি বিভিন্ন সফটওয়্যার ব্যবহার করায় প্রতিবেদন অনুযায়ী এগুলি প্রভাবিত হয়নি।
দোষটি র্যান্ডম ডেটা তৈরির প্রক্রিয়ার সাথে সম্পর্কিত। নিরাপদ ওয়ালেটগুলি উচ্চ মানের র্যান্ডমনেসের উপর নির্ভর করে যাতে তাদের রিকভারি সিডগুলি অনুমান করা যায় না। সবচেয়ে গুরুতরভাবে প্রভাবিত Mk3 ডিভাইসগুলিতে, গবেষকদের অনুমান যে সিডটিতে ইচ্ছিত 128 বিটের পরিবর্তে মাত্র প্রায় 40 বিট কার্যকরী র্যান্ডমনেস থাকতে পারে।
এই পার্থক্যটি অত্যন্ত গুরুত্বপূর্ণ। একটি সঠিকভাবে তৈরি 128-বিট সিডকে ব্রুট ফোর্সের মাধ্যমে অনুমান করা প্রায় অসম্ভব বলে বিবেচনা করা হয়। 40-বিট সিডে অনেক কম সম্ভাবনা থাকে, যা একজন আক্রমণকারীকে যথেষ্ট কম্পিউটিং পাওয়ার দিয়ে সম্ভাব্য সিডগুলি অফলাইনে পরীক্ষা করতে এবং ফলাফলের ঠিকানাগুলি পাবলিক বিটকয়েন ব্লকচেইনের সাথে তুলনা করতে সক্ষম করে।
কিছু নতুন ডিভাইস প্রায় ৭২ বিট কার্যকরী র্যান্ডমনেস প্রদান করেছে কারণ সুরক্ষিত হার্ডওয়্যার অতিরিক্ত একটি অপ্রত্যাশিত ডেটার স্তর যোগ করেছে। এটি বীজগুলি পুনর্গঠন করা কঠিন করে তুলবে, তবে এখনও উদ্দিষ্টের তুলনায় অনেক দুর্বল।
৫ বছর ধরে একটি কনফিগারেশন ত্রুটি বেঁচে থাকল
সমস্যাটি শুরু হয়েছিল দুটি সফটওয়্যার ফাংশনের বিল্ড-টাইম কনফিগারেশন ভুল নিয়ে, যারা সমান কাজ করত। একটি ফাংশন ডিভাইসের হার্ডওয়্যার-ভিত্তিক ট্রু র্যান্ডম নম্বর জেনারেটর ব্যবহার করত, যখন অন্যটি MicroPython থেকে উত্তরাধিকারসূত্রে প্রাপ্ত একটি দুর্বল সফটওয়্যার প্রক্রিয়ার উপর নির্ভর করত।
কয়েনকাইট মাইক্রোপাইথন বিকল্পটি অক্ষম করার ইচ্ছা রেখেছিল। তবে, একটি সফটওয়্যার চেক শুধুমাত্র একটি কনফিগারেশন লেবেল পরিভাষিত কিনা তা পরীক্ষা করেছিল, এর মান শূন্যে সেট করা হয়েছে কিনা তা নয়। ফলে, প্রস্তুত ফার্মওয়্যারটি চুপচাপভাবে দুর্বল ফাংশনটি বেছে নিতে পারে।
দুটি ফাংশনের ফরম্যাট মিলে যাওয়ায়, সফটওয়্যারটি সঠিকভাবে কম্পাইল ও চলতে থাকে, কোনো স্পষ্ট ত্রুটি উৎপন্ন করেনি। এই ভুলটি ২০২১ সালের একটি সফটওয়্যার মাইগ্রেশনের সময় কোডে প্রবেশ করে এবং পাবলিকলি উপলব্ধ ফার্মওয়্যারে পাঁচ বছরেরও বেশি সময় ধরে থাকে।
এখন একটি ডিভাইস আপডেট করলে দোষপূর্ণ সফটওয়্যারের অধীনে তৈরি করা সিডকে শক্তিশালী করা যায় না। প্রভাবিত ব্যবহারকারীদের সংশোধিত ফার্মওয়্যার বা অন্য একটি নিরাপদ ডিভাইস ব্যবহার করে একটি সম্পূর্ণ নতুন সিড তৈরি করতে হবে, তারপর তাদের ফান্ডগুলি সেই নতুন সিড দ্বারা নিয়ন্ত্রিত ঠিকানাগুলিতে স্থানান্তর করতে হবে।

যারা তাদের সীড তৈরি করার সময় কমপক্ষে ৫০টি স্বতন্ত্র ডাইস রোল যোগ করেছিলেন, তাদের সম্ভবত দুর্বলতা এড়ানোর জন্য যথেষ্ট অতিরিক্ত র্যান্ডমনেস সরবরাহ করেছিলেন। একটি শক্তিশালী BIP-39 পাসফ্রেজও পুনর্গঠনকে আরও কঠিন করে তুলতে পারত, যখন কয়েকটি স্বতন্ত্র ডিভাইসের স্বাক্ষর প্রয়োজনীয় ওয়ালেটগুলি একটি কমপ্রোমাইজড সীডকে একা ফান্ডস সরানোর থেকে বাধা দিতে পারে।
কয়েনকাইট এআই-এর দিকে ইঙ্গিত করছে, কিন্তু প্রমাণ এখনও অনুপস্থিত
কয়েনকাইটের সিইও রোডলফো নোভাক পাবলিকলি ক্ষমা চেয়েছেন এবং বলেছেন যে কোম্পানিটি ফার্মওয়্যার ব্যর্থতার জন্য পুরোপুরি দায়ী। তিনি বলেছেন যে দলটি সংশোধিত সফটওয়্যার, টেকনিক্যাল রিপোর্ট এবং প্রভাবিত ব্যবহারকারীদের জন্য সমর্থনের উপর কাজ করছে।
কয়নকাইট এবং নোভাক এও একটি চমকপ্রদ তত্ত্ব উত্থাপন করেছেন যে এই ত্রুটিটি কীভাবে আবিষ্কৃত হয়েছিল। কারণ এর ফার্মওয়্যার বছরের পর বছর পাবলিকলি উপলব্ধ ছিল, কোম্পানিটি মনে করে যে কেউ সম্ভবত পুরনো ভার্সনগুলির কোড পরীক্ষা করতে AI ব্যবহার করেছিল এবং দুর্বল র্যান্ডমনেস পথটি খুঁজে পেয়েছিল।
“অন্য সকল ডেভেলপারদের জন্য: আমরা বিশ্বাস করি এটি নতুন এআই প্যারাডাইমের একটি বাস্তবিক সত্য। এআই-সহায়িত কোড রিভিউ এখন এমন একটি গতিতে ল্যাটেন্ট বাগ খুঁজে পাচ্ছে যা শিল্পের সবচেয়ে অভিজ্ঞ বিশেষজ্ঞদেরও ছাড়িয়ে গেছে,” নোভাক তাঁর X-এ প্রকাশিত ক্ষমা প্রার্থনা পোস্টে লিখেছেন। “যদি আপনার ফার্মওয়্যার ওপেন-সোর্স হয় বা কখনও পাবলিক হয়েছে, তবে ধরে নিন এটি ইতিমধ্যেই আক্রমণকারীদের এবং প্রতিরক্ষাকারীদের দ্বারা পড়া হচ্ছে।”
আজকের আধুনিক এআই কোডিং সিস্টেমগুলি বড় সফটওয়্যার রিপোজিটরি প্রক্রিয়াকরণ করতে পারে এবং কনফিগারেশন সেটিংস, ফাংশন এবং সুরক্ষা ধারণার মধ্যে সন্দেহজনক সম্পর্ক শনাক্ত করতে পারে। একজন আক্রমণকারী এই সিস্টেমকে বিশেষভাবে দুর্বল র্যান্ডম নম্বর জেনারেটর, ফলব্যাক ফাংশন বা ক্রিপ্টোগ্রাফিক কীগুলিকে প্রভাবিত করা ত্রুটিগুলির জন্য অনুসন্ধান করতে বলতে পারে।

স্বাধীন গবেষকদের পরে রিপোর্ট করা হয়েছিল মূল র্যান্ডমনেস সমস্যাটি জানা যাওয়ার পর AI মডেল ব্যবহার করে সমস্যাটি খুঁজে বা ব্যাখ্যা করার জন্য। এটি দেখিয়েছে যে AI-সহায়িত কোড বিশ্লেষণ কতটা সহজলভ্য হয়ে উঠেছে, কিন্তু এটি প্রমাণ করেনি যে মূল আক্রমণকারী AI ব্যবহার করেছিল।

Coinkite স্বীকার করেছে যে একটি অগ্রণী এআই মডেল ব্যবহার করে তাদের নিজস্ব পরীক্ষা চুরির আগে এই ত্রুটি খুঁজে পায়নি। এই ফলাফলটি দেখায় যে এআই সিস্টেমগুলি স্বয়ংক্রিয়ভাবে প্রতিটি গুরুতর ত্রুটি খুঁজে পায় না। তাদের কর্মক্ষমতা তাদের প্রাপ্ত নির্দেশাবলী, প্রদানকৃত কোডের পরিমাণ এবং একজন মানব পর্যালোচক সতর্কবার্তার লক্ষণগুলি বুঝতে পারেন কিনা তার উপর নির্ভর করতে পারে।
সমালোচকদের মতে, মানব ব্যর্থতা প্রথমে ঘটেছিল
কিছু সুরক্ষা বিশেষজ্ঞ যুক্তি দেন যে কৃত্রিম বুদ্ধিমত্তা (এআই) ঝুঁকির প্রতি অত্যধিক মনোযোগ দেওয়া একটি মৌলিক ইঞ্জিনিয়ারিং ব্যর্থতা থেকে মনোযোগ সরিয়ে নিতে পারে। অনেকে মনে করেন যে কনফিগারেশন ভুলটি একটি পরিচিত ধরনের সফটওয়্যার ত্রুটি ছিল, এবং বীজ উৎপাদনের উপর কেন্দ্রীভূত প্রচলিত কোড রিভিউ, টেস্টিং পদ্ধতি বা অডিটগুলি এটিকে বছরগুলি আগেই শনাক্ত করতে পারত।

বিপরীত দৃষ্টিভঙ্গি অপরিহার্যভাবে অসঙ্গত নয়। একটি মানব ত্রুটি দুর্বলতা তৈরি করেছিল এবং এটিকে টিকিয়ে রেখেছিল, যখন এআই এটি খুঁজে বের করা, বুঝতে বা এটি ব্যবহার করার খরচ কমিয়েছে হতে পারে। প্রতিরক্ষাকারীদের প্রতিটি বিপজ্জনক দুর্বলতা শনাক্ত করতে হবে, যখন আক্রমণকারীকে শুধুমাত্র একটি খুঁজে বের করতে হবে।
এই ঘটনাটি ওপেন-সোর্স নিরাপত্তা সম্পর্কিত ধারণাগুলিকেও চ্যালেঞ্জ করে। পাবলিক কোড স্বাধীন বিশেষজ্ঞদের জন্য সফটওয়্যার পরীক্ষা করার অনুমতি দেয়, কিন্তু শুধু উপলব্ধতা নিশ্চিত করে না যে কেউ সঠিক সেকশনটি পরীক্ষা করবে, একটি সূক্ষ্ম ত্রুটি চিনতে পারবে এবং আক্রমণকারী কাজ শুরু করার আগে এটি রিপোর্ট করবে।
কোল্ডকার্ড ব্যবহারকারীদের জন্য, প্রাথমিক অগ্রাধিকার হল তাদের সিড কখন এবং কিভাবে তৈরি হয়েছিল তা নির্ধারণ করা। যে কেউ প্রভাবিত সিড ব্যবহার করেন, তাদের অবশ্যই আনুষ্ঠানিক কোইনকাইট চ্যানেলের মাধ্যমে নির্দেশাবলী যাচাই করতে হবে, সংশোধিত ফার্মওয়্যার ইনস্টল করতে হবে, একটি নতুন সিড তৈরি করতে হবে এবং ফিশিং প্রয়াস এবং মিথ্যা সাপোর্ট বার্তা লক্ষ্য করে সতর্কতার সাথে ফান্ডস স্থানান্তর করতে হবে।
দীর্ঘমেয়াদী প্রশ্নগুলি কতটা বিটকয়েন নেওয়া হয়েছিল, তদন্তকারীদের আক্রমণকারীকে চিহ্নিত করা যায় কিনা, এবং ত্রুটি খুঁজে পাওয়ার ক্ষেত্রে কি কৃত্রিম বুদ্ধিমত্তা কোনো সিদ্ধান্তমূলক ভূমিকা পালন করেছিল তার উপর কেন্দ্রীভূত হবে। হার্ডওয়্যার ওয়ালেট কোম্পানিগুলিকেও এনট্রপি টেস্টিং শক্তিশালী করতে, বিল্ড কনফিগারেশন অডিট করতে এবং মানব বিশেষজ্ঞদের এবং বিরোধী AI টুলগুলির সাহায্যে পুরনো কোড নিয়মিতভাবে পরীক্ষা করতে হবে।
