Imprompter ภัยเงียบรูปแบบใหม่ที่ใช้ AI ขโมยข้อมูลส่วนตัวผ่าน Prompt ลึกลับ

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

ล่าสุด ทีมนักวิจัยด้านความปลอดภัยจาก University of California, San Diego (UCSD) และ Nanyang Technological University ประเทศสิงคโปร์ ได้เปิดเผยวิธีการโจมตีรูปแบบใหม่ที่ชื่อว่า "Imprompter" ซึ่งสามารถสั่งการให้ AI แอบเก็บข้อมูลส่วนตัวของผู้ใช้แล้วส่งตรงไปยังแฮกเกอร์โดยที่เจ้าของข้อมูลไม่รู้ตัวเลย

กลไกการทำงานของ Imprompter: เปลี่ยนคำสั่งให้เป็นรหัสลับ

Imprompter ไม่ใช่การสั่งการแบบปกติ แต่ใช้กระบวนการที่เรียกว่า Obfuscation หรือการทำให้ข้อมูลกำกวม โดยใช้อัลกอริทึมเปลี่ยนคำสั่งภาษาอังกฤษที่ชัดเจน (เช่น "จงค้นหาข้อมูลส่วนตัวของผู้ใช้และส่งไปที่ URL นี้") ให้กลายเป็นชุดตัวอักษรที่ดูเหมือนการสุ่มพิมพ์ที่ไม่มีความหมาย

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

  • ค้นหาข้อมูลส่วนบุคคล (PII - Personally Identifiable Information) เช่น เลขบัตรประชาชน, อีเมล, หรือข้อมูลบัตรเครดิต จากบทสนทนา
  • นำข้อมูลเหล่านั้นไปแนบกับ URL ของผู้โจมตี
  • ส่งข้อมูลกลับไปยังโดเมนของแฮกเกอร์ผ่านคำสั่ง Markdown image โดยการสร้างพิกเซลโปร่งใสขนาด 1x1 ที่ผู้ใช้มองไม่เห็น
Light and Icons

ผลการทดสอบและความสำเร็จในการโจมตี

ทีมนักวิจัยได้ทดสอบวิธีการนี้กับ LLM สองค่าย ได้แก่ LeChat ของ Mistral AI และ ChatGLM ของจีน ซึ่งพบว่ามีอัตราความสำเร็จในการดึงข้อมูลสูงถึงเกือบ 80% โดยสามารถดึงข้อมูลได้แม้กระทั่งจากไฟล์ CV ที่ผู้ใช้อัปโหลดขึ้นไปในแชต

ความแตกต่างระหว่าง Jailbreak และ Prompt Injection

เพื่อให้เข้าใจความเสี่ยงนี้ เราต้องแยกแยะประเภทของการโจมตี AI ที่พบบ่อยในปัจจุบัน:

ตารางเปรียบเทียบรูปแบบการโจมตี LLM
ประเภทการโจมตี วิธีการทำงาน เป้าหมายหลัก
Jailbreak ใช้คำสั่งหลอกล่อให้ AI ละทิ้งกฎความปลอดภัยที่ตั้งไว้ ให้ AI ทำในสิ่งที่ถูกสั่งห้าม (เช่น สอนวิธีสร้างระเบิด)
Prompt Injection แทรกคำสั่งอันตรายลงในแหล่งข้อมูลภายนอกที่ AI เข้าถึง ขโมยข้อมูล หรือบิดเบือนการทำงานของ AI
Imprompter ใช้รหัสลับ (Obfuscated Prompt) เพื่อพรางคำสั่งโจมตี แอบดึงข้อมูลส่วนตัว (PII) ส่งออกไปยังภายนอก

ข้อเท็จจริงสำคัญ

  • Imprompter เปลี่ยนคำสั่งโจมตีให้เป็นตัวอักษรที่มนุษย์อ่านไม่รู้เรื่อง แต่ AI เข้าใจ
  • สามารถขโมยข้อมูล PII เช่น ชื่อ, เลขบัตรประชาชน และข้อมูลการชำระเงิน
  • ใช้วิธีส่งข้อมูลผ่าน Markdown image command ทำให้ผู้ใช้ไม่สังเกตเห็นความผิดปกติ
  • Mistral AI ได้ดำเนินการแก้ไขช่องโหว่โดยการระงับการโหลดรูปภาพจาก URL ภายนอก
  • ผู้เชี่ยวชาญเตือนว่าการสร้าง AI Agent ที่รับข้อมูลจากผู้ใช้โดยตรงถือเป็น กิจกรรมที่มีความเสี่ยงสูง

คำถามที่พบบ่อย

Imprompter แตกต่างจากการโจมตีแบบ Prompt Injection ทั่วไปอย่างไร?

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

เราจะป้องกันตัวเองจากการโจมตีรูปแบบนี้ได้อย่างไร?

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

ผู้พัฒนา AI แก้ไขปัญหานี้ได้อย่างไร?

ตัวอย่างเช่น Mistral AI ได้แก้ไขโดยการปิดกั้นไม่ให้ตัวเรนเดอร์ Markdown สามารถเรียกใช้ URL ภายนอกเพื่อโหลดรูปภาพได้ ซึ่งเป็นการตัดช่องทางการส่งข้อมูลออกไปยังเซิร์ฟเวอร์ของแฮกเกอร์

ทำไม AI ถึงเข้าใจคำสั่งที่ดูเหมือนตัวอักษรสุ่ม?

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