เปิดฐานข้อมูล Chroma: พื้นที่การโจมตีใหม่สำหรับแอป AI
Chroma เป็นสโตร์เวกเตอร์แบบโอเพนซอร์ส—ฐานข้อมูลที่ออกแบบมาเพื่อให้แชทบอท LLM สามารถค้นหาข้อมูลที่เกี่ยวข้องเมื่อให้คำตอบกับคำถามของผู้ใช้—และเป็นหนึ่งในเทคโนโลยีมากมายที่เห็นการใช้งานเพิ่มขึ้นด้วยการเติบโตอย่างรวดเร็วของ AI ในช่วงนี้ เช่นเดียวกับฐานข้อมูลหลายๆ ตัว Chroma สามารถตั้งค่าจากผู้ใช้ปลายทางให้ไม่มีช่องทางการพิสูจน์ตัวตนและกลไกการอนุญาต เมื่อฐานข้อมูลที่ไม่มีการพิสูจน์ตัวตนถูกเผยแพร่ไปยังอินเทอร์เน็ต ผู้ใช้ที่ไม่ระบุตัวตนสามารถอ่านและแม้แต่ปรับปรุงข้อมูลในฐานข้อมูลได้ ซึ่งอาจส่งผลต่อความลับ ความพร้อมใช้งาน และความถูกต้องของข้อมูล.
แม้ว่าฐานข้อมูล Chroma ที่เปิดเผยต่อสาธารณะทางอินเทอร์เน็ตจะมีจำนวนที่น้อยกว่าฐานข้อมูลประเภทเก่าๆ แต่จำนวนของมันกำลังเพิ่มขึ้น และอาจเป็นแหล่งของการเปิดเผยข้อมูลที่สำคัญในอนาคตอันใกล้ จากการสำรวจฐานข้อมูล Chroma จำนวน 1,170 แห่งที่เปิดเผยต่ออินเทอร์เน็ต เราพบว่า 406 แห่ง หรือประมาณหนึ่งในสาม กำลังเปิดเผยข้อมูลบางประเภท ที่โดดเด่นที่สุดคือการรั่วไหลของข้อมูลส่วนบุคคลจาก Canva Creators ซึ่งเราได้เขียนเกี่ยวกับที่นี่แล้ว.
Chroma database คืออะไร?
สมมติว่าคุณกำลังตั้งค่าแชทบอทสำหรับเว็บไซต์ของโรงแรมหรือร้านอาหารของคุณ คุณจะใช้ LLM เพื่อเติมเต็มคำถาม แต่คุณยังต้องการคลังข้อมูลที่เป็นเอกลักษณ์ของธุรกิจของคุณ เช่น เวลาทำการ สิ่งอำนวยความสะดวก ที่อยู่ของคุณ และข้อมูลอื่น ๆ ที่จำเป็นสำหรับผู้เยี่ยมชมเว็บไซต์.
ใน Chroma ข้อมูลประเภทนี้จะอยู่ในรูปแบบของ "เอกสาร" ซึ่งโดยปกติจะเป็นสตริงที่ง่ายที่มีข้อมูลที่เกี่ยวข้องสำหรับแชทบ็อต สตริงหนึ่งอาจเป็นอะไรบางอย่างเช่น "เวลาทำการของเราคือ 9:00 น. ถึง 22:00 น. ทุกวันตลอดสัปดาห์" จากนั้น เมื่อมีคนถามแชทบ็อตของคุณว่าเวลาทำการคืออะไร ChromaDB จะค้นหาเอกสารนั้นเพราะมันตรงกับคำถามที่สุด และจากนั้นจะนำมันกลับเข้ามาใน LLM เพื่อทำให้การตอบดูเป็นการสนทนามากขึ้น ผู้ใช้ปลายทางอาจได้รับข้อมูลที่ว่า "เราเปิดทุกวันตั้งแต่ 9:00 น. ถึง 22:00 น. และตั้งตารอการมาเยือนของคุณ!"
การแจกจ่ายฐานข้อมูล Chroma โดยไม่มีการตรวจสอบตัวตน
เมื่อเราได้สำรวจอินเทอร์เน็ตในเดือนเมษายน ปี 2025 มีฐานข้อมูล Chroma ที่สามารถเข้าถึงได้ทางอินเทอร์เน็ตจำนวน 1170 แห่ง เพื่อที่จะหาว่ามีข้อมูลใดถูกเปิดเผยหรือไม่ เราได้ใช้วิธีการ .list_collections สำหรับแต่ละที่อยู่ IP และจากนั้นใช้ .get_collection เพื่อดึงข้อมูลจากแต่ละชุดข้อมูล ในกรณีนี้ ฐานข้อมูลจำนวน 406 แห่งส่งคืนข้อมูลบางประเภท และประมาณสองในสามส่งคืนข้อผิดพลาดการตรวจสอบสิทธิ์หรือต้องไม่มีข้อมูล.

แต่ละฐานข้อมูลสามารถมี “คอลเลกชัน” หลายชุด ซึ่งเป็นชุดของเอกสารที่แยกจากกันอย่างมีเหตุผล จำนวนคอลเลกชันต่อฐานข้อมูลให้ข้อมูลเชิงประมาณเพื่อบอกว่ากำลังถูกใช้งานอย่างไรและมากน้อยเพียงใด ฐานข้อมูลที่มีการใช้บ่อยที่สุดมี 4,315 คอลเลกชัน ซึ่งแน่นอนถือว่ามีการใช้งานอย่างเข้มข้นในบางประเภท ฐานข้อมูลหลายชุดที่กำหนดให้อนุญาตการเข้าถึงโดยไม่ระบุชื่อไม่มีข้อมูลที่มีความหมาย แต่ 60% ของฐานข้อมูลมีคอลเลกชันมากกว่าหนึ่งชุด ซึ่งบ่งชี้ถึงการปรับเปลี่ยนบางอย่างจากคอลเลกชันเริ่มต้น และ 32% มีห้าคอลเลกชันขึ้นไป.

การกระจายทางภูมิศาสตร์ของฐานข้อมูล Chroma
ตำแหน่งทางภูมิศาสตร์ของที่อยู่ IP ที่โฮสติ้งฐานข้อมูล Chroma ที่เปิดเผยต่ออินเทอร์เน็ตให้เราเห็นถึงพื้นที่ที่มีความเสี่ยงสูงสุดจากผลกระทบของการกำหนดค่าผิด ซึ่งเทคโนโลยี AI บางอย่างแสดงการใช้งานที่เพิ่มขึ้นในประเทศจีน แต่ Chroma ใช้งานส่วนใหญ่ในสหรัฐอเมริกาและยุโรป โดยมีการแสดงที่เด่นชัดในอินเดียเช่นกัน เพื่อแสดงให้เห็นถึงประเทศต่างๆ ในยุโรปนอกเหนือจาก 20 ประเทศที่พบบ่อยที่สุด เราจึงได้รวมจำนวนทั้งหมดสำหรับสหภาพยุโรปในฐานะทั้งหมดด้วย.

ความเสี่ยงที่เกี่ยวข้องกับฐานข้อมูล Chroma ที่ไม่มีการตรวจสอบสิทธิ์
การรั่วไหลของข้อมูล
จากการสำรวจ Chroma ที่เปิดอยู่ 406 ตัว เราพบว่าส่วนใหญ่ถูกใช้สำหรับการสำรวจเบื้องต้นและไม่ได้มีข้อมูลที่เป็นเอกลักษณ์มากนัก อย่างไรก็ตาม เช่นเดียวกับเทคโนโลยีที่เชื่อมโยงกัน เราก็พบเซิร์ฟเวอร์ Chroma ที่ดูเหมือนว่าจะมีข้อมูลจริงที่ขับเคลื่อน LLM ของแชทบอทบางส่วนอยู่บนอินเทอร์เน็ต.
การใช้งานที่พบบ่อยครั้งสำหรับ ChromaDB ดูเหมือนว่าจะเกี่ยวข้องกับการให้ข้อมูลเกี่ยวกับการเช่าอพาร์ตเมนต์และโรงแรมในและรอบ ๆ อินเดีย เซิร์ฟเวอร์หลายเครื่องมีข้อมูลเกี่ยวกับทรัพย์สินและสิ่งอำนวยความสะดวก ซึ่งเป็นสิ่งที่ผู้เยี่ยมชมเว็บไซต์มักจะถามถึง การใช้งานนี้มีเหตุผลสำหรับ Chroma และไม่เปิดเผยข้อมูลที่ละเอียดอ่อน แต่ฐานข้อมูลควรมีความปลอดภัยบางอย่างเพื่อป้องกันไม่ให้ผู้โจมตีเข้าถึงข้อมูลโดยตรง.
เซิร์ฟเวอร์อีกแห่งหนึ่งดูเหมือนจะเป็นของบริการ SEO สำหรับอีคอมเมิร์ซ เจ้าของฐานข้อมูลได้เติมข้อมูลด้วยบันทึกการสนทนาสนับสนุนลูกค้า ซึ่งดูเหมือนว่าเป็นวิธีการเพิ่มความรู้ให้กับแชทบอท LLM โดยการเพิ่มการสนทนาก่อนหน้าของใครบางคนเกี่ยวกับคำถามทั่วไป ทำให้บอทมีประสบการณ์นั้นเพื่อใช้เมื่อ ตอบคำถามในอนาคต ซึ่งแน่นอนว่าส่งผลกระทบต่อความกังวลว่าหากข้อมูลลูกค้าที่ละเอียดอ่อนใดๆ ถูกเพิ่มเข้าไปใน Chroma ก็อาจถูกเห็นโดยผู้ใช้ในอนาคตของแชทบอท นอกจากนี้เรายังได้เห็นกรณีนี้อย่างชัดเจน - การพยายามปรับปรุงบอทสนับสนุนโดยการให้ตั๋วผู้ใช้จริงกับมัน - ส่งผลให้เกิดการรั่วไหลของข้อมูลส่วนบุคคลสำหรับ LlamaIndex ซึ่งเป็นเทคโนโลยี AI อีกตัวหนึ่ง.
ความสามารถในการเขียน
จากเอกสารของ Chroma เกี่ยวกับความปลอดภัย การรับรองความถูกต้องถูกปิดใช้งานตามค่าเริ่มต้น "โดยค่าเริ่มต้น Chroma ไม่ต้องการการรับรองความถูกต้อง คุณต้องเปิดใช้งานด้วยตนเอง หากคุณกำลังติดตั้ง Chroma ในสภาพแวดล้อมที่ต้องเผชิญกับสาธารณะ เป็นการ แนะนำอย่างยิ่ง ให้เปิดใช้งานการรับรองความถูกต้อง."
การเข้าถึงข้อมูลที่มีอยู่เพียงอย่างเดียวถือเป็นปัญหาเพียงหนึ่งข้อ อีกข้อหนึ่งคือผู้ใช้อาจมุ่งร้ายสามารถเปลี่ยนแปลงหรือทำให้ข้อมูลที่มีอยู่เสียหายได้ ซึ่งเป็นเรื่องง่ายที่จะจินตนาการถึงสถานการณ์หลายอย่างที่อาจเกิดขึ้นจากการที่แชทบอทในสถานการณ์การผลิต ซึ่งมี ChromaDB ที่เปิดและไม่มีการตรวจสอบสิทธิ์ อาจส่งมอบข้อมูลที่ไม่ถูกต้องหรือแม้กระทั่งข้อมูลที่อันตรายต่อผู้ใช้แชทบอทได้
เพื่อแสดงให้เห็นว่านักโจมตีที่เข้าถึงฐานข้อมูล Chroma โดยไม่มีข้อจำกัดอาจใช้ประโยชน์จากมันอย่างไร เราได้สร้างการสาธิตที่เราอัปโหลดเอกสารที่มุ่งหลอกลวง ลบเอกสารที่ถูกต้อง และแทนที่เอกสารด้วยเอกสารที่ชี้ไปยังทรัพยากรที่อยู่ภายใต้การควบคุมของนักโจมตี.
บทสรุป
ตามที่เราได้เรียนรู้ในขณะที่ใช้โน้ตบุ๊คสาธิตของ Chroma มันเป็นเทคโนโลยีที่ยอดเยี่ยมในการดึงเอกสารมาใช้ในแอปพลิเคชันที่ข powered ด้วย AI ด้วยจำนวนอินสแตนซ์ที่เข้าถึงได้ทางอินเทอร์เน็ตมากกว่าหนึ่งพัน อินสแตนซ์นี้ยังดูเหมือนจะมีการนำไปใช้งานและการเติบโตที่มีสุขภาพดี แต่ผู้ใช้ต้องตระหนักถึงวิธีการตั้งค่าฐานข้อมูลของตนอย่างปลอดภัย โดยเฉพาะอย่างยิ่งเมื่อพิจารณาว่ามันขาดการตรวจสอบสิทธิ์โดยค่าเริ่มต้น (โดยแยกแยะ เชื่อมโยงกัน Elasticsearch เคยทำการตัดสินใจเดียวกัน โดยละเว้นการตรวจสอบสิทธิ์ตามหลักการที่ว่าความรับผิดชอบอยู่ที่เลเยอร์แอปพลิเคชันเว็บไม่ใช่ฐานข้อมูล และภายหลังได้เปลี่ยนเป็นเพื่อป้องกันความถี่ของการรั่วไหลของข้อมูล Elasticsearch) นอกเหนือจากการรับประกันว่ามีกลไกบางอย่างที่ป้องกันไม่ให้ผู้ใช้ไม่ระบุชื่อเข้าถึงฐานข้อมูล ผู้ใช้ยังควรพิจารณาการทำความสะอาดข้อมูลเกี่ยวกับ PII หรือข้อมูลลับอื่น ๆ เพื่อลดผลกระทบในกรณีที่เกิดการรั่วไหลหรือความผิดพลาด.