AI कोडिंग सुरक्षा: प्रॉम्प्ट इंजेक्शन तुमच्या प्रोजेक्ट फाइल्समध्ये लपलेले आहे
तुमचा AI कोडिंग असिस्टंट तुमच्या रिपॉझिटरीमधील प्रत्येक फाईल वाचतो. तो तुमचे README, तुमच्या कॉन्फिग फाइल्स आणि तुमचे नियम वाचतो. कोड कसा लिहायचा हे ठरवण्यासाठी तो या फाइल्सचा वापर करतो.
एक नवीन सुरक्षा धोका नेमक्या याच वर्तणुकीचा फायदा घेतो. संशोधकांना २८ वेगवेगळ्या AI कोडिंग टूल्समध्ये एक त्रुटी (vulnerability) आढळली आहे. हा हल्ला कोणताही गुंतागुंतीचा हॅक नाही. तो तुमच्या रिपॉझिटरीमधील एक साधी टेक्स्ट फाईल आहे.
हा हल्ला कसा काम करतो:
तुम्ही एखादा ओपन-सोर्स प्रोजेक्ट क्लोन करता. तो सामान्य दिसतो. तुम्ही तो तुमच्या AI एडिटरमध्ये उघडता आणि नवीन फीचरसाठी विचारता. कॉन्फिगरेशन फाइल्समधील लपलेले युनिकोड (Unicode) कॅरेक्टर्स तुम्हाला दिसत नाहीत. हे कॅरेक्टर्स तुमच्यापासून सूचना लपवतात पण AI ला दुसरे काहीतरी करण्यास सांगतात.
ही लपलेली सूचना AI ला तुमचे AWS क्रेडेंशियल्स (credentials) बाह्य सर्व्हरवर पाठवण्यास सांगते. AI ला वाटते की ही प्रकल्पाची एक कायदेशीर सूचना आहे. ते कमांड कार्यान्वित करते आणि तुमची गुपिते (secrets) चोरीला जातात.
हे थांबवणे कठीण का आहे:
- लपलेले कॅरेक्टर्स: तुम्हाला सामान्य मजकूर दिसतो, परंतु AI अदृश्य युनिकोड कॅरेक्टर्सद्वारे घातक कमांड्स पाहतो.
- प्रत्येक फाईल हा एक एन्ट्री पॉईंट आहे: README किंवा लायब्ररीमधील एखादी कमेंट 'पेलोड' (payload) वाहून नेऊ शकते.
- उच्च परवानग्या (High permissions): AI एजंट्स अनेकदा तुमच्या युजर परवानग्यांसह चालतात. ते तुमच्या SSH की आणि API टोकन्स वाचू शकतात.
- टूल कॉल्स (Tool calls): कमांड्स चालवण्यासाठी AI टूल कॉल्सचा वापर करते. सुरक्षा प्रशिक्षणाला बगल देण्यासाठी हा हल्ला या कॉल्सना लक्ष्य करतो.
तुमच्या वर्कफ्लोचे संरक्षण कसे करावे:
- फाईल कंटेंट सॅनिटाइज करा: AI ने ते वाचण्यापूर्वी लपलेले कॅरेक्टर्स आणि सामान्य इंजेक्शन पॅटर्न काढून टाका.
- सँडबॉक्सचा (sandboxes) वापर करा: AI एजंट्सना नेटवर्क ॲक्सेस नसलेल्या आणि 'रीड-ओन्ली' (read-only) फाईलसिस्टम असलेल्या कंटेनर्समध्ये चालवा.
- कडक धोरणे सेट करा: परवानगी असलेल्या कमांड्सची व्हाईटलिस्ट (whitelist) तयार करा. डेटा हलवणाऱ्या किंवा फाईल्स डिलीट करणाऱ्या कोणत्याही कमांडसाठी मानवी मंजुरी अनिवार्य करा.
तुम्ही तुमच्या कोडिंग सेशनपूर्वी जलद स्कॅन करू शकता. तुमच्या फाइल्समध्ये "ignore all previous" किंवा "curl" आणि "exfil" सारख्या संशयास्पद शब्दांची तपासणी करा.
AI कोडिंग टूल्स उत्पादक आहेत, परंतु ते तुमच्या डिस्कवरील फाइल्स सुरक्षित आहेत असे गृहीत धरतात. त्या तशा नसतात. प्रत्येक फाईलकडे 'अविश्वसनीय इनपुट' (untrusted input) म्हणून पहा.
तुम्ही तुमच्या AI वर्कफ्लोमध्ये प्रॉम्प्ट इंजेक्शनच्या जोखमींना कसे हाताळत आहात?
स्रोत: https://dev.to/tyson_cung/ai-coding-security-prompt-injection-is-hiding-in-your-project-files-4be9
