ओपन-सोर्स AI ची वाढ एका अशा विस्तीर्ण परिसंस्थेत झाली आहे जिथे एकाच उत्पादनासाठी डझनभर रिपॉझिटरीजमधून कोड घेतला जाऊ शकतो, अनेक स्रोतांकडून मिळवलेल्या ट्रेनिंग डेटावर अवलंबून राहता येते आणि अशा विशेष हार्डवेअर कॉन्फिगरेशन्सवर चालवले जाऊ शकते ज्यांचे पूर्ण दस्तऐवजीकरण फार कमी टीम्सनी केले आहे. या डिपेंडेंसीजचा मागोवा ठेवणे कठीण आहे. त्या स्टॅकचे कोणते भाग इंटरनेटवर उघडे (exposed) आहेत हे समजून घेणे त्याहूनही कठीण आहे. Current AI ने प्रसिद्ध केलेला 'Open Source AI Gap Map v0.1' यातून या गोंधळात काही प्रमाणात सुसूत्रता आणण्याचा प्रयत्न केला आहे, आणि सुरक्षा टीम्सनी (security teams) हे अनिवार्य वाचन म्हणून स्वीकारले पाहिजे.
हा इंडेक्स ४२१ ओपन-सोर्स AI उत्पादनांची सूची करतो. त्यांचे चार श्रेणींमध्ये विभाजन केले आहे: AI मॉडेल्स, डेटासेट्स, सॉफ्टवेअर टूल्स आणि हार्डवेअर. अंतर्गत स्वरूपात, संपूर्ण प्रकल्प १,१८४ YAML फाइल्सवर चालतो, ज्या १६,००० हून अधिक GitHub रिपॉझिटरीजचा मागोवा घेतात. ४२१ उत्पादने आणि १६,००० रिपॉझिटरीजमधील हे अंतर स्वतःच एक गोष्ट सांगते. बहुतेक AI ॲप्लिकेशन्स ही स्वयंपूर्ण (self-contained) मोनोलिथ्स नाहीत. ती इन्फरन्स इंजिन्स, फाईन-ट्यूनिंग स्क्रिप्ट्स, डेटा लोडर्स, इव्हॅल्युएशन बेंचमार्क्स आणि ड्रायव्हर लेयर्सची एक रचना (assembly) आहेत, ज्यातील प्रत्येक घटक स्वतःच्या रिपॉझिटरीमध्ये, स्वतःच्या मेंटेनर्स, कमिट हिस्ट्री आणि व्हल्नेरेबिलिटी प्रोफाइल्ससह अस्तित्वात असतो.
Current AI ने हा डेटासेट MIT लायसन्स अंतर्गत प्रकाशित केला आहे आणि तो पूर्णपणे सार्वजनिक केला आहे. ही मोकळीक हाच यामागचा मुख्य उद्देश आहे. कोणीही तो डाउनलोड करू शकतो, YAML पार्स करू शकतो आणि त्यावर आधारित टूल्स तयार करू शकतो. संरक्षकांसाठी (defenders), ही सुलभता एक संधी आहे. हल्लेखोरांसाठी (attackers), ती तितकीच सोयीस्कर आहे.
हे मॅप प्रत्यक्षात काय ट्रॅक करते
AI वापरणाऱ्या बहुतेक संस्थांकडे त्यांनी तैनात केलेल्या (deployed) गोष्टींची स्पष्ट सूची नसते. एखादी टीम एखाद्या लोकप्रिय हबवरून लँग्वेज मॉडेल डाउनलोड करू शकते, ते चालवण्यासाठी काही Python पॅकेजेस इंस्टॉल करू शकते आणि आपले काम पूर्ण झाले असे समजू शकते. परंतु त्या साध्या वर्कफ्लोच्या खाली डिपेंडेंसीजचा एक गुंतागुंतीचा संच असतो. मॉडेल वेट्स (model weights) एका रिपॉझिटरीमधून येतात. टोकेनायझर कॉन्फिगरेशन दुसऱ्यातून येते. इन्फरन्स फ्रेमवर्क हे तिसऱ्या प्रोजेक्टची 'fork' असू शकते. CUDA ड्रायव्हर्स आणि कंटेनर इमेजेस आणखी काही स्रोतांकडून येतात.
Gap Map हे ४२१ वेगवेगळ्या AI उत्पादनांच्या भोवती १,१८४ YAML फाइल्स आयोजित करून हे टिपते. येथे मॅप केलेल्या १६,००० हून अधिक GitHub रिपॉझिटरीज म्हणजे प्रत्यक्ष कोड, कॉन्फिगरेशन्स आणि आर्टिफॅक्ट्स आहेत जे त्या उत्पादनांना कार्यान्वित करतात. नोंदींना मॉडेल्स, डेटासेट्स, सॉफ्टवेअर टूल्स आणि हार्डवेअरमध्ये विभागल्यामुळे, हा इंडेक्स एक मूलभूत प्रश्न विचारतो: तुमच्या सिस्टम्स प्रत्यक्षात या चारपैकी कोणत्या लेयर्सना स्पर्श करतात हे तुम्हाला माहित आहे का?
जर तुम्ही प्रोडक्शनमध्ये ओपन-सोर्स लार्ज लँग्वेज मॉडेल चालवत असाल, तर तुम्ही बहुधा या चारही लेयर्सचा वापर करत आहात. तुम्ही मॉडेल वेट्स आणि आर्किटेक्चरवर अवलंबून असता. तुम्ही प्री-ट्रेनिंग किंवा फाईन-ट्यूनिंगसाठी वापरल्या जाणाऱ्या डेटासेट्सवर अवलंबून असता, जरी तुम्ही ते थेट डाउनलोड केले नसले तरीही. मॉडेलचे रूपांतर (convert), क्वांटाइझ (quantize) किंवा सर्व्ह करण्यासाठी तुम्ही सॉफ्टवेअर टूल्सवर अवलंबून असता. आणि जर तुम्ही GPUs किंवा विशेष अॅक्सिलरेटर्सवर चालवत असाल, तर तुम्ही फर्मवेअर आणि ड्रायव्हर स्टॅक्सवर अवलंबून असता जे हार्डवेअर श्रेणीमध्ये येतात.
सुरक्षेची दुधारी तलवार
हा डेटासेट दोन बाजूंच्या सेवा करतो आणि सुरक्षा नेत्यांनी (security leaders) दोन्ही बाजू समजून घेणे आवश्यक आहे.
बचावात्मक बाजूने (defensive side), Gap Map तुमच्या AI सप्लाय चेनसाठी एका फोन बुकप्रमाणे काम करते. तुम्ही तुमची संस्था ज्या रिपॉझिटरीज आणि टूल्सवर अवलंबून आहे, त्यांची या इंडेक्सशी तुलना करू शकता आणि तुमच्या दृश्यतेमधील (visibility) त्रुटी शोधू शकता. जर एखादी महत्त्वपूर्ण रिपॉझिटरी मॅपमध्ये दिसत असेल परंतु तुमच्या सॉफ्टवेअर बिल ऑफ मटेरियल्समध्ये (software bill of materials) नसेल, तर तुम्हाला बहुधा 'शॅडो AI इन्फ्रास्ट्रक्चर' सापडले आहे. एखादा शत्रू ते शोधण्यापूर्वीच हे जाणून घेणे फायदेशीर आहे.
आक्रमक बाजूने (offensive side), हा डेटासेट माहिती गोळा करण्यासाठी (reconnaissance) अत्यंत उपयुक्त आहे. हल्लेखोर सतत उघड्या AI इन्फ्रास्ट्रक्चर, मॉडेल सर्व्हिंग एंडपॉइंट्स आणि लोकप्रिय ML पाइपलाइन्स मधील असुरक्षित डिपेंडेंसीज शोधत असतात. Gap Map त्यांना त्यांच्या आवडीच्या श्रेणीनुसार संघटित केलेली, मशीन-रीडेबल आणि स्ट्रक्चर्ड लक्ष्यांची यादी देते. एक सिंगल YAML पार्सर हजारो रिपॉझिटरी URLs काढू शकतो आणि तिथून हल्लेखोर ज्ञात असुरक्षितता (vulnerabilities) तपासू शकतात, चुकीच्या पद्धतीने कॉन्फिगर केलेल्या पब्लिक इन्स्टन्सचा शोध घेऊ शकतात किंवा 'dependency confusion' हल्ल्यांसाठी उच्च-मूल्य असलेली लक्ष्ये ओळखू शकतात.
डेटा MIT-लायसन्सकृत आणि सार्वजनिक असल्याने, प्रवेशासाठी कोणताही अडथळा नाही. कोणतेही सबस्क्रिप्शन नाही, कोणतीही मंजुरी प्रक्रिया नाही. हा डिझाइन निर्णय संशोधक आणि संरक्षकांसाठी उपयुक्तता वाढवतो, परंतु तो धोक्याच्या घटकांसाठी (threat actors) देखील उपयुक्तता वाढवतो. तुम्हाला तुमचे स्टॅक सुरक्षित करण्यास मदत करणारी तीच फाईल दुसऱ्याला लक्ष्यांची यादी तयार करण्यास मदत करते.
या माहितीचा वापर कसा करावा
या डेटासेटकडे अगदी एखाद्या 'threat intelligence feed' प्रमाणे वागा. तो बुकमार्क करून विसरून जाऊ नका. तुमच्या वातावरणाविरुद्ध (environment) सक्रिय तपासणी (active check) करा.
तुमच्या टीम्स सध्या वापरत असलेल्या प्रत्येक ओपन-सोर्स AI घटकांची (component) यादी मिळवून सुरुवात करा. केवळ स्पष्ट दिसणाऱ्या गोष्टींपुरते मर्यादित न राहता त्यापलीकडे पहा. तुमचे tokenizers, evaluation scripts, quantization libraries आणि container base images कोणत्या repositories कडून पुरवले जातात, हे विचारा. त्यानंतर, Gap Map मध्ये ट्रॅक केलेल्या १६,००० repositories सोबत त्या repositories ची पडताळणी करा. जर तुम्हाला मॅचेस सापडले, तर याचा अर्थ असा की तुमचे dependencies ओपन-सोर्स AI जगातील सर्वात प्रमुखपणे इंडेक्स केलेल्या कोपऱ्यांपैकी एका भागात आहेत, याची तुम्ही खात्री केली आहे. ही प्रमुखता दोन्ही बाजूंनी परिणामकारक ठरू शकते. याचा अर्थ सहसा सक्रिय देखभाल (active maintenance) आणि समुदायाचे निरीक्षण (community scrutiny) असा होतो, परंतु याचा अर्थ असा देखील आहे की हल्लेखोरांना (attackers) या repositories बद्दल माहिती आहे.
त्यानंतर, स्वतः YAML स्ट्रक्चरकडे पहा. १,१८४ पैकी प्रत्येक फाईल उत्पादनांना त्यांच्या मूळ repositories शी एका प्रमाणित (standardized) फॉरमॅटमध्ये जोडते. तुम्ही तुमच्या dependency manifests, package lists किंवा SBOM exports ची या मॅपिंगशी तुलना करण्यासाठी एक साधा स्क्रिप्ट लिहू शकता. जर तुम्हाला असे आढळले की तुमचा production stack अशा repositories वर अवलंबून आहे ज्याबद्दल तुम्ही कधीही ऐकले नाहीये, तर अधिक सखोल तपासणी करा. अज्ञात dependencies मध्येच supply chain attacks लपलेले असतात.
हार्डवेअर लेयरकडे (hardware layer) विशेष लक्ष द्या. सुरक्षा टीम्स अनेकदा सॉफ्टवेअर आणि मॉडेल्सवर लक्ष केंद्रित करतात, तर drivers आणि firmware ला पार्श्वभूमीतील गोंगाट (background noise) मानून दुर्लक्षित करतात. Gap Map मध्ये हार्डवेअरशी संबंधित repositories स्पष्टपणे इंडेक्स केल्या आहेत, ज्यामुळे तुम्हाला याची आठवण झाली पाहिजे की GPU driver stacks, compiler toolchains आणि accelerator firmware हे देखील कोडच आहेत. त्यामध्ये बग्स (bugs) असू शकतात. ते अपडेट केले जातात. आणि जेव्हा ते जुने (out of date) होतात, तेव्हा ते तुमच्या पाइपलाइनमधील सर्वात कमकुवत लक्ष्य (softest target) ठरू शकतात.
शेवटी,
