ওপেন-সোর্স AI একটি বিশাল ইকোসিস্টেমে পরিণত হয়েছে যেখানে একটি মাত্র প্রোডাক্ট ডজন ডজন রিপোজিটরি থেকে কোড নিতে পারে, একাধিক উৎস থেকে ট্রেনিং ডেটার ওপর নির্ভর করতে পারে এবং এমন বিশেষায়িত হার্ডওয়্যার কনফিগারেশনে চলতে পারে যা খুব কম টিমই পুরোপুরি ডকুমেন্ট করে। এই ডিপেন্ডেন্সিগুলো ট্র্যাক করা কঠিন। সেই স্ট্যাকের কোন অংশগুলো ইন্টারনেটে উন্মুক্ত তা বোঝা আরও কঠিন। Current AI-এর 'Open Source AI Gap Map v0.1' প্রকাশ এই বিশৃঙ্খলাকে কিছুটা সুশৃঙ্খল করার চেষ্টা করছে, এবং সিকিউরিটি টিমগুলোর এটি আবশ্যিক পাঠ হিসেবে বিবেচনা করা উচিত।

এই ইনডেক্সটি ৪২১টি ওপেন-সোর্স AI প্রোডাক্টকে তালিকাভুক্ত করে। এটি সেগুলোকে চারটি ভাগে ভাগ করেছে: AI মডেল, ডেটাসেট, সফটওয়্যার টুলস এবং হার্ডওয়্যার। এর গভীরে, পুরো প্রজেক্টটি ১,১৮৪টি YAML ফাইলের ওপর ভিত্তি করে চলে যা ১৬,০০০-এরও বেশি GitHub রিপোজিটরি ট্র্যাক করে। ৪২১টি প্রোডাক্ট এবং ১৬,০০০টি রিপোজিটরির মধ্যকার এই ব্যবধান নিজেই একটি গল্প বলে। বেশিরভাগ AI অ্যাপ্লিকেশন একক বা স্বয়ংসম্পূর্ণ মনোলিথ নয়। এগুলো হলো ইনফারেন্স ইঞ্জিন, ফাইন-টিউনিং স্ক্রিপ্ট, ডেটা লোডার, ইভালুয়েশন বেঞ্চমার্ক এবং ড্রাইভার লেয়ারের সমষ্টি, যার প্রতিটি নিজস্ব রিপোজিটরি, মেইনটেইনার, কমিট হিস্ট্রি এবং ভালনারেবিলিটি প্রোফাইল নিয়ে টিকে আছে।

Current AI এই ডেটাসেটটি MIT লাইসেন্সের অধীনে প্রকাশ করেছে এবং এটিকে সম্পূর্ণভাবে পাবলিক করেছে। এই উন্মুক্ততাই হলো মূল উদ্দেশ্য। যে কেউ এটি ডাউনলোড করতে পারে, YAML পার্স করতে পারে এবং এর ওপর ভিত্তি করে টুলিং তৈরি করতে পারে। ডিফেন্ডারদের জন্য এই অ্যাক্সেসিবিলিটি একটি সুযোগ। অন্যদিকে আক্রমণকারীদের জন্য এটি সমানভাবে সুবিধাজনক।

এই ম্যাপ আসলে কী ট্র্যাক করে

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

Gap Map এই বিষয়টি ১,১৮৪টি YAML ফাইলকে ৪২১টি স্বতন্ত্র AI প্রোডাক্টের চারপাশে সাজানোর মাধ্যমে ধারণ করে। এখানে ম্যাপ করা ১৬,০০০-এরও বেশি GitHub রিপোজিটরি সেই প্রকৃত কোড, কনফিগারেশন এবং আর্টিফ্যাক্টগুলোকে উপস্থাপন করে যা সেই প্রোডাক্টগুলোকে কার্যকর করে। এন্ট্রিগুলোকে মডেল, ডেটাসেট, সফটওয়্যার টুলস এবং হার্ডওয়্যারে বিভক্ত করার মাধ্যমে এই ইনডেক্সটি একটি মৌলিক প্রশ্ন উত্থাপন করে: আপনি কি জানেন আপনার সিস্টেমগুলো আসলে এই চারটি স্তরের কোনটির সাথে যুক্ত?

আপনি যদি প্রোডাকশনে একটি ওপেন-সোর্স লার্জ ল্যাঙ্গুয়েজ মডেল চালান, তবে আপনি সম্ভবত এই চারটি স্তরের সাথেই যুক্ত আছেন। আপনি মডেল ওয়েট এবং আর্কিটেকচারের ওপর নির্ভর করেন। আপনি প্রি-ট্রেনিং বা ফাইন-টিউনিংয়ের জন্য ব্যবহৃত ডেটাসেটের ওপর নির্ভর করেন, এমনকি যদি আপনি সেগুলো সরাসরি ডাউনলোড না-ও করেন। আপনি মডেলটি কনভার্ট, কোয়ান্টাইজ বা সার্ভ করার জন্য সফটওয়্যার টুলসের ওপর নির্ভর করেন। আর আপনি যদি GPU বা বিশেষায়িত অ্যাক্সিলারেটরে চালান, তবে আপনি ফার্মওয়্যার এবং ড্রাইভার স্ট্যাকের ওপর নির্ভর করেন যা হার্ডওয়্যার ক্যাটাগরির অন্তর্ভুক্ত।

সিকিউরিটির দ্বি-ধারী তলোয়ার

এই ডেটাসেটটি দুটি ভিন্ন উদ্দেশ্যে কাজ করে, এবং সিকিউরিটি লিডারদের উভয় দিকই বোঝা প্রয়োজন।

ডিফেন্সিভ বা প্রতিরক্ষামূলক দিক থেকে, Gap Map আপনার AI সাপ্লাই চেইনের জন্য একটি ফোন বুকের মতো কাজ করে। আপনার সংস্থা যে রিপোজিটরি এবং টুলগুলোর ওপর নির্ভর করে, সেগুলোকে এই ইনডেক্সের সাথে তুলনা করে আপনি আপনার ভিজিবিলিটির ঘাটতিগুলো চিহ্নিত করতে পারেন। যদি কোনো গুরুত্বপূর্ণ রিপোজিটরি ম্যাপে দেখা যায় কিন্তু আপনার সফটওয়্যার বিল অফ মেটেরিয়ালসে না থাকে, তবে আপনি সম্ভবত একটি শ্যাডো AI ইনফ্রাস্ট্রাকচার খুঁজে পেয়েছেন। কোনো প্রতিপক্ষ এটি খুঁজে বের করার আগেই এটি জানা অত্যন্ত জরুরি।

অফেন্সিভ বা আক্রমণাত্মক দিক থেকে, এই ডেটাসেটটি রিকনাইসেন্সের জন্য একটি সোনার খনি। আক্রমণকারীরা ক্রমাগত উন্মুক্ত AI ইনফ্রাস্ট্রাকচার, মডেল সার্ভিং এন্ডপয়েন্ট এবং জনপ্রিয় ML পাইপলাইনে থাকা দুর্বল ডিপেন্ডেন্সিগুলো স্ক্যান করে। Gap Map তাদের একটি মেশিন-রিডেবল এবং স্ট্রাকচার্ড টার্গেট লিস্ট প্রদান করে যা ঠিক সেই ক্যাটাগরি অনুযায়ী সাজানো যা তাদের প্রয়োজন। একটি মাত্র YAML পার্সার হাজার হাজার রিপোজিটরি URL বের করে আনতে পারে, এবং সেখান থেকে একজন আক্রমণকারী পরিচিত ভালনারেবিলিটিগুলো ক্রস-রেফারেন্স করতে পারে, ভুলভাবে কনফিগার করা পাবলিক ইনস্ট্যান্স খুঁজতে পারে, অথবা ডিপেন্ডেন্সি কনফিউশন অ্যাটাকের জন্য উচ্চ-মূল্যের টার্গেট শনাক্ত করতে পারে।

যেহেতু ডেটাটি MIT-লাইসেন্সপ্রাপ্ত এবং পাবলিক, তাই এতে প্রবেশের কোনো বাধা নেই। কোনো সাবস্ক্রিপশন নেই, কোনো অনুমোদন প্রক্রিয়া নেই। এই ডিজাইন চয়েসটি গবেষক এবং ডিফেন্ডারদের জন্য উপযোগিতা বাড়ায়, কিন্তু এটি থ্রেট অ্যাক্টরদের জন্যও সমানভাবে কার্যকর। যে ফাইলটি আপনাকে আপনার স্ট্যাক সুরক্ষিত করতে সাহায্য করে, সেটি অন্য কাউকে একটি টার্গেট লিস্ট তৈরি করতেও সাহায্য করে।

এই তথ্য দিয়ে কী করবেন

এই ডেটাসেটটিকে ঠিক সেভাবেই বিবেচনা করুন যেভাবে আপনি একটি থ্রেট ইন্টেলিজেন্স ফিডকে বিবেচনা করেন। এটি বুকমার্ক করে ভুলে যাবেন না। আপনার এনভায়রনমেন্টের বিরুদ্ধে একটি সক্রিয় পরীক্ষা চালান।

আপনার টিম বর্তমানে যে সমস্ত ওপেন-সোর্স AI কম্পোনেন্ট ব্যবহার করছে, তার একটি তালিকা তৈরি করার মাধ্যমে শুরু করুন। শুধুমাত্র দৃশ্যমান বিষয়গুলোর মধ্যেই সীমাবদ্ধ থাকবেন না। জিজ্ঞাসা করুন কোন রিপোজিটরিগুলো আপনার tokenizer, evaluation script, quantization library এবং container base image সরবরাহ করছে। তারপর Gap Map-এ ট্র্যাক করা ১৬,০০০টি রিপোজিটরির সাথে সেই রিপোজিটরিগুলো মিলিয়ে দেখুন। যদি আপনি মিল খুঁজে পান, তবে আপনি নিশ্চিত হলেন যে আপনার ডিপেন্ডেন্সিগুলো ওপেন-সোর্স AI জগতের অন্যতম প্রধান ইনডেক্স করা কোণগুলোর একটিতে রয়েছে। এই পরিচিতি বা প্রাধান্য দুই ধরনের ফলাফল বয়ে আনতে পারে। এর মানে সাধারণত হলো সক্রিয় রক্ষণাবেক্ষণ এবং কমিউনিটির নজরদারি, তবে এর মানে এটাও যে আক্রমণকারীরা জানে এই রিপোজিটরিগুলোর অস্তিত্ব আছে।

এরপর, YAML স্ট্রাকচারটির দিকে নজর দিন। ১,১৮৪টি ফাইলের প্রতিটি একটি স্ট্যান্ডার্ড ফরম্যাটে প্রোডাক্টগুলোকে তাদের অন্তর্নিহিত রিপোজিটরির সাথে সংযুক্ত করে। আপনি আপনার dependency manifest, package list বা SBOM export-গুলোকে এই ম্যাপিংয়ের সাথে তুলনা করার জন্য একটি সাধারণ স্ক্রিপ্ট লিখতে পারেন। যদি আপনি দেখেন যে আপনার প্রোডাকশন স্ট্যাক এমন কিছু রিপোজিটরির ওপর নির্ভরশীল যা সম্পর্কে আপনি আগে কখনও শোনেননি, তবে আরও গভীরভাবে অনুসন্ধান করুন। অজানা ডিপেন্ডেন্সিগুলোই হলো সেই জায়গা যেখানে সাপ্লাই চেইন অ্যাটাকগুলো লুকিয়ে থাকে।

হার্ডওয়্যার লেয়ারের দিকে বিশেষ নজর দিন। সিকিউরিটি টিমগুলো প্রায়শই সফটওয়্যার এবং মডেলের ওপর মনোযোগ দেয়, আর ড্রাইভার এবং ফার্মওয়্যারকে গুরুত্বহীন বা ব্যাকগ্রাউন্ড নয়েজ হিসেবে গণ্য করে। Gap Map স্পষ্টভাবে হার্ডওয়্যার-সম্পর্কিত রিপোজিটরিগুলোকে ইনডেক্স করে, যা আপনাকে মনে করিয়ে দেবে যে GPU driver stack, compiler toolchain এবং accelerator firmware-ও আসলে কোড। এগুলোতে বাগ থাকতে পারে। এগুলো আপডেট করা হয়। আর যখন এগুলো পুরনো হয়ে যায়, তখন এগুলো আপনার পাইপলাইনের সবচেয়ে সহজ লক্ষ্যবস্তুতে পরিণত হতে পারে।

পরিশেষে, ব্যবহার করুন