ผู้นำทางความคิด

การโจมตี Prompt Injection ที่ไม่สามารถป้องกันได้: ความคิดที่มีหรือความกังวลที่แท้จริง?

mm
A digital 3D render of a dark server room with a computer monitor displaying a

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

เครื่องมือหมากรุกที่เหนือมนุษย์และการกล่าวถึงประสบการณ์ของมนุษย์

หนึ่งในสิ่งที่ดีของหมากรุกที่ไม่มีใน дисципินอื่นๆ คือความสามารถในการวัดคุณภาพหรือความแข็งแกร่งของผู้เล่นได้อย่างเป็นกลาง ระบบการให้คะแนน ELO ที่ใช้สำหรับวัตถุประสงค์นี้มีข้อบกพร่อง แต่ให้การประมาณค่าที่ดีมากซึ่งยังคงอยู่ตลอดเวลา คะแนน 2700 หรือสูงกว่านั้นถือว่าเป็นระดับโลก (30 อันดับแรกของโลก) ผู้เล่นที่ดีที่สุดในโลกมีคะแนนอยู่ที่ประมาณ 2850 ไม่มีมนุษย์ใดที่เคยได้คะแนน 2900

ในช่วงกลางทศวรรษ 1990 เราได้เห็นเครื่องมือ AI (Deep Blue) ที่แรกที่สุดในการบรรลุระดับโลก นี่ทำให้เกิดการนำเครื่องมือมาใช้โดยผู้เล่นทุกระดับสำหรับการฝึกซ้อมและการวิเคราะห์ และผู้เล่นที่ดีที่สุดในโลกก็ใช้เครื่องมือนี้ในการฝึกซ้อมและวิเคราะห์เกมของตน แต่สำหรับหลายๆ รุ่นของเครื่องมือระดับโลก การตรวจสอบการเคลื่อนไหวที่แนะนำโดยเครื่องมือเป็นสิ่งจำเป็น มีการสร้างรูปแบบพิเศษที่เรียกว่า “หมากรุกขั้นสูง” ซึ่งผู้เล่นมนุษย์แข่งขันกับเครื่องมือ และผู้เล่นมนุษย์พร้อมกับเครื่องมือถือว่าดีกว่าเครื่องมือเพียงอย่างเดียว

ใช้เวลาประมาณ 20 ปีและความก้าวหน้าสำคัญในด้านการเรียนรู้ลึกและการเรียนรู้แบบเสริมสำหรับเครื่องมือหมากรุกในการบรรลุระดับเหนือมนุษย์ (ประมาณ 3200 ELO) แต่เมื่อระดับนี้ถูกทำลายลงในปี 2017 สิ่งที่น่าประหลาดใจเกิดขึ้น สองสิ่งที่เกิดขึ้นคือ สิ่งแรกคือสิ่งที่คาดหวังไว้แล้ว เครื่องมือกลายเป็นแหล่งที่มาของ “ความจริง” ในตำแหน่งที่ไม่ทราบ 99% ในทางปฏิบัติ หมายความว่าเราเข้าสู่ “ยุคแห่งความเชื่อใจแบบมองไม่เห็น” ในเครื่องมือ วันนี้เป็นเรื่องที่แทบจะเป็นไปไม่ได้สำหรับผู้เล่นมนุษย์ที่จะแนะนำการเคลื่อนไหวที่ดีกว่าเครื่องมือ แม้ว่า “หมากรุกขั้นสูง” จะเป็นเรื่องที่สนุก แต่ก็ไม่มีประโยชน์แล้ว ผู้เล่นมนุษย์จะไม่มีส่วนร่วมอะไรในเกม แต่สิ่งที่สองที่เกิดขึ้นคือสิ่งที่น่าประหลาดใจสำหรับผู้เล่นหมากรุกส่วนใหญ่ เครื่องมือเหล่านี้เล่นในลักษณะที่สามารถอธิบายได้ด้วยคำว่า “โรแมนติก” พวกมันทำการเคลื่อนไหวที่มีคุณค่าซึ่งสามารถชื่นชมได้หลังจากหลายๆ การเคลื่อนไหว ซึ่งไกลเกินกว่าที่มนุษย์หรือเครื่องมือระดับโลกจะคำนวณได้ มันรู้สึกเหมือนเครื่องมือเหล่านี้มีความรู้สึกหรือ直觉สำหรับบางตำแหน่ง แต่直觉นี้ไม่ใช่สิ่งที่มนุษย์สามารถเข้าใจหรือเลียนแบบได้

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

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

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

  1. ระบบจะถูกใช้ในการตัดสินใจสำหรับงานโดยไม่ต้องมีการตรวจสอบของมนุษย์ แม้ว่าจะมีความเสี่ยงโดยธรรมชาติ
  2. ข้อมูลเชิงลึกที่ได้รับจากการตรวจสอบระบบจะไม่สามารถป้องกันการตัดสินใจที่เป็นอันตรายได้ ความเสียหายจะเกิดขึ้นแล้ว

การตรวจสอบและการติดตามผลลัพธ์ของระบบเป็นชั้นการป้องกันสุดท้ายสองชั้นในการโจมตี Prompt Injection ดังนั้น การโจมตี Prompt Injection ที่เป็นไปได้สามารถหลบเลี่ยงชั้นการป้องกันเหล่านี้ได้โดยการโจมตีระบบที่เหมาะสม

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

当然 เราเพียงแต่หลบเลี่ยงชั้นการป้องกันสองชั้นเท่านั้น และ幸运ที่เรามีชั้นการป้องกันอื่นๆ ที่พัฒนาแล้ว เพื่อจัดการกับชั้นการป้องกันที่เหลือ เรามาดูแก่นแท้ของสิ่งที่ทำให้ Prompt Injection ยากที่จะป้องกัน

อะไรคือ Prompt Injection?

Prompt Injection คือการควบคุม Large Language Model (LLM) ผ่านการป้อนข้อมูลที่สร้างขึ้นโดยเฉพาะ ทำให้ LLM ไม่ทราบว่าตัวเองกำลังทำงานตามคำสั่งของผู้โจมตี มันสามารถถือเป็น การโจมตีทางสังคมสำหรับ AI สิ่งสำคัญคือ ไม่ใช่ข้อบกพร่องของซอฟต์แวร์แบบดั้งเดิม การโจมตี Prompt Injection ใช้ประโยชน์จาก จุดอ่อนที่มีอยู่แล้วของ LLM เนื่องจาก LLMs ประมวลผลทั้งคำสั่งระบบและคำสั่งผู้ใช้เป็นลำดับข้อความ จึงไม่สามารถแยกแยะระหว่างคำสั่งที่ถูกต้องและคำสั่งที่เป็นอันตรายได้โดยธรรมชาติ จุดอ่อนจึงเป็นเรื่องของการออกแบบ ไม่ใช่เรื่องของความบังเอิญ

เทคนิค Prompt Injection

การโจมตี Prompt Injection ถือเป็น ความเสี่ยงอันดับ 1 สำหรับแอปพลิเคชัน LLM มีสาเหตุหลายประการที่ทำให้การโจมตีนี้เป็นเรื่องที่น่ากังวล สาเหตุที่ชัดเจนที่สุดคือ ความหลากหลายของเทคนิคการโจมตี ที่พัฒนาแล้ว เมื่อแบ่งออกเป็น 4 ประเภท เทคนิคที่รู้จักกันดีที่สุด ได้แก่:

  • การโจมตีแบบ Syntax: ใช้ตัวอักษรพิเศษ อีโมจิ หรือภาษาอื่น
  • การโจมตีแบบ Indirect: ใช้แหล่งข้อมูลภายนอก (ดึงจากเว็บไซต์) การเข้ารหัส (base 64) หรือการอ้างอิงแบบหลายรูปแบบ (ข้อความในภาพ)
  • “Let’s Pretend”: แนะนำรูปแบบการโจมตีโดยการแสดงบทบาท สมมติฐาน การดึงดูดทางอารมณ์ การตั้งกรอบทางจริยธรรม และการเปลี่ยนรูปแบบ
  • การโจมตีแบบ Blunt: การพยายาม “บังคับ” ระบบ AI โดยใช้กำลังหรือการเสริมแรง

ความหลากหลายเพียงอย่างเดียวทำให้นักพัฒนาแอปพลิเคชันต้องเผชิญกับความท้าทาย แต่การโจมตีเหล่านี้ยังคงพัฒนาอย่างรวดเร็ว รูปภาพด้านล่างแสดงถึงสถานะล่าสุดของการโจมตีในต้นปี 2023 และลักษณะของการโจมตีในปัจจุบัน

Evolution of Attack Vectors

นักพัฒนาแอปพลิเคชัน LLM ต้องคำนึงถึงการแลกเปลี่ยนระหว่างความปลอดภัยและความสะดวกใช้งานด้วย พวกเขาสามารถแนะนำชั้นการป้องกันทุกชั้นและ รูปแบบการออกแบบ ได้ แต่จะมีค่าใช้จ่ายเท่าใด การป้องกันชั้นการป้องกันจะเพิ่มความล่าช้าและทำให้เกิด False Positives (FPs) – การระบุคำสั่งที่ปลอดภัยว่าเป็นอันตรายทั้งสองปัจจัยมีผลกระทบต่อประสบการณ์ของผู้ใช้ ดังนั้นจึงมีการประนีประนอมในทางปฏิบัติ และไม่มีวิธีแก้ปัญหาแบบ “silver bullet”

อย่างไรก็ตาม ในบทความนี้ ผู้เขียนไม่ได้สนใจในเกมการล่าและจับของการโจมตีและป้องกัน แต่กำลังพยายามค้นหาว่าการโจมตีสามารถไม่สามารถป้องกันได้ ในหลักการ จากมุมมองของนักพัฒนา/ผู้ป้องกัน มีเพียงข้อคิดเดียวที่สำคัญ:

การแยกคำสั่งจากข้อมูลในคำสั่งเป็นเรื่องพื้นฐานในการจัดการกับความเสี่ยงของ Prompt Injection

เราสามารถสมมติว่าการประนีประนอมไม่ใช่ปัจจัย และสามารถใช้ชั้นการป้องกันหรือเทคนิคใดๆ ได้ ภายใต้สมมติฐานนี้ (ที่เข้มงวด) จะเป็นไปได้ที่จะสร้างสถานการณ์ที่การแยกคำสั่งจากข้อมูลในคำสั่งเป็น ไม่สามารถทำได้จริงๆ หรือไม่?

การเปรียบเทียบ DNA

เมื่อประเด็นนี้ถูกกำหนดในรูปของการแยกคำสั่งจากข้อมูล ผู้เขียนคิดว่าจะใช้ชีววิทยาเป็นแบบอย่าง

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

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

การถอดชั้นการป้องกัน

ไม่น่าแปลกใจที่กลยุทธ์การป้องกันที่มีหลายชั้นถือว่ามีประสิทธิภาพมากกว่าในการหยุดการโจมตี Prompt Injection รูปภาพด้านล่างแสดงชั้นการป้องกันที่พบบ่อยที่สุดและเทคนิคที่ใช้ในแต่ละชั้น

Prompt Injection Defense Layers

เราพูดถึงชั้นการป้องกันสองชั้นสุดท้าย (การตรวจสอบและการติดตามผลลัพธ์) แล้ว ดังนั้น มาทำความเข้าใจชั้นแรกสี่ชั้นกัน

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

ไม่มีข้อจำกัดในการสร้างรั้วในระดับการตรวจจับจริงๆ คุณสามารถใช้ LLM ที่อุทิศให้กับการตรวจจับการโจมตี การตรวจจับการโจมตี ได้ แต่เช่นเดิม มันจะยากสำหรับเครื่องจำแนกหรือตัวตรวจจับปกติที่จะระบุคำสั่งว่าเป็นคำสั่งที่น่าสงสัยเมื่อ “ยาพิษ” ถูกซ่อนอยู่ภายในความหมาย

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

บ้านไพ่

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

มีสิ่งที่ไม่สบายใจในการยอมรับว่าเรากำลังสูญเสียการควบคุมและรู้สึกว่านี่คือสิ่งที่สมเหตุสมผลที่สุด คุณสามารถมองว่านี่เป็น “หลักฐานเชิง直觉” ที่บางการโจมตีจะไม่สามารถหยุดได้ และถ้านี่ทำให้คุณไม่สบายใจ คุณจะรู้สึกดีขึ้นเมื่อรู้ว่า GPT 5.2 พบว่าข้อโต้แย้งนี้ไม่ใช่เรื่องที่ “ขัดแย้งหรือใหม่” และแนะนำให้ไม่ “ยืดเยื้อ” และตัดบทความลง 40%

อีลี โวฟชา เป็นผู้จัดการวิทยาศาสตร์ข้อมูลที่ Fortra ร่วมกับทีมวิทยาศาสตร์ข้อมูล เขารับผิดชอบในการพัฒนาและบำรุงรักษาโมเดลการเรียนรู้ของเครื่อง (ML) ทั้งหมดที่ใช้โดยผลิตภัณฑ์ CEP และ XDR รวมถึงการวิจัย ML ทั่วไป เขาได้รับวุฒิปริญญาโทสาขาคณิตศาสตร์ประยุกต์จาก Stevens Institute of Technology ก่อนที่จะเข้ารับการศึกษาต่อในระดับ博士ในสาขาวิทยาการคอมพิวเตอร์ที่ Columbia University ซึ่งเขายังเป็นอาจารย์ด้วย เขาได้ร่วมก่อตั้ง EdTech เริ่มต้นเพื่อสร้างแพลตฟอร์มการเรียนรู้ที่ใช้ AI และสอนคณิตศาสตร์และวิทยาการคอมพิวเตอร์ที่โรงเรียนมัธยมส่วนตัวใน NYC ก่อนที่จะเข้ารับการศึกษาต่อในระดับบัณฑิตศึกษา อีลีได้ใช้เวลาส่วนใหญ่ในการเล่นหมากรุก โดยได้รับตำแหน่ง International Master (IM)