ทีมวิจัยด้านความปลอดภัยพบวิธีที่จะเข้ายึดบัญชี ChatGPT เพียงแค่ให้เหยื่อเปิดลิงก์การสนทนาที่แชร์ ตามการเปิดเผยทางเทคนิคที่เผยแพร่โดย parameter labs เมื่อวันที่ 28 ตุลาคม บริษัทรายงานว่า OpenAI ได้แก้ไขช่องโหว่เมื่อวันที่ 26 ตุลาคม และจัดประเภทรายงานเป็น P1 ซึ่งเป็นระดับความรุนแรงสูงสุด
การค้นพบนี้เป็นการเข้าครอบครองบัญชีแบบ end-to-end ที่หาได้ยากเมื่อเทียบกับแพลตฟอร์ม AI กระแสหลัก และเกิดขึ้นในขณะที่ การพัฒนา AI ล่าสุด แสดงให้เห็นว่าขณะนี้ผู้คนเก็บเนื้อหาที่ละเอียดอ่อนมากเพียงใดในแอปพลิเคชันแชท parameter Labs กล่าวว่าการโจมตีไม่จำเป็นต้องติดตั้งแอป ไม่มีเครื่องมือสำหรับนักพัฒนา และไม่มีการโต้ตอบใดๆ นอกเหนือจากการเปิด ChatGPT URL ที่แชร์ของผู้โจมตี
วิธีการทำงานของ Attack Chain
เครือดังกล่าวใช้ฟีเจอร์ ChatGPT ธรรมดาสองรายการในทางที่ผิดซึ่งดูไม่เป็นอันตรายเมื่อแยกออกจากกัน: กราฟเชิงโต้ตอบและแซนด์บ็อกซ์แสดงตัวอย่าง HTML คุณลักษณะการแสดงตัวอย่างของ ChatGPT เรียกใช้ HTML ที่สร้างขึ้นในเฟรมที่จำกัดที่อยู่เว็บแยกต่างหาก ซึ่งจะช่วยป้องกันไม่ให้สัมผัสกับหน้า chatgpt.com ที่ลงชื่อเข้าใช้อยู่รอบๆ ที่อยู่เว็บนั้น
ความก้าวหน้านี้มาจากกราฟซึ่งโหลดไลบรารีคณิตศาสตร์ชื่อ MathLive ไลบรารีดังกล่าวได้ติดตั้งตัวฟังข้อความในหน้าหลักของ ChatGPT สำหรับแป้นพิมพ์บนหน้าจอ แต่พารามิเตอร์ Labs พบว่าผู้ฟังยอมรับข้อความจากแหล่งที่มาใดๆ โดยไม่ต้องยืนยันผู้ส่ง ข้อความประเภทหนึ่งที่ยอมรับสามารถแทนที่รูปแบบแป้นพิมพ์เสมือนด้วย HTML ที่ควบคุมโดยผู้โจมตี ซึ่ง MathLive จะแทรกลงในหน้า ChatGPT จริงผ่านทาง innerHTML
สคริปต์ที่แทรกในลักษณะนั้นจะไม่ดำเนินการตามปกติ ดังนั้นนักวิจัยจึงรวมเพย์โหลดของตนไว้ใน iframe โดยใช้แอตทริบิวต์ srcdoc เนื่องจากหน้า ChatGPT หลักสร้างเฟรมนั้นโดยไม่มีแซนด์บ็อกซ์ เบราว์เซอร์จึงถือว่าโค้ดที่อยู่ภายในนั้นเป็นเนื้อหา chatgpt.com ของแท้และสามารถเข้าถึงหน้าหลักได้
การหลีกหนีจากนโยบายการรักษาความปลอดภัยของเนื้อหา
นโยบายความปลอดภัยของเนื้อหาของ ChatGPT ยังคงบล็อกสคริปต์ในบรรทัด แต่พารามิเตอร์ Labs พบช่องว่าง: นโยบายอนุญาตให้ใช้สคริปต์จาก YouTube นักวิจัยค้นพบว่าจุดสิ้นสุด oEmbed ของ YouTube สะท้อนถึงพารามิเตอร์การเรียกกลับ JSONP ที่ไม่ถูกต้องไปในการตอบสนองต่อข้อผิดพลาดก่อนการตรวจสอบ ทำให้พวกเขาเติม JavaScript ที่ปฏิบัติการได้ไว้หน้าการตอบสนองที่เบราว์เซอร์ยินดีโหลดเป็นสคริปต์
เมื่อถึงจุดนั้น ทีมงานได้เรียกใช้ JavaScript แบบกำหนดเองโดยใช้ข้อมูลประจำตัวของ chatgpt.com ภายในเซสชันการลงชื่อเข้าใช้ของเหยื่อ parameter Labs มีความชัดเจนเกี่ยวกับความหมายในทางปฏิบัติ: เพย์โหลดไม่ได้จำกัดอยู่เพียงการแก้ไขเพจหรือการแสดงการแจ้งเตือน — มันสามารถเรียก API ที่ผ่านการรับรองความถูกต้องของ ChatGPT โดยตรงว่าเป็นเหยื่อ ในการทดสอบ เพย์โหลดสามารถระบุรายการสนทนาของเหยื่อ ดึงเนื้อหาของการสนทนาส่วนตัวที่ไม่เคยแชร์กับผู้โจมตี และส่งข้อมูลนั้นไปยังเซิร์ฟเวอร์ภายนอก เบราว์เซอร์ระบุทุกการกระทำที่มาจาก chatgpt.com ทำให้เหยื่อไม่มีสัญญาณที่มองเห็นได้ว่ามีอะไรผิดปกติ
ลิงค์เดียวก็เพียงพอแล้ว
สิ่งที่เปลี่ยนข้อผิดพลาดในการวิจัยให้กลายเป็นอาวุธที่ใช้งานได้จริงก็คือการส่งมอบ นักวิจัยได้ใส่กราฟและบล็อก HTML ที่สามารถดูตัวอย่างได้ไว้ในการสนทนาธรรมดาๆ เดียว โดยเผยแพร่ด้วยฟีเจอร์การแชร์ตามปกติของ ChatGPT และส่งผลลัพธ์ /share/ ลิงก์ตามเส้นทางเดียวกับที่ใครๆ จะใช้: อีเมล แชท ตั๋วสนับสนุน หรือโพสต์โซเชียล
ในการทำซ้ำที่เสถียรที่สุด เหยื่อจะต้องคลิกปุ่มดูตัวอย่างของ ChatGPT หนึ่งครั้งหลังจากเปิดลิงก์ เวอร์ชันที่ใหม่กว่าทำเครื่องหมายบล็อก HTML ว่าสามารถดูตัวอย่างได้ ดังนั้น ChatGPT จึงเปิดบล็อกดังกล่าวโดยอัตโนมัติ และการดำเนินการที่จำเป็นเพียงอย่างเดียวของเหยื่อคือไปที่ URL ทีมงานสร้างเส้นทางอัตโนมัติเต็มรูปแบบสามครั้งในบัญชีแยกต่างหาก รวมถึงหลังจากการรีเฟรชอย่างหนัก โดยเพย์โหลดจะเริ่มประมาณ 4.5 วินาทีหลังจากโหลดเพจ
เนื่องจากกราฟและการแสดงตัวอย่างโหลดแยกกัน เพย์โหลดจึงอาจเริ่มทำงานก่อนที่ MathLive จะพร้อมใช้งานเป็นบางครั้ง เวอร์ชันสุดท้ายได้ลองข้อความอีกครั้งในระยะเวลาที่จำกัดเพื่อจัดการกับสภาพการแข่งขันนั้น
การเปิดเผยและการแก้ไข
parameter Labs รายงานปัญหาไปยัง OpenAI ซึ่งจัดส่งโปรแกรมแก้ไขไปเมื่อวันที่ 26 ตุลาคม และให้คะแนนรายงาน P1 การเปิดเผยข้อมูลเกิดขึ้นท่ามกลางการวิจัยด้านความปลอดภัยของแพลตฟอร์ม AI ในวงกว้าง เมื่อต้นสัปดาห์ที่ผ่านมา The Register ได้รายงานข้อบกพร่องในเครื่องมือสำหรับนักพัฒนา AI ห้าเครื่องมือ ซึ่งบางส่วนยังไม่ได้รับการแก้ไขเมื่อเผยแพร่
บทเรียนนี้ครอบคลุมมากกว่าห้องสมุดแห่งเดียว แอปพลิเคชันแชทสมัยใหม่ประกอบด้วยส่วนประกอบของบุคคลที่สาม การแสดงตัวอย่างแบบแซนด์บ็อกซ์ และช่องทางข้อความที่ได้รับอนุญาตในหน้าเดียวที่ได้รับการตรวจสอบสิทธิ์ และตัวรับ postMessage ใดๆ ที่ไม่ผ่านการตรวจสอบสามารถกลายเป็นสะพานเชื่อมระหว่างสิ่งเหล่านี้ได้ สำหรับผู้ใช้ คำแนะนำในทางปฏิบัติไม่เปลี่ยนแปลงจากการรักษาความปลอดภัยบนเว็บแบบคลาสสิก: ปฏิบัติต่อลิงก์ไปยังการสนทนา AI ที่แชร์ในแบบเดียวกับที่คุณปฏิบัติต่อลิงก์ที่ไม่พึงประสงค์อื่น ๆ เนื่องจากแพลตฟอร์มไม่สามารถรับประกันได้ว่าการเปิดลิงก์นั้นจะไม่เป็นอันตรายอีกต่อไป
ในส่วนของการจำแนกประเภท P1 ของ OpenAI และการตอบสนองที่รวดเร็วแนะนำให้บริษัทถือว่าการโจมตีเซสชันบนเบราว์เซอร์บน chatgpt.com เป็นภัยคุกคามระดับแรก เหตุการณ์ดังกล่าวยังเป็นเครื่องเตือนใจว่าบัญชีเหล่านี้ให้ความสำคัญกับมูลค่ามากเพียงใดเมื่อผู้ใช้จัดเก็บเอกสารงาน คำถามทางการแพทย์ และโครงการส่วนตัวไว้ในประวัติการแชท ซึ่งเป็นเนื้อหาที่ห้องทดลองพารามิเตอร์พิสูจน์ว่าผู้โจมตีสามารถดึงข้อมูลออกมาได้
---
ก้าวนำหน้า AIรับข่าวสาร AI การวิเคราะห์ และความก้าวหน้าล่าสุด ทั้งหมดในที่เดียว
อ่านข่าว AI เพิ่มเติม →