
แอนโทรปิกยืนยันเมื่อวันที่ 31 มีนาคมว่า เวอร์ชันแพ็กเกจ npm ของเครื่องมือ Claude Code CLI v2.1.88 มีข้อผิดพลาดในการเผยแพร่และการบรรจุหีบห่อ ทำให้โค้ดต้นฉบับประมาณ 512,000 บรรทัดถูกเปิดเผย แอนโทรปิกจึงยื่นคำร้องแจ้งเตือนการคุ้มครองลิขสิทธิ์ภายใต้ DMCA ต่อ GitHub ทันที โดยมีคลังเก็บทั้งหมด 8,100 แห่งถูกสั่งห้ามการเข้าถึงแบบสาธารณะ
สาเหตุของเหตุการณ์ครั้งนี้ทำให้ชุมชนผู้พัฒนาอ้าปากค้างโดยสิ้นเชิง: เครื่องมือบันสำหรับการบรรจุหีบห่อ (Bun) มีพฤติกรรมเริ่มต้นในการสร้างไฟล์ Source Map สำหรับการดีบัก และในกระบวนการเผยแพร่ทั้งหมดของแอนโทรปิกไม่มีขั้นตอนใดที่ปิดใช้งานหรือยกเว้นไฟล์นี้ Source Map มีหน้าที่นำโค้ดโปรดักชันที่ถูกบีบอัดกลับมาจับคู่กับโค้ดต้นฉบับ TypeScript ไฟล์นี้ชี้ตรงไปยังไฟล์ ZIP แบบบีบอัดที่เก็บไว้ในคลังเก็บ Cloudflare R2 ของแอนโทรปิก ซึ่งเข้าถึงได้โดยสาธารณะ—โดยไม่จำเป็นต้องใช้กลวิธีแฮ็กใด ๆ เลย
หลังจากพบปัญหาโดย Chaofan Shou นักวิจัยฝึกงานด้านความปลอดภัยของบล็อกเชนของ Fuzzland เขาได้เผยแพร่ลิงก์ตรงไปยังถังจัดเก็บบนแพลตฟอร์ม X ภายในไม่กี่ชั่วโมงก็มีคลังเก็บแบบมิเรอร์จำนวนมากบน GitHub และบางคลังเก็บมีดาวสะสมไปแล้วหลายหมื่นดวงก่อนที่คำแจ้ง DMCA จะมีผลบังคับใช้
ในเชิงเทคนิค เพียงเพิ่มรายการที่สอดคล้องกันในไฟล์ .npmignore หรือทำการกำหนดในช่อง files ของ package.json ก็สามารถป้องกันเหตุการณ์นี้ไม่ให้เกิดขึ้นได้ แอนโทรปิกได้ยืนยันกับ VentureBeat ว่านี่คือ “ปัญหาการเผยแพร่และการบรรจุหีบห่อที่เกิดจากความผิดพลาดของมนุษย์” และระบุว่ากำลังดำเนินมาตรการเพื่อป้องกันไม่ให้เกิดซ้ำ
อย่างไรก็ดี นี่เป็นเหตุการณ์ซ้ำของข้อผิดพลาดเดียวกันที่เกิดขึ้นเป็นครั้งที่สอง ในเดือนกุมภาพันธ์ 2025 เวอร์ชันเริ่มต้นของ Claude Code ก็เคยเกิดเหตุการณ์การรั่วไหลของ Source Map ที่แทบจะเหมือนกันทุกประการ แอนโทรปิกได้ยื่นคำแจ้ง DMCA ฉบับแรกในเดือนเมษายน 2025 ตามมา
การรั่วไหลครั้งนี้มีไฟล์ TypeScript ประมาณ 1,900 ไฟล์ ครอบคลุมตรรกะการทำงานของเครื่องมือ โครงสร้างสิทธิ์ ระบบหน่วยความจำ โทรเมทรี (telemetry) และสวิตช์ฟีเจอร์ที่ถูกซ่อนไว้ สมาชิกในชุมชนดึงข้อมูลโทรเมทรีออกอย่างรวดเร็ว สลับสวิตช์ฟีเจอร์ที่ซ่อนอยู่ และเขียน “เวอร์ชันรีแฟกเตอร์แบบห้องปลอดเชื้อ (clean room)” ด้วย Python และ Rust สิ่งที่น่าสนใจที่สุดของฟีเจอร์ที่ยังไม่เผยแพร่มีดังนี้:
KAIROS: กระบวนการผู้พิทักษ์เบื้องหลังที่ทำงานอย่างต่อเนื่อง เฝ้าตรวจไฟล์ บันทึกเหตุการณ์ และเมื่อว่างจะทำขั้นตอนการรวมหน่วยความจำที่ชื่อว่า “ทำฝัน (Dreaming)”
BUDDY: ฟีเจอร์สัตว์เลี้ยงบนเทอร์มินัล มี 18 สายพันธุ์ (รวมถึงพะนั่งน้ำ/วอเตอร์แบร์) พร้อมคุณสมบัติ DEBUGGING(การดีบัก)、PATIENCE(ความอดทน)และ CHAOS(ความโกลาหล)
COORDINATOR MODE: อนุญาตให้ตัวแทนเพียงตัวเดียวสร้างและจัดการตัวแทนงานคู่ขนานหลายตัว
ULTRAPLAN: จัดการประชุมวางแผนแบบหลายตัวแทนระยะไกลเป็นช่วงเวลา 10 ถึง 30 นาที
เหตุการณ์ครั้งนี้ไม่ได้เป็นอุบัติเหตุเดี่ยว ในวันที่ 26 มีนาคม ซึ่งเป็นเวลา 5 วันก่อนหน้า แอนโทรปิกได้เผยแพร่เอกสารภายในประมาณ 3,000 ฉบับเนื่องจากความผิดพลาดในการตั้งค่า CMS เอกสารดังกล่าวรวมถึงรายละเอียดของโมเดลที่ยังไม่เผยแพร่ “Claude Mythos” ซึ่งก็ถูกสาเหตุว่าเกิดจากความผิดพลาดของมนุษย์เช่นกัน ภายในเวลาไม่ถึงหนึ่งสัปดาห์ที่เกิดขึ้นติดต่อกันสองเหตุการณ์การรั่วไหลครั้งใหญ่ ทำให้เกิดข้อสงสัยเชิงระบบจากภายนอกต่อบริษัท AI ที่มีบทบาทช่วยพัฒนาและเผยแพร่โค้ดอย่างแพร่หลาย ในเรื่องมาตรฐานการเผยแพร่
แอนโทรปิกรับรองว่า เหตุการณ์ครั้งนี้ไม่ได้เกี่ยวข้องกับการรั่วไหลของข้อมูลลูกค้าที่ละเอียดอ่อน ข้อมูลรับรอง (credentials) น้ำหนักโมเดล (model weights) หรือโครงสร้างพื้นฐานสำหรับการอนุมาน (inference) โดยแกนหลักของโมเดล Claude ไม่ได้รับผลกระทบ อย่างไรก็ตาม แผนผังสถาปัตยกรรมทางเทคนิคสำหรับการสร้างผลิตภัณฑ์คู่แข่งของ Claude Code ได้ลดระดับเกณฑ์ลงไปอย่างมากในตอนนี้
โปรดสังเกตเพิ่มเติม: ในวันเดียวกัน ระหว่างเวลา UTC 00:21 ถึง 03:29 ก็เกิดการโจมตีห่วงโซ่อุปทาน (supply chain attack) ต่อแพ็กเกจ axios บน npm พร้อมกัน แอนโทรปิกแนะนำให้ติดตั้งหรืออัปเดต dependency ที่ผ่านการตรวจสอบสำหรับการพัฒนาของ Claude Code และทำการหมุนเปลี่ยนข้อมูลรับรองภายในช่วงเวลานี้ และแนะนำให้ในอนาคตให้ใช้โปรแกรมติดตั้งแบบดั้งเดิมของทางการเป็นอันดับแรกแทน npm
ไฟล์ Source Map ที่สร้างโดยค่าเริ่มต้นของเครื่องมือบัน (Bun) ชี้ตรงไปยังแพ็กเกจ ZIP แบบบีบอัดที่เข้าถึงได้สาธารณะซึ่งอยู่ในคลังเก็บ Cloudflare R2 ของแอนโทรปิก ใครก็ตามสามารถเข้าถึงลิงก์สาธารณะนี้เพื่อดาวน์โหลดโค้ดต้นฉบับ TypeScript แบบครบถ้วนได้ทั้งหมด กระบวนการทั้งหมดไม่เกี่ยวข้องกับการบุกรุกทางเทคนิคใด ๆ
ไม่ใช่ แม้ว่า GitHub จะนำคลังเก็บที่เกี่ยวข้องออกตามคำแจ้ง DMCA แต่โค้ดต้นฉบับที่รั่วไหลได้ไหลเวียนไปยังหลายแพลตฟอร์มในรูปแบบไฟล์เก็บถาวร (archive) มิเรอร์ และเวอร์ชันที่ถูกรีแฟกเตอร์ ซึ่งแทบจะเป็นไปไม่ได้ที่จะลบให้หมดสิ้น การดำเนินการภายใต้ DMCA ของแอนโทรปิกจำกัดการเผยแพร่โดยตรง แต่แผนผังทางเทคนิคถูกกระจายไปอย่างกว้างขวางแล้ว
แอนโทรปิกยืนยันว่าไม่มีการรั่วไหลของข้อมูลผู้ใช้ ข้อมูลรับรอง หรือโมเดลใด ๆ แต่หากนักพัฒนาติดตั้งหรืออัปเดต Claude Code ผ่าน npm ระหว่างวันที่ 31 มีนาคม UTC 00:21 ถึง 03:29 ควรตรวจสอบ dependency และทำการหมุนเปลี่ยนข้อมูลรับรอง เพราะในช่วงเวลาเดียวกันก็เกิดการโจมตีห่วงโซ่อุปทานต่อแพ็กเกจ axios บน npm ด้วยเช่นกัน