AI কোডিং সিকিউরিটি: আপনার প্রজেক্ট ফাইলগুলোর মধ্যেই লুকিয়ে আছে প্রম্পট ইনজেকশন

আপনার AI কোডিং অ্যাসিস্ট্যান্ট আপনার রিপোজিটরির প্রতিটি ফাইল পড়ে। এটি আপনার README, আপনার কনফিগ ফাইল এবং আপনার নিয়মাবলী (rules) পড়ে। কোড কীভাবে লিখতে হবে তা নির্ধারণ করতে এটি এই ফাইলগুলো ব্যবহার করে।

একটি নতুন সিকিউরিটি থ্রেট ঠিক এই আচরণটিকেই কাজে লাগায়। গবেষকরা ২৮টি ভিন্ন ভিন্ন AI কোডিং টুলে একটি দুর্বলতা খুঁজে পেয়েছেন। এই আক্রমণটি কোনো জটিল হ্যাকিং নয়। এটি আপনার রিপোজিটরিতে থাকা একটি সাধারণ টেক্সট ফাইল মাত্র।

আক্রমণটি যেভাবে কাজ করে:

আপনি একটি ওপেন-সোর্স প্রজেক্ট ক্লোন করলেন। এটি দেখতে একদম স্বাভাবিক মনে হয়। আপনি এটি আপনার AI এডিটরে ওপেন করলেন এবং একটি নতুন ফিচারের জন্য অনুরোধ করলেন। কনফিগারেশন ফাইলগুলোতে থাকা লুকানো ইউনিকোড (Unicode) ক্যারেক্টারগুলো আপনি দেখতে পান না। এই ক্যারেক্টারগুলো আপনার কাছ থেকে নির্দেশাবলী লুকিয়ে রাখে কিন্তু AI-কে অন্য কিছু করার নির্দেশ দেয়।

সেই লুকানো নির্দেশটি AI-কে আপনার AWS ক্রেডেনশিয়ালগুলো (credentials) একটি এক্সটার্নাল সার্ভারে পাঠিয়ে দিতে বলে। AI মনে করে এটি প্রজেক্টের একটি বৈধ নির্দেশ। এটি কমান্ডটি কার্যকর করে ফেলে। আর এভাবেই আপনার গোপন তথ্য বা সিক্রেটগুলো চুরি হয়ে যায়।

এটি থামানো কেন কঠিন:

  • লুকানো ক্যারেক্টার: আপনি সাধারণ টেক্সট দেখতে পান, কিন্তু AI অদৃশ্য ইউনিকোড ক্যারেক্টারের মাধ্যমে ক্ষতিকারক কমান্ড দেখতে পায়।
  • প্রতিটি ফাইলই একটি এন্ট্রি পয়েন্ট: একটি README বা কোনো লাইব্রেরির কমেন্টও পেলোড (payload) বহন করতে পারে।
  • উচ্চতর পারমিশন: AI এজেন্টগুলো প্রায়ই আপনার ইউজার পারমিশন নিয়ে কাজ করে। তারা আপনার SSH কী এবং API টোকেন পড়তে পারে।
  • টুল কলস (Tool calls): কমান্ড চালানোর জন্য AI টুল কলস ব্যবহার করে। এই আক্রমণটি সেফটি ট্রেনিং বাইপাস করার জন্য এই কলগুলোকে লক্ষ্য করে।

আপনার ওয়ার্কফ্লো কীভাবে সুরক্ষিত রাখবেন:

  • ফাইলের বিষয়বস্তু স্যানিটাইজ করুন: AI ফাইলগুলো পড়ার আগেই লুকানো ক্যারেক্টার এবং সাধারণ ইনজেকশন প্যাটার্নগুলো সরিয়ে ফেলুন।
  • স্যান্ডবক্স ব্যবহার করুন: AI এজেন্টগুলোকে এমন কন্টেইনারে চালান যেগুলোর কোনো নেটওয়ার্ক অ্যাক্সেস নেই এবং ফাইল সিস্টেম শুধুমাত্র 'read-only'।
  • কঠোর নীতিমালা নির্ধারণ করুন: অনুমোদিত কমান্ডের একটি হোয়াইটলিস্ট (whitelist) তৈরি করুন। যে কোনো কমান্ড যা ডেটা মুভ করে বা ফাইল ডিলিট করে, তার জন্য মানুষের অনুমোদন বাধ্যতামূলক করুন।

কোডিং সেশনের আগে আপনি একটি দ্রুত স্ক্যান চালাতে পারেন। আপনার ফাইলগুলোতে "ignore all previous" অথবা "curl" এবং "exfil"-এর মতো সন্দেহজনক শব্দ আছে কি না তা পরীক্ষা করে দেখুন।

AI কোডিং টুলগুলো কাজের গতি বাড়ালেও, এগুলো ধরে নেয় যে আপনার ডিস্কের ফাইলগুলো নিরাপদ। কিন্তু সেগুলো নিরাপদ নয়। প্রতিটি ফাইলকেই একটি অনির্ভরযোগ্য ইনপুট হিসেবে বিবেচনা করুন।

আপনি আপনার AI ওয়ার্কফ্লোতে প্রম্পট ইনজেকশনের ঝুঁকি কীভাবে মোকাবিলা করছেন?

উৎস: https://dev.to/tyson_cung/ai-coding-security-prompt-injection-is-hiding-in-your-project-files-4be9