รีวิว security-audit-skill — สกิลจาก Cloudflare ให้ AI agent ตรวจช่องโหว่โค้ดแบบมีหลักฐาน
ข้อมูล Repo
cloudflare/security-audit-skill- ภาษา
- JavaScript
- ดาว
- 34,180
- สร้างเมื่อ
- แก้ไขล่าสุด
เปลี่ยนสถานะผ่าน API: PATCH /api/reports/06aba56b-be33-45b2-9a6a-4684402f1a8d
แคปชันสำหรับ Facebook
ให้ AI agent ช่วยหาช่องโหว่ในโค้ดเรา แบบที่ Cloudflare ใช้เอง ตอนนี้เปิดเป็น open source แล้วครับ security-audit-skill เป็นสกิลที่เปลี่ยน coding agent ให้เป็นผู้ตรวจความปลอดภัย และเป็นจุดตั้งต้นของระบบหาช่องโหว่ที่ Cloudflare ใช้งานจริง ✅ ตรวจเป็น 6 เฟส ตั้งแต่สำรวจโครงสร้างโค้ด ไล่หาช่องโหว่ พิสูจน์ผล จนออกรายงาน ✅ agent ที่ตรวจผล ไม่ใช่ตัวเดียวกับที่เจอช่องโหว่ ลดการมโนผล ✅ แยกผลชัดเจน: ยืนยันแล้ว, ต้องเช็กต่อ และตัดทิ้ง ✅ มีคู่มือเฉพาะทาง เช่น prompt injection ในแอป AI, cloud, supply chain ✅ รันซ้ำได้ ผลสะสมต่อจากรอบก่อน ข้อควรรู้: ต้องใช้โมเดลที่เรียก sub-agent ได้หลายตัวพร้อมกัน และควรมี sandbox ที่ปิดเน็ต ถ้าไม่มี มันจะไม่รันโค้ดเป้าหมาย README บอกว่ารันรอบเดียวเจอราวครึ่งเดียวของที่รันหลายรอบเจอ 🔗 https://github.com/cloudflare/security-audit-skill #CyberSecurity #ClaudeCode #AgentSkills #OpenSource
ภาพปกแบบ HTML สด
แสดงจาก HTML ต้นฉบับที่ใช้สร้างภาพ ดาวน์โหลดเป็น PNG 1080×1350 ได้ทันที
สไตล์ Easy AI
1080×1350แก้ไข 2026-10-21
สไตล์ easy-app
1080×1350แก้ไข 2026-10-21
สรุป
security-audit-skill จาก Cloudflare เปลี่ยน coding agent ให้เป็นผู้ตรวจความปลอดภัย ไล่ตรวจ 6 เฟสตั้งแต่สำรวจโค้ดจนออกรายงาน ใช้ agent แยกกันค้นหาและพิสูจน์ช่องโหว่ แบ่งผลเป็น confirmed, needs_validation และ rejected พร้อม validator ที่ไม่ต้องลง dependency เป็นสกิลตั้งต้นของระบบหาช่องโหว่ที่ Cloudflare ใช้จริง license MIT
คืออะไร
cloudflare/security-audit-skill เป็น skill สำหรับ coding agent ที่เปลี่ยน agent ให้กลายเป็นผู้ตรวจความปลอดภัย โดยประสาน agent ย่อยที่แยกตัวกันทำงานเป็น 6 เฟส ตามลำดับ
- Reconnaissance: ทำแผนผัง architecture, trust boundary, จุดรับอินพุต และบันทึกความครอบคลุมไว้ที่
architecture.mdกับcoverage-ledger.json - Coverage-led hunting: ส่ง hunter แยกกันไปไล่ค้นตามหัวข้อใน ledger พร้อมใช้ coverage critic หาจุดที่ยังไม่ถูกตรวจ
- Candidate validation: ส่ง candidate แต่ละตัวให้ verifier ตัวใหม่ที่ไม่ใช่ตัวที่ค้นเจอ ลองหักล้างดู
- Structured output: เขียนผลลง
findings.jsonแยกเป็นconfirmed,needs_validationและrejectedแล้วตรวจความถูกต้องกับreport-schema.json - Independent record verification: ให้ agent ตัวใหม่ไปตรวจ source claim ขั้นสุดท้ายอีกครั้ง และถ้ามีการแทนที่เนื้อหาใน record ให้ตรวจซ้ำอีกชั้น
- Target-neutral reporting: สร้าง
REPORT.md,FINDINGS-DETAIL.mdและNEEDS-VALIDATION.mdจาก record ที่ผ่านการตรวจแล้วกับ coverage ledger
เจ้าของ repo เขียนไว้ว่าตัวนี้คือ "the skill that seeded Cloudflare's vulnerability discovery harness" ซึ่งต่อยอดไปเป็นระบบหลายขั้นตอนและใช้กับ fleet ขนาดใหญ่ ส่วนตัว skill นี้คือจุดเริ่มต้นแบบ single repo ที่ harness นั้นพัฒนาต่อมา
จุดเด่น
- ผลตรวจมีสถานะชัดเจน 3 ระดับ:
confirmedต้องมี source trace ครบ และมีผลที่ observe ได้,needs_validationคือข้อเท็จจริงที่ยังไม่สรุปได้และไม่มี severity ส่วนrejectedคือ candidate ที่ถูกหักล้างแล้ว - หลักการ adversarial validation: agent ที่ตรวจผลไม่ใช่ agent ที่ค้นเจอช่องโหว่
- validator แบบ zero-dependency: มี
validate-findings.cjsและvalidate-coverage-ledger.cjsรันด้วย Node.js ล้วน ๆ และถูกสั่งรันหลังสร้าง ledger รวมถึงหลังแก้ record ในเฟส 5 - คู่มือแยกตามกลุ่มเป้าหมาย: ทั้ง AI/LLM (prompt injection, agent/tool, output handling), client-side, supply chain และ release, cloud และ deployment, protocol/RPC/messaging, resource exhaustion, data isolation, desktop/mobile และ local IPC รวมถึง memory-safety กับ binary
- รันหลายรอบสะสมผลได้: ใช้ ledger และ findings เดิมชี้จุดที่ยังขาด พร้อม revalidate โค้ดที่เปลี่ยนไป เจ้าของ repo ระบุว่า "a single run found roughly half of the vulnerabilities that repeated runs found in total"
- หลักคิดเรื่องความรุนแรง: severity ต้องมี impact คูณกับ likelihood ไม่ใช่แค่ทำไม่ตรง checklist และช่องว่างแบบ defense-in-depth ไม่ถือเป็นช่องโหว่
เหมาะกับใคร
- ทีมที่ใช้ coding agent อยู่แล้ว และอยากให้ agent ช่วยตรวจโค้ดของตัวเองแบบมีขั้นตอน
- โปรเจกต์ที่เปิด source ให้ตรวจได้ เช่น web app, API, library, client-side app และระบบที่ deploy บน cloud
- ทีมที่ทำ AI/LLM product เพราะมีไฟล์
AI-AND-LLM.mdแยก prompt injection, agent/tool และ output handling ไว้ให้แล้ว - คนที่ต้องการผลตรวจที่ตามรอยกลับไปดู source ได้ เพราะสถานะ
confirmedต้องมี source trace ครบถ้วน - ใครก็ตามที่เตรียม sandbox ระดับ OS ไว้แล้ว เพราะเป็นข้อกำหนดหลักของ workflow
เริ่มต้นใช้งาน
ติดตั้งผ่าน Skills CLI:
npx skills add https://github.com/cloudflare/security-audit-skill \
--skill security-audit
ถ้าต้องการติดตั้งแบบ user-level:
npx skills add https://github.com/cloudflare/security-audit-skill \
--skill security-audit \
--global
จากนั้นเปิด coding agent ในโฟลเดอร์โปรเจกต์ที่ต้องการตรวจ แล้วสั่งงานด้วย prompt อย่างใดอย่างหนึ่ง:
security audit this codebase
find security vulnerabilities in ./src
do a security review, output to ~/audits/my-project
skill จะทำงานอัตโนมัติเมื่อคำขอตรงกับ trigger เช่น security audit, find vulnerabilities หรือ pen-test the code ในโหมด full audit ถ้าไม่ระบุโฟลเดอร์ผลลัพธ์ ระบบจะ default ไปที่ ~/security-audit-skill/<repo-name>/run-<N> และจะเขียนไฟล์ลงใน repo เป้าหมายก็ต่อเมื่อคุณเลือก directory ที่ version control ignore ไว้แล้วเท่านั้น
ข้อกำหนดด้านเครื่องมือ: coding agent ที่ใช้โมเดลที่รองรับ tool use และ parallel sub-agents, Node.js สำหรับ validator สองตัว และ sandbox ที่บังคับโดย OS ซึ่งต้องปิด external networking, ใช้ allowlisted environment ที่ sanitized, จำกัดทรัพยากร และเขียนได้เฉพาะ scratch path ที่ได้รับมอบหมาย
ข้อควรรู้
- License: MIT
- ความสดใหม่: push ล่าสุด 15 ก.ย. 2026 (ข้อมูล ณ 21 ต.ค. 2026)
- อายุโปรเจกต์: สร้างเมื่อ 18 มิ.ย. 2026 อายุประมาณ 4 เดือน
- ตัวเลข ณ 21 ต.ค. 2026: ⭐ ดาว 34.2k, fork 2.1k, เขียนด้วย JavaScript, open issue 72 รายการ, ยังไม่ถูก archive
- ข้อจำกัดเรื่อง sandbox: ถ้าไม่มี sandbox ที่บังคับโดย OS, workflow จะไม่รันโค้ดของเป้าหมาย และจะคง lead ไว้เป็น
needs_validationแทน ผลตรวจจึงขึ้นอยู่กับสภาพแวดล้อมการทำงานของแต่ละครั้ง - ข้อจำกัดเรื่องผลลัพธ์:
needs_validationไม่มี severity และยังไม่ถือเป็นข้อยืนยัน จึงควรอ่านREPORT.mdคู่กับNEEDS-VALIDATION.mdไม่ควรดูแค่จำนวน - ข้อจำกัดเรื่องความครอบคลุม: การรันครั้งเดียวได้ผลไม่ครบถ้วน เจ้าของ repo บอกว่าพบช่องโหว่ได้ราวครึ่งหนึ่งของที่การรันซ้ำหลายรอบพบรวมกัน จึงควรวนซ้ำและใช้ ledger ชุดเดิมชี้จุดที่ยังขาด
- ก่อนใช้งานจริง: ควรอ่าน
SKILL.mdกับไฟล์คู่มือที่ตรงกับประเภทเป้าหมาย เพราะแต่ละเฟสมี prompt และ validation rule เฉพาะของตัวเอง
🔗 https://github.com/cloudflare/security-audit-skill
ข้อมูลจาก GitHub ณ 21 ต.ค. 2026: ⭐ 34,180 | ภาษา JavaScript | license MIT