ปุ่มที่สะดวกที่สุดในรหัส Claude Code ของ Anthropic “ใช่แล้ว ไม่ต้องถามอีก” ได้กลายเป็นเครื่องรั่วไหลอย่างเงียบๆ ตามการวิจัยใหม่จากบริษัทรักษาความปลอดภัยแอปพลิเคชัน Apiiro เมื่อนักพัฒนาอนุมัติคำสั่งที่ประกอบด้วยความลับ Claude Code จะบันทึกคำสั่งนั้นซึ่งรวมความลับไว้ในไฟล์การตั้งค่าในเครื่องซึ่งมักจะลงเอยด้วยการผูกมัดกับที่เก็บ GitHub สาธารณะ การสแกนของ Apiiro พบ ความลับจริง 2,539 รายการในที่เก็บข้อมูลสาธารณะ 1,994 แห่ง: รหัสผ่านฐานข้อมูล คีย์ Cloud API โทเค็น และการเข้าสู่ระบบรูท SSH กระจายอยู่ในองค์กร 63 แห่ง ซึ่งส่วนใหญ่เป็นบริษัทซอฟต์แวร์ บริษัทที่ได้รับผลกระทบแห่งหนึ่งได้ยืนยันกับนักวิจัยว่ามีการเปิดเผยคีย์ที่ถูกเปิดเผยแล้ว นี่เป็นเหตุการณ์ความเป็นส่วนตัวครั้งที่สองของ Claude Code ในเดือนนี้ ตามหลัง การเปิดเผยอีเมลผู้ใช้ไปยังเว็บไซต์ ของเครื่องมือผ่านส่วนหัว User-Agent — และเหตุการณ์นี้เกี่ยวข้องกับโครงสร้างพื้นฐานที่ใช้งานจริง ไม่ใช่แค่รายละเอียดการติดต่อ เราติดตามการรักษาความปลอดภัยของเอเจนต์การเข้ารหัส AI อย่างใกล้ชิดใน ความครอบคลุมของเครื่องมือ AI
กฎการอนุญาตกลายเป็นการรั่วไหลได้อย่างไร
กลไกนี้เป็นผลข้างเคียงของระบบอนุญาตของ Claude Code ซึ่งจะขออนุมัติก่อนที่จะรันคำสั่งเชลล์ ซึ่งมักจะหลายครั้งต่อเซสชัน ขอให้ตัวแทนตรวจแก้จุดบกพร่องการเชื่อมต่อฐานข้อมูลหรือเรียก API ภายใน และคำสั่งที่เสนอจะบรรจุข้อมูลรับรองใดก็ตามที่งานต้องการ เนื่องจากไม่สามารถทำงานได้หากไม่มีสิ่งเหล่านี้
เลือก "ใช่ และไม่ต้องถามอีก" จากนั้น Claude Code จะรันคำสั่งและเขียนกฎการอนุญาตไปที่ `.claude/settings.local.json` ภายในโฟลเดอร์โปรเจ็กต์ กฎไม่ใช่สิ่งที่เป็นนามธรรม แต่เป็นสตริงคำสั่งแบบเต็ม รหัสผ่านที่พิมพ์เป็นข้อความธรรมดาและทั้งหมด
ไฟล์นี้ได้รับการออกแบบมาให้อยู่บนเครื่องของผู้พัฒนา และ Claude Code ก็พยายามปกป้องมัน — โดยการเพิ่มมันเข้าไปในรายการละเว้น global git ของผู้พัฒนา ซึ่งครอบคลุมกรณีทั่วไป แต่ไม่ใช่กรณี Edge: โฟลเดอร์ที่จะกลายเป็นพื้นที่เก็บข้อมูลในภายหลัง โคลนบนเครื่องอื่นที่ไม่มีการละเว้นส่วนกลาง หรือไฟล์ที่มีผู้กระทำก่อนที่จะเพิ่มรายการละเว้น สิ่งสำคัญที่สุดคือ กฎไม่เคยตกอยู่ใน `.gitignore` ของที่เก็บเอง ดังนั้นจึงไม่มีการป้องกันใดๆ เกิดขึ้นกับโปรเจ็กต์
เมื่อรวมปัญหาเข้าด้วยกัน Claude Code มักจะคอมมิตไฟล์นั้นเอง ในที่เก็บข้อมูล 539 แห่งจากทั้งหมด 1,105 แห่งที่ Apiiro ติดตามความลับที่แท้จริง คอมมิตที่เขียนโดย Claude ได้เปลี่ยนไฟล์การตั้งค่า — คอมมิตโมเดลชื่อนั้นตั้งแต่ Sonnet 4.5 ถึง Opus 5.5 Apiiro ตั้งข้อสังเกตว่าพฤติกรรมนี้เป็นของ Claude Code ไม่ใช่ของโมเดล: บริษัทได้ทำซ้ำทั้ง Opus 5.5 และ Fable 5.1
ขนาดของการเปิดเผย
Apiiro นับสำเนา `.claude/settings.local.json` สาธารณะได้ 104,185 ชุดบน GitHub ในจำนวนนั้น 1,122 รายการมีความลับที่แท้จริงอย่างน้อยหนึ่งรายการ นักวิจัยพบความลับอีก 1,160 ความลับที่ซ่อนอยู่ในประวัติ Git ของ Repository ในทีมไฟล์ `settings.json` ที่แชร์กระทำการอย่างจงใจ และในบันทึกการสนทนาของตัวแทนที่บันทึกไว้ได้ตรวจสอบใน repos
ตัวอย่างเอกสาร Apiiro อ่านแล้วเหมือนกับรายการตรวจสอบแนวปฏิบัติที่เลวร้ายที่สุด ผู้จำหน่ายฐานข้อมูลเปิดเผยคีย์ API คลาวด์ระดับผู้ดูแลระบบของตนเอง — พร้อมการจัดการการเข้าถึงและไม่มีวันหมดอายุ — ควบคู่ไปกับโฮสต์คลัสเตอร์ สตาร์ทอัพ B2B รั่วไหลรหัสผ่าน Azure Postgres ที่ใช้งานจริง เอเจนซี่ซอฟต์แวร์เปิดเผยโทเค็นการเข้าถึงการผลิตของ Square บริษัทผู้ให้บริการด้านไอทีที่สร้างแอปพลิเคชันเวชระเบียนทำให้รหัสผ่านของเจ้าของฐานข้อมูลรั่วไหล โปรเจ็กต์โอเพ่นซอร์สไม่ได้ดีไปกว่านี้แล้ว: โปรเจ็กต์ที่มีดาวมากกว่า 1,000 ดวงเผยแพร่คีย์ API ในรูปแบบ OpenAI และอีกโปรเจ็กต์เป็นโทเค็น npm
บริบทด้านความปลอดภัยทำให้การค้นหาแย่ลง มัลแวร์ขโมยข้อมูลรับรองได้กวาดล้างเครื่องของนักพัฒนาเป็นจำนวนมาก Apiiro ชี้ไปที่หนอน Shai-Hulud npm ซึ่งรันเครื่องสแกน TruffleHog บนไฟล์ของเหยื่อ สแกนเนอร์ตัวเดียวกันนั้นจะแฟล็ก 643 ไฟล์จากทั้งหมด 1,122 ไฟล์ที่ Apiiro ค้นพบ สิ่งที่น่ากังวลยิ่งกว่าคือสิ่งตกค้าง: หนึ่งในห้าของไฟล์ที่รั่วไหลนั้นไม่ได้ถูกตั้งค่าสถานะโดย TruffleHog หรือ gitleaks โดยปกติแล้วเนื่องจากความลับคือรหัสผ่านที่พิมพ์ในคำสั่งแทนที่จะเป็นคีย์ในรูปแบบโทเค็นที่จดจำได้ กล่าวอีกนัยหนึ่งคือเครื่องสแกนความลับนั้นมองไม่เห็นโครงสร้างสำหรับระดับการรั่วไหลนี้
สิ่งที่ทีมที่ได้รับผลกระทบควรทำ
คำแนะนำในการแก้ไขของ Apiiro เริ่มต้นด้วยการกำหนดขอบเขตรัศมีการระเบิด ค้นหา `.claude/settings.local.json` และ `.claude/settings.json` ในองค์กร GitHub ของคุณ ทุก Hit จะเป็นไฟล์ที่ใครๆ ก็อ่านได้ในตอนนี้ ตรวจสอบประวัติ git ของที่เก็บแต่ละไฟล์ แม้ว่าไฟล์จะถูกลบไปแล้วก็ตาม เนื่องจากทุก fork และ clone จะเก็บรักษาประวัติใดก็ตามที่มีอยู่ จากนั้นตรวจสอบสำเนาในเครื่องของผู้พัฒนาทุกเครื่อง: แต่ละรายการในรายการอนุญาตคือคำสั่งที่ใครบางคนอนุมัติ โดยจะพิมพ์อะไรก็ตามที่พิมพ์ลงไป
การสั่งซื้อของบริษัทมีความสำคัญ: หมุนเวียนก่อน ทำความสะอาดเป็นอันดับสอง การลบไฟล์ออกจากพื้นที่เก็บข้อมูลไม่ได้ช่วยอะไรเกี่ยวกับข้อมูลประจำตัวที่เปิดเผยต่อสาธารณะแล้ว และประวัติ git จะรักษาความลับที่เปิดเผยไว้อย่างไม่มีกำหนด
รูปแบบ ไม่ใช่แบบครั้งเดียว
สำหรับ Anthropic การค้นพบนี้เกิดขึ้นหนึ่งสัปดาห์หลังจากที่ Claude Code ถูกจับได้ว่าทำให้ที่อยู่อีเมลของผู้ใช้รั่วไหลไปยังทุกเว็บไซต์ที่เข้าชมผ่านส่วนหัวของ User-Agent ซึ่งเป็นข้อผิดพลาดที่แก้ไขโดยการจัดส่งการปรับเปลี่ยนความเป็นส่วนตัว ซึ่งนักวิจารณ์เรียกว่า band-aid เหตุการณ์ทั้งสองมีสาเหตุร่วมกัน: เอเจนต์ที่จัดการบริบทที่มีประสิทธิภาพ — ข้อมูลประจำตัว รายละเอียดการติดต่อ ชื่อโฮสต์ภายใน — และทำการตัดสินใจเริ่มต้นว่าบริบทนั้นจะเดินทางไปที่ใด
บทเรียนนี้มีเนื้อหาครอบคลุมมากกว่า Claude Code เนื่องจากตัวแทนการเขียนโค้ดกลายเป็นอุปกรณ์มาตรฐาน ไฟล์ที่พวกเขาเขียนเพื่อจัดระเบียบตัวเองจึงกลายเป็นมุมใหม่ที่ไม่ถูกสแกนของห่วงโซ่อุปทานซอฟต์แวร์ ตัวเลขของ Apiiro ชี้ให้เห็นว่ามุมนั้นรั่วไหลไปแล้วในระดับที่องค์กรส่วนใหญ่ยังไม่ได้เริ่มวัด
ก้าวนำหน้า AI
เครื่องมือ AI มีการจัดส่งเร็วกว่าการตรวจสอบด้านความปลอดภัยตามทัน ติดตามทุกความเคลื่อนไหวใน การรายงานข่าว AI ของเรา
อ่านข่าว AI เพิ่มเติม →