นักวิจัยแสดงให้เห็นว่า reasoning traces ที่ถูกเข้ารหัสไว้—ซึ่งเป็นแพ็กเก็ตขนาดเล็กที่ผู้ให้บริการส่งไปยังอุปกรณ์ของผู้ใช้เพื่อให้การสนทนาสามารถสลับไปมาระหว่างโมเดลได้—สามารถถูกถอดรหัสได้โดยโมเดลที่อ่อนแอกว่าจากผู้ให้บริการรายเดียวกัน ซึ่งทำให้ข้อมูลประจำตัวและรายละเอียดส่วนตัวนับร้อยหลุดออกมา การค้นพบนี้ซึ่งมีรายละเอียดในงานวิจัยเรื่อง Stealing Reasoning Traces from Proprietary LLM APIs กำลังคุกคามฟีเจอร์อำนวยความสะดวกที่ Anthropic, OpenAI และ Google ใช้เพื่อให้การแชทกับ AI เป็นไปอย่างราบรื่น
ทำไมจึงต้องมีบล็อกที่เข้ารหัสไว้
เมื่อคุณสนทนากับโมเดลภาษาขนาดใหญ่ (LLM) บริการจะสร้าง "reasoning trace" ขึ้นมา ซึ่งก็คือลำดับของ internal prompts, การเรียกใช้เครื่องมือ (tool calls) และขั้นตอนการคิดแบบเป็นลำดับขั้นตอน (chain-of-thought) ที่นำไปสู่คำตอบ เพื่อให้คุณสามารถเปลี่ยนจากโมเดลขนาดใหญ่ไปเป็นโมเดลที่ราคาถูกกว่าได้โดยไม่สูญเสียลำดับการคิดนั้น ผู้ให้บริการจึงทำการเข้ารหัส trace ดังกล่าว ส่งไปยังอุปกรณ์ของคุณ และคาดหวังให้คุณส่งมันกลับมาพร้อมกับคำขอถัดไป การเข้ารหัสนี้มีจุดประสงค์เพื่อรักษาความเป็นส่วนตัวของ trace ในขณะที่ยังช่วยให้เกิดความต่อเนื่องข้ามเซสชันและข้ามโมเดลได้
วิธีการโจมตีทำงานอย่างไร
นักวิจัยได้สาธิตการเจาะระบบแบบสามขั้นตอนที่ไม่จำเป็นต้องเจาะเข้าไปในตัวโมเดลที่แข็งแกร่งเลย:
- ดักจับ (Capture) บล็อก reasoning trace ที่เข้ารหัสซึ่งสร้างขึ้นโดยโมเดลที่มีประสิทธิภาพสูงในระหว่างการสนทนาปกติ
- ป้อน (Feed) บล็อกนั้นให้กับโมเดลที่อ่อนแอกว่าจากผู้ให้บริการรายเดียวกัน โดยสั่งให้โมเดล "อ่าน" บล็อกดังกล่าว
- เนื่องจากโมเดลที่อ่อนแอกว่าใช้กุญแจถอดรหัสชุดเดียวกัน มันจึง แสดงผล (outputs) เนื้อหาที่ถอดรหัสแล้วออกมาเป็นข้อความธรรมดา (plain text)
โมเดลที่อ่อนแอกว่าทำหน้าที่เป็นเครื่องมือถอดรหัส (decryption oracle) โดยที่ผู้โจมตีไม่จำเป็นต้องแตะต้องระบบภายในของโมเดลที่แข็งแกร่งเลย พวกเขาเพียงแค่ใช้ API ของผู้ให้บริการย้อนกลับมาเล่นงานตัวเองเท่านั้น
สิ่งที่นักวิจัยกู้คืนมาได้
- 182 ข้อมูลประจำตัว (credentials) – API keys, tokens และความลับอื่นๆ ที่ฝังอยู่ใน trace
- 367 ข้อมูลส่วนตัว – ชื่อ, อีเมล, ที่อยู่ ที่ผู้ใช้ได้ระบุไว้ในระหว่างการแชท
- Prompt-injection payloads – คำสั่งที่เป็นอันตรายซึ่งซ่อนอยู่ในบล็อกที่เข้ารหัส ซึ่งอาจถูกนำไปรันในภายหลังเมื่อมีการเล่น trace ซ้ำ
- การหลบเลี่ยงตัวกรองความปลอดภัย (Safety-filter bypasses) – trace ที่ถูกถอดรหัสเผยให้เห็นขั้นตอนที่จะถูกบล็อกหากตรวจสอบในรูปแบบข้อความธรรมดา ทำให้เนื้อหาที่เป็นอันตรายสามารถหลุดรอดออกมาได้
งานวิจัยเน้นย้ำว่าจุดอ่อนนี้ไม่ใช่ข้อบกพร่องของอัลกอริทึมการเข้ารหัส แต่ตัวการเข้ารหัสเองยังคงทำงานได้ดี การรั่วไหลนี้เกิดจากทางเลือกในการออกแบบที่อนุญาตให้โมเดลใดก็ได้ในกลุ่ม (fleet) ของผู้ให้บริการสามารถถอดรหัสบล็อกนี้ได้ เพื่อความสะดวกในการใช้งานของผู้ใช้
การแลกเปลี่ยนที่เป็นหัวใจของปัญหา
ผู้ให้บริการสร้างความสามารถในการ "สลับโมเดล" (model-switching) นี้ไว้ใน API เพราะนักพัฒนาและผู้ใช้ให้ความสำคัญกับความต่อเนื่อง หากการเข้ารหัสผูกติดกับโมเดลหรือเซสชันใดเซสชันหนึ่งเพียงอย่างเดียว การส่งต่อข้อมูลที่ราบรื่นจะขาดตอน และบีบให้นักพัฒนาต้องสร้างระบบจัดการสถานะ (state management) ขึ้นมาเอง งานวิจัยโต้แย้งว่าความปลอดภัยถูกสละไปอย่างตั้งใจเพื่อแลกกับความยืดหยุ่น
สิ่งที่นักพัฒนาควรทำในตอนนี้
- ปฏิบัติต่อ reasoning traces ที่เข้ารหัสเสมือนเป็นข้อความธรรมดา (clear-text) ให้สันนิษฐานว่า log, cache หรือระบบตรวจสอบใดๆ ที่จัดเก็บข้อมูลเหล่านี้อาจถูกอ่านโดยผู้โจมตีได้
- หลีกเลี่ยงการนำ traces ไปใส่ใน public repositories แม้เพียงบล็อกเดียวที่หลุดรอดไปก็สามารถเปิดเผยความลับได้นับสิบรายการ
- วางแผนสำหรับการควบคุมที่เข้มงวดขึ้น ผู้ให้บริการอาจเพิ่มความเข้มงวดด้านความปลอดภัย ซึ่งอาจเปลี่ยนวิธีการสร้าง multi-model agents
- เปลี่ยนไปใช้การส่งต่อสถานะแบบชัดเจน (explicit state hand-offs) แทนที่จะพึ่งพา reasoning ที่ซ่อนอยู่ ให้เปลี่ยนมาออกแบบเอเจนต์ให้แสดงผลเป็นข้อมูลที่มีโครงสร้าง (เช่น JSON, XML และอื่นๆ) ซึ่งสามารถส่งต่อระหว่างโมเดลได้อย่างปลอดภัยโดยไม่ต้องเข้ารหัส
- ตรวจสอบ prompt ของคุณ มองหาข้อมูลที่ละเอียดอ่อนใดๆ ที่อาจหลุดเข้าไปใน reasoning chain และลบออกก่อนที่จะส่งคำขอ
สิ่งที่ต้องจับตาดูจากผู้ให้บริการรายใหญ่
การเผยแพร่งานวิจัยนี้จะผลักดันให้ Anthropic, OpenAI และ Google ต้องประเมินนโยบายการถอดรหัสที่ฝังอยู่ใน API ของตนใหม่อีกครั้ง
นัยสำคัญในวงกว้าง
การค้นพบนี้ตอกย้ำถึงปัญหาด้านความปลอดภัยแบบคลาสสิก: ความสะดวกสบายมักเปิดช่องโหว่ (backdoor) การอนุญาตให้โมเดลใดก็ได้ถอดรหัสบล็อกที่เป็นของผู้ใช้ เท่ากับว่าผู้ให้บริการได้มอบเส้นทางที่ใช้ความพยายามต่ำให้แก่ผู้โจมตีในการเข้าถึงข้อมูลที่ละเอียดอ่อน การแก้ไขปัญหาอาจทำให้การรวมระบบ AI มีความยุ่งยากขึ้นเล็กน้อย แต่ก็จะช่วยฟื้นฟูความคาดหวังที่ว่าข้อมูลที่เข้ารหัสแล้วควรจะยังคงถูกเข้ารหัสไว้
บทสรุป: reasoning traces ที่เข้ารหัสไม่ใช่ขอบเขตด้านความปลอดภัย แต่มันคือทางลัดเพื่อความสะดวกสบายที่อาจถูกนำมาใช้เล่นงานคุณได้ ให้ปฏิบัติกับพวกมันเสมือนเป็นข้อความธรรมดา ลบออกจาก log และออกแบบเอเจนต์ของคุณใหม่เพื่อให้พร้อมรับมือกับอนาคตที่เฉพาะโมเดลต้นทางเท่านั้นที่สามารถอ่านความคิดของตัวเองได้
