AI بوٹس سوفٹ ویئر پیکجوں کو دھوکہ دیتے ہیں اور devs انہیں ڈاؤن لوڈ کرتے ہیں۔

AI بوٹس سوفٹ ویئر پیکجوں کو دھوکہ دیتے ہیں اور devs انہیں ڈاؤن لوڈ کرتے ہیں۔

AI bots hallucinate software packages and devs download them PlatoBlockchain Data Intelligence. Vertical Search. Ai.

گہری کئی بڑے کاروباروں نے سورس کوڈ شائع کیا ہے جس میں ایک سافٹ ویئر پیکج شامل کیا گیا ہے جو پہلے جنریٹو AI کے ذریعے فریب کیا گیا تھا۔

نہ صرف یہ بلکہ کسی کو، ہونا یہ دیکھا دوبارہ پیدا ہونے والے فریب کاری نے اس ساختہ انحصار کو حقیقی میں تبدیل کر دیا تھا، جسے بعد میں AI کے غلط مشورے کے نتیجے میں ڈویلپرز کے ذریعے ہزاروں بار ڈاؤن لوڈ اور انسٹال کیا گیا، ہم نے سیکھا ہے۔ اگر پیکج ایک سومی ٹیسٹ ہونے کے بجائے اصل مالویئر سے لیس ہوتا تو نتائج تباہ کن ہو سکتے تھے۔

لاسو سیکیورٹی کے سیکیورٹی ریسرچر بار لانیاڈو کے مطابق، پیکیج کو شامل کرنے کے لیے اے آئی کے ذریعے بے وقوف بنانے والے کاروباروں میں سے ایک علی بابا ہے، جس میں تحریر کے وقت بھی شامل ہے۔ pip کمانڈ Python پیکج ڈاؤن لوڈ کرنے کے لیے huggingface-cli اس میں گراف ٹرانسلیٹر انسٹالیشن کی ہدایات.

ایک جائز ہے۔ گلے ملنے والا چہرہکا استعمال کرتے ہوئے انسٹال کیا گیا ہے۔ pip install -U "huggingface_hub[cli]".

لیکن huggingface-cli Python Package Index (PyPI) کے ذریعے تقسیم کیا گیا اور علی بابا کے گراف ٹرانسلیٹر کے ذریعہ مطلوب ہے - استعمال کرتے ہوئے انسٹال pip install huggingface-cli - جعلی ہے، جس کا تصور AI نے کیا ہے اور ایک تجربے کے طور پر لانیاڈو نے اسے اصلی بنا دیا ہے۔

اس نے تخلیق کیا huggingface-cli دسمبر میں اسے بار بار جنریٹو AI کے ذریعے فریب نظر آنے کے بعد؛ اس سال فروری تک، علی بابا حقیقی Hugging Face CLI ٹول کے بجائے گراف ٹرانسلیٹر کی README ہدایات میں اس کا حوالہ دے رہا تھا۔

مطالعہ

لانیاڈو نے یہ دریافت کرنے کے لیے کیا کہ آیا اس قسم کے ہیلوسینیٹڈ سافٹ ویئر پیکجز - جنریٹیو AI ماڈلز کے ذریعے ایجاد کردہ پیکیج کے نام، ممکنہ طور پر پروجیکٹ کی ترقی کے دوران - وقت کے ساتھ ساتھ برقرار رہتے ہیں اور یہ جانچنے کے لیے کہ آیا ایجاد کردہ پیکیج کے ناموں کو آپٹ کیا جا سکتا ہے اور اصل لکھ کر بدنیتی پر مبنی کوڈ کو تقسیم کرنے کے لیے استعمال کیا جا سکتا ہے۔ پیکیجز جو کوڈ کے ناموں کا استعمال کرتے ہیں جن کا خواب AIs نے دیکھا تھا۔

یہاں خیال یہ ہے کہ کوئی مذموم شخص ماڈلز سے کوڈ کے مشورے کے لیے پوچھ سکتا ہے، AI سسٹمز کی جانب سے بار بار تجویز کیے گئے تصوراتی پیکجوں کا ایک نوٹ بنا سکتا ہے، اور پھر ان انحصارات کو لاگو کر سکتا ہے تاکہ دوسرے پروگرامرز، جب وہی ماڈل استعمال کرتے ہوئے اور وہی تجاویز حاصل کرتے ہوں، تو اس میں شامل ہو جائیں۔ وہ لائبریریاں، جو میلویئر سے زہر آلود ہو سکتی ہیں۔

پچھلے سال، سیکورٹی فرم Vulcan Cyber ​​کے ذریعے، Lanyado شائع تحقیق جس میں یہ بتایا گیا ہے کہ کس طرح کوئی ChatGPT جیسے AI ماڈل پر کوڈنگ کا سوال کھڑا کر سکتا ہے اور ایک ایسا جواب حاصل کر سکتا ہے جو سافٹ ویئر لائبریری، پیکیج، یا فریم ورک کے استعمال کی سفارش کرتا ہے جو موجود نہیں ہے۔

"جب کوئی حملہ آور اس طرح کی مہم چلاتا ہے، تو وہ ماڈل سے ایسے پیکجوں کے بارے میں پوچھے گا جو کوڈنگ کا مسئلہ حل کرتے ہیں، پھر اسے کچھ ایسے پیکیج ملیں گے جو موجود نہیں ہیں،" لانیاڈو نے وضاحت کی۔ رجسٹر. "وہ انہی ناموں کے ساتھ بدنیتی پر مبنی پیکجز کو مناسب رجسٹریوں میں اپ لوڈ کرے گا، اور اس وقت سے، اسے صرف یہ کرنا ہے کہ لوگ پیکجز کو ڈاؤن لوڈ کرنے کا انتظار کریں۔"

خطرناک مفروضے۔

اعتماد کے ساتھ AI ماڈلز کی رضامندی۔ غیر موجود عدالتی مقدمات کا حوالہ دیں۔ اب اچھی طرح سے جانا جاتا ہے اور اس رجحان سے ناواقف وکلاء کے درمیان شرمندگی کی کوئی چھوٹی سی وجہ نہیں ہے۔ اور جیسا کہ یہ پتہ چلتا ہے، تخلیقی AI ماڈلز سافٹ ویئر پیکجوں کے لیے بھی ایسا ہی کریں گے۔

جیسا کہ لانیاڈو نے پہلے نوٹ کیا تھا، ایک بدمعاش کسی ذخیرے میں اپ لوڈ کردہ بدنیتی پر مبنی پیکیج کے لیے AI کا ایجاد کردہ نام استعمال کر سکتا ہے اس امید پر کہ دوسرے میلویئر ڈاؤن لوڈ کر سکتے ہیں۔ لیکن اس کے لیے ایک بامعنی حملہ کرنے والا ویکٹر بننے کے لیے، AI ماڈلز کو بار بار مشترکہ نام تجویز کرنے کی ضرورت ہوگی۔

یہی ہے جو لینیاڈو نے جانچنے کے لئے تیار کیا ہے۔ ہزاروں "کیسے کریں" سوالات سے لیس، اس نے پانچ مختلف پروگرامنگ زبانوں/رن ٹائمز (Python، Node.js, Go, .Net، اور Ruby)، جن میں سے ہر ایک کا اپنا پیکیجنگ سسٹم ہے۔

اس سے پتہ چلتا ہے کہ یہ چیٹ بوٹس پتلی ہوا سے نکالے گئے ناموں کا ایک حصہ مستقل ہیں، کچھ مختلف ماڈلز میں۔ اور استقامت - فرضی نام کی تکرار - AI کے سنکی کو ایک فعال حملے میں تبدیل کرنے کی کلید ہے۔ حملہ آور کو AI ماڈل کی ضرورت ہوتی ہے کہ وہ صارفین کو ان ناموں کے تحت بنائے گئے میلویئر کے جوابات میں فریب شدہ پیکجوں کے ناموں کو دہرائے اور ڈاؤن لوڈ کیے جائیں۔

لینیاڈو نے صفر شاٹ ہیلوسینیشن کے لیے بے ترتیب طور پر 20 سوالات کا انتخاب کیا، اور انہیں ہر ماڈل کے سامنے 100 بار پوز کیا۔ اس کا مقصد یہ اندازہ لگانا تھا کہ فریب شدہ پیکیج کا نام کتنی بار ایک جیسا رہا۔ اس کے ٹیسٹ کے نتائج سے پتہ چلتا ہے کہ نام مستقل طور پر اس کے لیے کافی ہوتے ہیں کہ یہ ایک فعال حملہ آور ویکٹر ہے، اگرچہ ہر وقت نہیں، اور کچھ پیکیجنگ ماحولیاتی نظام میں دوسروں سے زیادہ۔

GPT-4 کے ساتھ، 24.2 فیصد سوالات کے جوابات نے ہیلوسینیٹڈ پیکجز تیار کیے، جن میں سے 19.6 فیصد دہرائے گئے، لانیاڈو کے مطابق۔ کو ایک میز فراہم کی گئی۔ رجسٹرذیل میں، GPT-4 جوابات کی مزید تفصیلی بریک ڈاؤن دکھاتا ہے۔

  ازگر نوڈ جے جے۔ روبی .NET Go
کل سوالات 21340 13065 4544 5141 3713
کم از کم ایک ہیلوسینیشن پیکیج والے سوالات 5347 (25٪) 2524 (19.3٪) 1072 (23.5٪) 1476 (28.7%) 1093 استحصالی (21.2%) 1150 (30.9%) 109 استحصالی (2.9%)
صفر شاٹ میں ہیلوسینیشن 1042 (4.8٪) 200 (1.5٪) 169 (3.7٪) 211 (4.1%) 130 استحصالی (2.5%) 225 (6%) 14 استحصالی (0.3%)
دوسرے شاٹ میں ہیلوسینیشن 4532 (21٪) 2390 (18.3٪) 960 (21.1٪) 1334 (25.9%) 1006 استحصالی (19.5%) 974 (26.2%) 98 استحصالی (2.6%)
صفر شاٹ میں تکرار 34.4٪ 24.8٪ 5.2٪ 14٪ -

GPT-3.5 کے ساتھ، 22.2 فیصد سوالوں کے جوابات نے فریب کاری کو جنم دیا، 13.6 فیصد تکرار کے ساتھ۔ جیمنی کے لیے، 64.5 سوالات نے ایجاد کردہ نام لیے، جن میں سے کچھ 14 فیصد دہرائے گئے۔ اور Cohere کے لیے، یہ 29.1 فیصد ہیلوسینیشن، 24.2 فیصد تکرار تھی۔

اس کے باوجود، Go اور .Net میں پیکیجنگ ماحولیاتی نظام ایسے طریقوں سے بنائے گئے ہیں جو حملہ آوروں کو مخصوص راستوں اور ناموں تک رسائی سے انکار کرکے استحصال کی صلاحیت کو محدود کرتے ہیں۔

"Go اور .Net میں ہمیں hallucinated پیکیجز موصول ہوئے لیکن ان میں سے بہت سے حملے کے لیے استعمال نہیں کیے جا سکے (Go میں نمبرز .Net کے مقابلے میں بہت زیادہ اہم تھے)، ہر زبان اپنی اپنی وجہ سے،" لانیاڈو نے وضاحت کی۔ رجسٹر. "Python اور npm میں ایسا نہیں ہے، جیسا کہ ماڈل ہمیں ایسے پیکجوں کے ساتھ تجویز کرتا ہے جو موجود نہیں ہیں اور کوئی بھی چیز ہمیں ان ناموں کے ساتھ پیکجز اپ لوڈ کرنے سے نہیں روکتی، اس لیے یقینی طور پر زبانوں پر اس قسم کے حملے کو چلانا بہت آسان ہے۔ Python اور Node.js۔"

سیڈنگ پی او سی میلویئر

لانیاڈو نے تصور کے ثبوت کے میلویئر کو تقسیم کر کے یہ نقطہ بنایا - Python ماحولیاتی نظام میں فائلوں کا ایک بے ضرر سیٹ۔ چلانے کے لیے ChatGPT کے مشورے کی بنیاد پر pip install huggingface-cli، اس نے اسی نام سے ایک خالی پیکج PyPI پر اپ لوڈ کیا - جس کا اوپر ذکر کیا گیا ہے - اور اس کے نام سے ایک ڈمی پیکیج بنایا۔ blabladsa123 اصل ڈاؤن لوڈ کی کوششوں سے الگ پیکج رجسٹری اسکیننگ میں مدد کرنے کے لیے۔

نتیجہ، وہ دعوی کرتا ہے، یہ ہے huggingface-cli دستیاب تین مہینوں میں 15,000 سے زیادہ مستند ڈاؤن لوڈز موصول ہوئے۔

"اس کے علاوہ، ہم نے گٹ ہب پر ایک تلاش کی تاکہ اس بات کا تعین کیا جا سکے کہ آیا اس پیکیج کو دوسری کمپنیوں کے ذخیروں میں استعمال کیا گیا تھا،" لانیاڈو نے کہا۔ تحریر اس کے تجربے کے لیے۔

"ہمارے نتائج سے پتہ چلتا ہے کہ کئی بڑی کمپنیاں یا تو اس پیکیج کو اپنے ذخیروں میں استعمال کرتی ہیں یا تجویز کرتی ہیں۔ مثال کے طور پر، اس پیکیج کو انسٹال کرنے کے لیے ہدایات علی بابا کی جانب سے کی جانے والی تحقیق کے لیے مختص ریپوزٹری کے README میں مل سکتی ہیں۔

علی بابا نے تبصرہ کی درخواست کا جواب نہیں دیا۔

لانیاڈو نے یہ بھی کہا کہ ایک ہگنگ فیس کی ملکیت والا پروجیکٹ تھا جس میں جعلی ہگنگ فیس کلی کو شامل کیا گیا تھا، لیکن وہ ہٹا دیا گیا تھا اس نے بز کو خبردار کرنے کے بعد۔

کم از کم ابھی تک، اس تکنیک کو کسی حقیقی حملے میں استعمال نہیں کیا گیا ہے جس سے لانیاڈو واقف ہیں۔

"ہمارے فریب خوردہ پیکج کے علاوہ (ہمارا پیکیج بدنیتی پر مبنی نہیں ہے یہ صرف اس بات کی ایک مثال ہے کہ اس تکنیک کا فائدہ اٹھانا کتنا آسان اور خطرناک ہو سکتا ہے)، میں نے ابھی تک اس حملے کی تکنیک کو بدنیتی پر مبنی اداکاروں کے ذریعے استعمال کرنے کی نشاندہی نہیں کی ہے،" انہوں نے کہا۔ "یہ نوٹ کرنا ضروری ہے کہ اس طرح کے حملے کی شناخت کرنا پیچیدہ ہے، کیونکہ یہ بہت زیادہ قدم نہیں چھوڑتا ہے۔" ®

ٹائم اسٹیمپ:

سے زیادہ رجسٹر