Claude Code 2.1.260: แก้ Path Rule รั่วและ Zsh Command Substitution ก่อนรัน Agent
Claude Code 2.1.260 แก้กรณี path rule ที่มีวงเล็บถูกทิ้งจนโฟลเดอร์ read-only กลับเขียนได้ และแก้ zsh assignment ที่ซ่อน command substitution แล้วถูก auto-approve ครับ สองรายการนี้แตะเส้นแบ่งสิทธิ์โดยตรง จึงควรอัปก่อนขยายงาน unattended
หลักฐานที่ตรวจ
release มาจาก repository anthropics/claude-code เผยแพร่ 3 กันยายน 2026 มี binary หลายแพลตฟอร์ม พร้อม SHASUMS256.txt, signature และ digest ของ assets บน release เดียวกัน เวอร์ชัน 2.1.260 สูงกว่าช่วงที่ advisories ปัจจุบันระบุว่าได้รับผลกระทบ โดย advisory ล่าสุดของ package ที่ตรวจพบระบุ patched version ไม่เกิน 2.1.163
เอกสาร permission ระบุลำดับ deny ก่อน ask ก่อน allow และแยก permission จาก OS sandbox ค่า default ให้ read-only ทำงานได้ ส่วน shell และ edit ขออนุมัติตามชนิด action การเปิด bypass mode จะข้าม prompt จึงไม่ใช่ค่าที่เหมาะกับ repository อ่อนไหว
รุ่นนี้ผ่านเกณฑ์คัดกรอง ณ วันที่ตรวจ สำหรับ canary ที่ตรวจ checksum/signature และคง sandbox กับ deny rules ไว้
วิธีใช้ให้ปลอดภัยขึ้น
อัป binary ผ่าน internal mirror หลังตรวจ checksum กับไฟล์ที่เซ็นจาก release เดียวกัน เริ่ม session ใน repository สำเนาหรือ worktree ที่ไม่มี production credential เปิด sandbox แบบจำกัด filesystem/network และตั้ง sandbox.failIfUnavailable เมื่อองค์กรต้องการ fail closed
เพิ่ม regression rule ที่มี path วงเล็บและ rule ที่ตั้งใจผิด syntax เพื่อยืนยัน deny จริง ทดสอบ zsh assignment ที่มี command substitution ว่าถูกถามหรือปฏิเสธ แต่อย่ารัน payload ทำลายข้อมูล ใช้คำสั่ง harmless ที่เขียน marker ใน temporary directory
สำหรับ command ! release notes ระบุว่ารันนอก sandbox แม้ตั้ง strict sandbox จึงควรห้ามใน policy หรืออบรมผู้ใช้ว่าเป็น shell ของคน ไม่ใช่ agent action ที่ถูกครอบด้วย boundary เดิม
ความเสี่ยงคงเหลือ
permission pattern ยังซับซ้อนและ policy จาก user, project กับ managed source อาจ drift การอ่านนอก working directory อาจกว้างกว่าที่ทีมคาด ส่วน remote MCP และ network endpoint ยังเป็นทางส่งข้อมูลออกได้ถ้า allowlist กว้าง
release มีการย้อนบางพฤติกรรมของ Read deny ที่กระทบ Bash argument เพื่อแก้ false denial แปลว่า policy semantics ยังเปลี่ยนได้ระหว่าง patch จึงต้องเก็บ effective settings และ test policy หลังทุกอัป ไม่ควรสรุปว่ารุ่นล่าสุดปลอดภัยแน่นอน
Recap
- ตรวจ signature และ checksum ก่อนนำ binary เข้าองค์กร
- เปิด OS sandbox และให้ unavailable เป็น failure เมื่อเป็นงาน unattended
- regression-test path ที่มีวงเล็บ, syntax เสีย และ zsh substitution
- จำกัด
!shell, network และ MCP แยกจาก file permission
พรุ่งนี้สร้าง policy test สามกรณีใน repo จำลอง แล้วค่อยเลื่อน 2.1.260 จาก canary ไปทีมเล็กครับ