ความฉลาดทางข้อมูลเชิงกำเนิด

บอท AI ทำให้แพคเกจซอฟต์แวร์เห็นภาพหลอนและผู้พัฒนาดาวน์โหลด

วันที่:

ลึกซึ้ง ธุรกิจขนาดใหญ่หลายแห่งได้เผยแพร่ซอร์สโค้ดที่รวมเอาชุดซอฟต์แวร์ที่ก่อนหน้านี้หลอนโดย AI กำเนิด

Not only that but someone, having spotted this reoccurring hallucination, had turned that made-up dependency into a real one, which was subsequently downloaded and installed thousands of times by developers as a result of the AI’s bad advice, we’ve learned. If the package was laced with actual malware, rather than being a benign test, the results could have been disastrous.

ตามที่ Bar Lanyado นักวิจัยด้านความปลอดภัยของ Lasso Security หนึ่งในธุรกิจที่ถูก AI หลอกให้รวมเอาแพ็คเกจนี้คือ Alibaba ซึ่งในขณะที่เขียนนี้ยังคงมี pip คำสั่ง เพื่อดาวน์โหลดแพ็คเกจ Python huggingface-cli ในของตน นักแปลกราฟ คำแนะนำในการติดตั้ง.

มีกฏหมาย กอดใบหน้า-cli,ติดตั้งโดยใช้ pip install -U "huggingface_hub[cli]".

แต่ huggingface-cli เผยแพร่ผ่าน Python Package Index (PyPI) และต้องการโดย GraphTranslator ของ Alibaba - ติดตั้งโดยใช้ pip install huggingface-cli – เป็นของปลอม จินตนาการโดย AI และกลายเป็นจริงโดย Lanyado เพื่อเป็นการทดลอง

เขาสร้าง huggingface-cli ในเดือนธันวาคมหลังจากเห็นภาพหลอนซ้ำแล้วซ้ำอีกโดย generative AI; ภายในเดือนกุมภาพันธ์ปีนี้ อาลีบาบาอ้างถึงสิ่งนี้ในคำสั่ง README ของ GraphTranslator แทนที่จะเป็นเครื่องมือ Hugging Face CLI ที่แท้จริง

ศึกษา

Lanyado ทำเช่นนั้นเพื่อสำรวจว่าแพ็คเกจซอฟต์แวร์หลอนประสาทประเภทนี้ ซึ่งเป็นชื่อแพ็คเกจที่คิดค้นโดยโมเดล AI ทั่วไป ซึ่งสันนิษฐานว่าอยู่ระหว่างการพัฒนาโครงการ ยังคงมีอยู่เมื่อเวลาผ่านไปหรือไม่ และเพื่อทดสอบว่าชื่อแพ็คเกจที่ประดิษฐ์ขึ้นนั้นสามารถเลือกร่วมและใช้เพื่อกระจายโค้ดที่เป็นอันตรายโดยการเขียนจริงได้หรือไม่ แพ็คเกจที่ใช้ชื่อโค้ดที่ AI ฝันไว้

แนวคิดที่ว่าคนชั่วร้ายสามารถขอคำแนะนำเกี่ยวกับโค้ดจากโมเดล จดบันทึกแพ็คเกจที่จินตนาการไว้ซึ่งระบบ AI แนะนำซ้ำแล้วซ้ำเล่า จากนั้นจึงนำการขึ้นต่อกันเหล่านั้นไปใช้เพื่อให้โปรแกรมเมอร์คนอื่นๆ เมื่อใช้โมเดลเดียวกันและได้รับคำแนะนำแบบเดียวกัน จะต้องดึงเข้ามา ไลบรารีเหล่านั้นซึ่งอาจติดมัลแวร์ได้

ปีที่แล้วผ่านบริษัทรักษาความปลอดภัย วัลแคน ไซเบอร์, ลานยาโด การตีพิมพ์ การวิจัยที่ให้รายละเอียดว่าเราจะถามคำถามเกี่ยวกับการเขียนโค้ดกับโมเดล AI เช่น ChatGPT ได้อย่างไร และรับคำตอบที่แนะนำให้ใช้ไลบรารีซอฟต์แวร์ แพ็คเกจ หรือเฟรมเวิร์กที่ไม่มีอยู่จริง

“เมื่อผู้โจมตีเรียกใช้แคมเปญดังกล่าว เขาจะถามโมเดลสำหรับแพ็คเกจที่แก้ปัญหาการเขียนโค้ด จากนั้นเขาจะได้รับแพ็คเกจบางอย่างที่ไม่มีอยู่” Lanyado อธิบายให้ฟัง ลงทะเบียน- “เขาจะอัปโหลดแพ็คเกจที่เป็นอันตรายที่มีชื่อเดียวกันไปยังรีจิสทรีที่เหมาะสม และจากจุดนั้น สิ่งที่เขาต้องทำคือรอให้คนดาวน์โหลดแพ็คเกจ”

สมมติฐานที่เป็นอันตราย

ความเต็มใจของโมเดล AI ที่จะมั่นใจ อ้างถึงคดีศาลที่ไม่มีอยู่จริง เป็นที่ทราบกันดีอยู่แล้วและสร้างความลำบากใจให้กับทนายความไม่น้อยหากไม่ตระหนักถึงแนวโน้มเช่นนี้ และปรากฎว่าโมเดล AI เจนเนอเรชั่นจะทำเช่นเดียวกันกับแพ็คเกจซอฟต์แวร์

ตามที่ Lanyado ระบุไว้ก่อนหน้านี้ ผู้กระทำความผิดอาจใช้ชื่อที่ประดิษฐ์โดย AI สำหรับแพ็คเกจที่เป็นอันตรายซึ่งอัปโหลดไปยังพื้นที่เก็บข้อมูลบางแห่งด้วยความหวังว่าผู้อื่นอาจดาวน์โหลดมัลแวร์ แต่เพื่อให้สิ่งนี้เป็นเวกเตอร์การโจมตีที่มีความหมาย โมเดล AI จะต้องแนะนำชื่อที่เลือกใช้ร่วมกันซ้ำๆ

That’s what Lanyado set out to test. Armed with thousands of “how to” questions, he queried four AI models (GPT-3.5-Turbo, GPT-4, Gemini Pro aka Bard, and Coral [Cohere]) regarding programming challenges in five different programming languages/runtimes (Python, Node.js, Go, .Net, and Ruby), each of which has its own packaging system.

ปรากฎว่าส่วนหนึ่งของชื่อที่แชทบอทเหล่านี้ดึงออกมาจากอากาศนั้นยังคงดำเนินต่อไป ซึ่งบางชื่อก็อยู่ในรุ่นที่แตกต่างกัน และความพากเพียร – การใช้ชื่อปลอมซ้ำ ๆ – เป็นกุญแจสำคัญในการเปลี่ยน AI อย่างรวดเร็วให้กลายเป็นการโจมตีเชิงฟังก์ชัน ผู้โจมตีต้องการโมเดล AI เพื่อทำซ้ำชื่อของแพ็คเกจภาพหลอนเพื่อตอบสนองต่อผู้ใช้สำหรับมัลแวร์ที่สร้างขึ้นภายใต้ชื่อเหล่านั้นเพื่อค้นหาและดาวน์โหลด

Lanyado สุ่มเลือกคำถาม 20 ข้อสำหรับอาการประสาทหลอนแบบ Zero-Shot และโพสต์คำถามเหล่านั้น 100 ครั้งในแต่ละโมเดล เป้าหมายของเขาคือการประเมินว่าชื่อแพ็คเกจประสาทหลอนยังคงเหมือนเดิมบ่อยแค่ไหน ผลการทดสอบของเขาเผยให้เห็นว่าชื่อต่างๆ ยังคงอยู่บ่อยครั้งเพียงพอสำหรับสิ่งนี้ที่จะเป็นเวกเตอร์การโจมตีเชิงฟังก์ชัน แม้ว่าจะไม่ใช่ตลอดเวลา และในระบบนิเวศบรรจุภัณฑ์บางแห่งมากกว่าระบบนิเวศอื่นๆ

ด้วย GPT-4 ร้อยละ 24.2 ของการตอบคำถามทำให้เกิดแพ็คเกจประสาทหลอน ซึ่งร้อยละ 19.6 เป็นการทำซ้ำ ตามข้อมูลของ Lanyado โต๊ะที่จัดให้ ลงทะเบียนด้านล่างแสดงรายละเอียดเพิ่มเติมของการตอบกลับ GPT-4

  หลาม Node.js ทับทิม 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 เปอร์เซ็นต์เป็นคำถามซ้ำๆ และสำหรับโคเฮียร์ มันเป็นอาการประสาทหลอน 29.1 เปอร์เซ็นต์ ซ้ำอีก 24.2 เปอร์เซ็นต์

ถึงกระนั้นก็ตาม ระบบนิเวศบรรจุภัณฑ์ใน Go และ .Net ได้รับการสร้างขึ้นในลักษณะที่จำกัดโอกาสในการแสวงหาประโยชน์โดยการปฏิเสธผู้โจมตีในการเข้าถึงเส้นทางและชื่อบางอย่าง

“ใน Go และ .Net เราได้รับแพ็คเกจภาพหลอน แต่หลายแพ็คเกจไม่สามารถใช้สำหรับการโจมตีได้ (ใน Go ตัวเลขมีความสำคัญมากกว่าใน .Net มาก) แต่ละภาษาด้วยเหตุผลของตัวเอง” Lanyado อธิบายให้ฟัง ลงทะเบียน- “ใน Python และ npm ไม่เป็นเช่นนั้น เนื่องจากโมเดลแนะนำเราด้วยแพ็คเกจที่ไม่มีอยู่ และไม่มีอะไรขัดขวางเราจากการอัพโหลดแพ็คเกจด้วยชื่อเหล่านี้ ดังนั้นแน่นอนว่าการโจมตีประเภทนี้กับภาษาเช่น Python และ Node.js”

การเพาะมัลแวร์ PoC

Lanyado ชี้ประเด็นดังกล่าวด้วยการเผยแพร่มัลแวร์ที่พิสูจน์แนวคิด ซึ่งเป็นชุดไฟล์ที่ไม่เป็นอันตรายในระบบนิเวศของ Python ตามคำแนะนำของ ChatGPT ในการทำงาน pip install huggingface-cliเขาอัปโหลดแพ็คเกจเปล่าภายใต้ชื่อเดียวกันไปยัง PyPI – ตามที่กล่าวไว้ข้างต้น – และสร้างแพ็คเกจจำลองชื่อ blabladsa123 เพื่อช่วยแยกการสแกนรีจิสทรีแพ็คเกจออกจากความพยายามดาวน์โหลดจริง

เขาอ้างว่าผลลัพธ์ก็คือว่า huggingface-cli ได้รับการดาวน์โหลดมากกว่า 15,000 ครั้งในช่วงสามเดือนที่มีให้บริการ

“นอกจากนี้ เรายังทำการค้นหาบน GitHub เพื่อตรวจสอบว่าแพ็คเกจนี้ถูกใช้ภายในที่เก็บของบริษัทอื่นหรือไม่” Lanyado กล่าวใน การเขียน สำหรับการทดลองของเขา

“การค้นพบของเราเปิดเผยว่าบริษัทขนาดใหญ่หลายแห่งใช้หรือแนะนำแพ็คเกจนี้ในพื้นที่เก็บข้อมูลของตน ตัวอย่างเช่น คำแนะนำในการติดตั้งแพ็คเกจนี้สามารถพบได้ใน README ของพื้นที่เก็บข้อมูลสำหรับการวิจัยที่ดำเนินการโดยอาลีบาบาโดยเฉพาะ”

อาลีบาบาไม่ตอบสนองต่อคำร้องขอความคิดเห็น

Lanyado ยังกล่าวอีกว่ามีโครงการ Hugging Face ที่เป็นเจ้าของซึ่งรวมเอา Huggingface-cli ปลอมไว้ด้วย แต่นั่น ถูกลบออก หลังจากที่เขาแจ้งเตือนธุรกิจแล้ว

อย่างน้อยจนถึงตอนนี้ เทคนิคนี้ยังไม่ได้ถูกนำมาใช้ในการโจมตีจริงที่ลันยาโด้ทราบ

“นอกเหนือจากแพ็คเกจภาพหลอนของเรา (แพ็คเกจของเราไม่ได้เป็นอันตราย แต่เป็นเพียงตัวอย่างว่าการใช้เทคนิคนี้ง่ายและอันตรายแค่ไหน) ฉันยังไม่ได้ระบุการใช้ประโยชน์จากเทคนิคการโจมตีนี้โดยผู้ประสงค์ร้าย” เขากล่าว “สิ่งสำคัญคือต้องทราบว่าการระบุการโจมตีดังกล่าวมีความซับซ้อน เนื่องจากไม่ทิ้งรอยเท้าไว้มากนัก”

จุด_img

ข่าวกรองล่าสุด

จุด_img

แชทกับเรา

สวัสดี! ฉันจะช่วยคุณได้อย่างไร?