Anthropic เปิดตัว Claude Security Plugin เวอร์ชันเบต้า: ระบบสแกนช่องโหว่แบบ Multi-Agent บน Terminal

Anthropic เปิดตัว Claude Security Plugin เวอร์ชันเบต้า: ระบบสแกนช่องโหว่แบบ Multi-Agent บน Terminal

Anthropic ได้เปิดตัว Claude Security plugin สำหรับ Claude Code ในรุ่นเบต้า โดยปลั๊กอินนี้จะทำการสแกนหาช่องโหว่ของ Repository ในรูปแบบ multi-agent จากภายในเซสชันของ Claude Code ที่คุณใช้งานอยู่ จากนั้นจะเปลี่ยนรายการช่องโหว่ที่คุณเลือกให้เป็นไฟล์ patch เพื่อให้ผู้พัฒนาตรวจสอบและนำไปใช้งานด้วยตัวเอง

Anthropic เน้นย้ำถึงความอเนกประสงค์ของเครื่องมือนี้ โดยชูจุดเด่นที่ความสามารถในการรันการสแกนแบบครอบคลุมทั้ง codebase หรือเลือกตรวจสอบเฉพาะส่วนที่มีการเปลี่ยนแปลงจาก terminal ได้ทันทีก่อนการ commit

สิ่งที่ปลั๊กอินเพิ่มเข้ามา

ปลั๊กอินนี้เพิ่มคำสั่งใหม่คือ /claude-security ซึ่งจะเปิดเมนูสำหรับ 3 งานหลัก ตามเอกสารอย่างเป็นทางการ:

  • Scan codebase: สแกนไฟล์ทั้งหมดใน repository หรือเฉพาะส่วนที่กำหนดขอบเขตไว้
  • Scan changes: สแกนความแตกต่าง (diff) ของ branch, pull request หรือเพียงหนึ่ง commit
  • Suggest patches: เปลี่ยนช่องโหว่ที่พบในรายงานให้เป็นไฟล์ .patch สำหรับแก้ไขโค้ด

สำหรับการติดตั้ง ผู้ใช้สามารถรันชุดคำสั่งจาก Official Anthropic Marketplace ได้ดังนี้:

/plugin install claude-security@claude-plugins-official
/reload-plugins

หากไม่พบ marketplace ให้รันคำสั่ง /plugin marketplace add anthropics/claude-plugins-official ก่อน โดยซอร์สโค้ดของปลั๊กอินนี้ถูกเปิดเผยเป็นสาธารณะใน claude-plugins-official repository และปัจจุบันอยู่ที่เวอร์ชัน 0.10.0

โครงสร้างของ Scan Pipeline

การสแกนถูกออกแบบมาในรูปแบบของ dynamic workflow ซึ่งเป็นสคริปต์ JavaScript สำหรับกระจายงานไปยัง subagents โดยตัวสคริปต์จะแบ่งการทำงานออกเป็น 6 ระยะ:

  1. Inventory: สำรวจและแบ่ง repository ออกเป็นส่วนประกอบต่างๆ
  2. Threat model: ระบุจุดที่เสี่ยงต่อการถูกโจมตี (entry points) และไฟล์สำคัญที่ต้องตรวจสอบ
  3. Research: ใช้ AI researcher เจาะลึกแต่ละส่วนตามหมวดหมู่ความเสี่ยง
  4. Sweep: ตรวจสอบซ้ำเพื่อเก็บตกช่องว่างที่การสแกนรอบแรกอาจมองข้าม
  5. Panel: การตรวจสอบแบบเผชิญหน้าผ่าน 3 มุมมองโดยมีผู้ลงคะแนนตัดสิน
  6. Adversarial: ระยะสุดท้ายสำหรับความพยายามระดับสูงสุด โดยการทำ Red-team กับรายการที่ก้ำกึ่ง

ระบบจะสแกนครอบคลุม 4 หมวดหมู่หลัก ได้แก่ injection-and-input, auth-and-access, memory-and-unsafe และ crypto-and-secrets ทั้งนี้ในส่วนของโปรเจกต์ที่เป็นภาษา memory-safe เช่น Python หรือ TypeScript จะมีการตัดการตรวจสอบด้านหน่วยความจำออกเพื่อความรวดเร็ว

ความเข้มข้นของการสแกนแบ่งเป็น 4 ระดับ (low, medium, high, max) ซึ่งส่งผลต่อจำนวนการสแกนจำกัดที่ 12-24 ส่วนประกอบ และจำนวน AI researcher ที่ใช้ในแต่ละจุด โดยระบบใช้โมเดลระดับสูงอย่าง Opus เป็นตัวควบคุม (orchestrator) และใช้ Sonnet สำหรับสำรวจโค้ด โดย Agents ทั้งหมดจะได้รับสิทธิ์แบบอ่านอย่างเดียว (read-only) เพื่อความปลอดภัย

สิ่งที่ตรวจพบผ่านเกณฑ์เข้าไปอยู่ในรายงานได้อย่างไร

สิ่งที่คาดว่าเป็นช่องโหว่จะไม่ถูกระบุในรายงานทันทีที่ค้นพบ แต่ต้องผ่านการตรวจสอบจากคณะกรรมการ (panel) ซึ่งประกอบด้วยผู้ตรวจสอบอิสระ 3 คนในมุมมองที่ต่างกัน ได้แก่ REACHABILITY (การเข้าถึงได้), IMPACT (ผลกระทบ) และ DEFENSES (การป้องกัน)

เกณฑ์การตัดสินใช้มติเสียงข้างมาก 2 ใน 3 หากมีผู้เห็นชอบไม่ถึงเกณฑ์ รายการนั้นจะถูกคัดออก นอกจากนี้จำนวนเสียงยังระดับความเชื่อมั่น (confidence) ของรายงานอีกด้วย เช่น หากเป็นเอกฉันท์ 3/3 จะได้ระดับความเชื่อมั่นสูง (high) แต่ถ้าได้ 2/3 จะถูกลดระดับลงมาอยู่ที่ปานกลาง (medium)

ข้อมูลในรายงานจะถูกประมวลผลด้วย Python เพื่อให้มั่นใจว่าค่า verification.status ถูกระบุอย่างถูกต้องตามหลักฐานการลงคะแนนจริง ไม่ใช่เพียงการกล่าวอ้างลอยๆ จากโมเดล AI ทำให้ผู้พัฒนาสามารถตรวจสอบย้อนกลับความน่าเชื่อถือของรายงานได้ด้วยตนเอง

สิ่งที่การสแกนเขียนลงในดิสก์

ทุกการสแกนจะสร้างโฟลเดอร์ชื่อ CLAUDE-SECURITY-<timestamp>/ ใน repository ซึ่งประกอบด้วยไฟล์สำคัญ 3 ประเภท ได้แก่:

  • CLAUDE-SECURITY-RESULTS.md: รายงานสรุปช่องโหว่ที่มนุษย์อ่านเข้าใจง่าย พร้อมระบุความรุนแรงและแนวทางแก้ไข
  • CLAUDE-SECURITY-RESULTS.jsonl: ข้อมูลการค้นพบในรูปแบบ JSON สำหรับนำไปประมวลผลต่อ
  • CLAUDE-SECURITY-REVISION-<commit>.json: บันทึกรายละเอียดการสแกน เช่น ระดับความพยายามและผลการตรวจสอบย้อนหลัง

ระบบจะสร้างไฟล์ .gitignore ของตัวเองมาให้ด้วย เพื่อป้องกันไม่ให้รายงานเหล่านี้ถูกสั่ง git add เข้าไปใน commit โดยไม่ตั้งใจ เว้นแต่ผู้พัฒนาจะต้องการเก็บไว้เป็นหลักฐานการตรวจสอบ (audit trail) เอง

Patch และเงื่อนไขการสร้างรหัสแก้ไข

เมื่อมีการสร้าง Patch ระบบจะดำเนินการใน Repository สำเนาชั่วคราว (scratch clone) เพื่อไม่ให้กระทบกับไฟล์งานปัจจุบัน โดยจะมี Agent แยกอีกตัวหนึ่งทำหน้าที่ตรวจสอบว่าไฟล์ patch นั้นเป็นไปตามเงื่อนไข 3 ข้อ คือ แก้ไขปัญหาได้จริง, ไม่สร้างช่องโหว่ใหม่ และไม่ทำให้พฤติกรรมเดิมของระบบผิดเพี้ยน

หากไม่สามารถยืนยันได้ครบทั้งสามข้อ ระบบจะแสดงเฉพาะบันทึกเหตุผลแทนการสร้างไฟล์ patch และเมื่อได้ไฟล์ที่ผ่านเกณฑ์มาแล้ว ผู้ใช้จะต้องนำไปใช้งานเองด้วยคำสั่ง:

git apply CLAUDE-SECURITY-<timestamp>/patches/F1.patch

Anthropic แนะนำให้ผู้พัฒนาตรวจสอบและนำแต่ละ patch ไปใช้แยกกันผ่าน pull request เพื่อความรอบคอบสูงสุด

ความต้องการ ค่าใช้จ่าย และความปลอดภัย

ผู้ใช้ปลั๊กอินนี้จำเป็นต้องสมัครแผนบริการแบบชำระเงินและใช้ Claude Code v2.1.154 ขึ้นไป โดยต้องติดตั้ง Python 3.9.6 และ Git ไว้ในเครื่อง การใช้งานจะถูกนับรวมในขีดจำกัด token ของแผนที่เลือก เนื่องจากการสแกนไม่มีการแยกส่วน (isolation) ตัวเอง การรันคำสั่งภายใต้สิทธิ์ของผู้ใช้จึงควรระมัดระวังในกรณีที่ codebase ไม่คุ้นเคย โดยแนะนำให้ใช้งานร่วมกับ sandbox-runtime เพื่อความปลอดภัยสูงสุด

อย่างไรก็ตาม การสแกนนี้เป็นการทำงานแบบ AI-driven ที่ผลลัพธ์อาจไม่เหมือนเดิมทุกครั้ง (nondeterministic) และไม่ได้ถูกออกแบบมาเพื่อทดแทนเครื่องมือวิเคราะห์โค้ดพื้นฐาน (Static Analysis) หรือการรีวิวโค้ดโดยมนุษย์ แต่เป็นเครื่องมือเสริมแกร่งให้กับ workflow ปกติ

ตำแหน่งในลักษณะการทำงาน (Stack)

StageToolWhat it covers
In sessionClaude Security pluginภายในเซสชัน
Code Review(Team, Enterprise)การรีวิวโค้ด
Claude Security(Enterprise)Claude Security
Source: MarkTechPost
ดูแลงานแปลและเรียบเรียงโดย AttapolK

ความคิดเห็น (0)

เข้าสู่ระบบเพื่อร่วมแสดงความเห็น

สมัครสมาชิก

มาเป็นคนแรกที่แสดงความเห็นกันเลยโบร