การเพิ่มประสิทธิภาพการทดสอบด้วย AI จาก GitHub Optimizing Testing with AI from GitHub

การทดสอบโค้ดด้วย AI จาก GitHub เสริมประสิทธิภาพการฟัซซิ่งอัตโนมัติ
AI from GitHub enhances the efficiency of automated fuzzing
เรียนรู้การสร้าง Fuzzing Pipeline ด้วย AI
ในยุคของการพัฒนาโปรแกรมที่ซับซ้อนมากขึ้น การทดสอบความปลอดภัยของโค้ดต่าง ๆ จึงมีความสำคัญ ฟัซซิ่ง (Fuzzing) เป็นเครื่องมือหนึ่งที่ช่วยหาจุดบกพร่องในโค้ด โดยเฉพาะจุดบกพร่องที่ซ่อนอยู่ การใช้งานฟัซซิ่งให้ได้ประสิทธิภาพสูงสุดต้องใช้การตรวจสอบและวิเคราะห์โค้ดอย่างละเอียด ซึ่งเองก็เป็นงานที่ท้าทายเนื่องจากต้องมีบุคคลเข้ามาช่วยฟัซซิ่งองค์กรหรือฟัซซิ่งใหม่ ๆ
ฟัซซิ่งอัตโนมัติด้วย Taskflow Agent
GitHub Security Lab ได้พัฒนา Fuzzing Taskflow ที่สามารถสร้างกระบวนการฟัซซิ่งอัตโนมัติสำหรับโปรเจค C/C++ ได้เพียงแค่ชี้ไปที่ repository ของ GitHub ตัวระบบจะทำงานตั้งแต่กำหนดจุดเข้าของโค้ด วิเคราะห์ระบบสร้างโค้ด เขียนฮาร์เนสซ์ และรายงานช่องโหว่
ตัวอย่าง:
./scripts/fuzzing/run_fuzzing.sh tukaani-project/xz
เบื้องหลังเทคโนโลยี
GitHub Security Lab เริ่มต้นด้วยการพัฒนาเครื่องมือที่ใช้งานได้อย่างมีประสิทธิภาพ Taskflow Agent ทำงานบนเฟรมเวิร์ก AI ที่พัฒนาไว้ให้สามารถทำงานในลักษณะอัตโนมัติได้ทั้งหมด ฟัซซิ่ง Taskflow นี้รวมเข้ากับเครื่องมือเช่น AFL++ และ Clang พร้อมกับระบบจัดการข้อมูลในฐานข้อมูล SQLite
ข้อควรระวัง
ในการทำงานอัตโนมัตินี้ สิ่งที่ต้องระมัดระวังคือการเรียกใช้คำสั่งที่อาจมีผลต่อระบบ เช่น afl-fuzz และคำสั่ง build ที่ต้องทำในระบบที่ปลอดภัย เรียกใช้งานได้อย่างปลอดภัยในสภาพแวดล้อมที่แยกออกมา เช่น Codespace หรือ VM ที่ใช้งานแล้วทิ้ง
ข้อดีของการใช้ AI ในการทดสอบ
การใช้ AI ในการทดสอบช่วยทำให้งานฟัซซิ่งมีประสิทธิภาพมากขึ้น ลดภาระงานที่มนุษย์ต้องทำและเพิ่มความรวดเร็วในการค้นหาและจัดการกับช่องโหว่ในโค้ดได้อย่างดีเยี่ยม
ที่มา: GitHub Blog — AI & ML — https://github.blog/security/application-security/ai-powered-fuzzing-with-the-github-security-lab-taskflow-agent/
Understanding the Creation of an AI Fuzzing Pipeline
As software development becomes increasingly complex, ensuring code security is crucial. Fuzzing is one tool that helps uncover hidden bugs, especially the critical ones. Achieving effective fuzzing traditionally requires meticulous code review and analysis, often aided by human intervention to guide or create new fuzzes.
Automated Fuzzing with Taskflow Agent
The GitHub Security Lab has developed the Fuzzing Taskflow, an autonomous fuzzing pipeline for C/C++ projects. By simply pointing it at a GitHub repository, it handles everything from identifying relevant entrypoints, analyzing build systems, writing harnesses, to reporting vulnerabilities.
Example:
./scripts/fuzzing/run_fuzzing.sh tukaani-project/xz
Background Technology
Established by GitHub's Security Lab, the Taskflow Agent is an AI framework designed to enable complete automation. This Fuzzing Taskflow integrates tools like AFL++ and Clang, with data management facilitated through an SQLite database.
Security Precautions
In employing such automation, it's crucial to be cautious about executing commands that could affect the system, such as afl-fuzz and build commands. They should only be used securely within isolated environments like Codespace or disposable VMs.
Benefits of AI in Testing
AI in testing enhances the fuzzing process's efficiency, relieving humans of some responsibilities and expediting the identification and management of code vulnerabilities.
Source: GitHub Blog — AI & ML — https://github.blog/security/application-security/ai-powered-fuzzing-with-the-github-security-lab-taskflow-agent/
ที่มา:Source: github.blog/security/application-security/ai-powered-fuzzing
เกี่ยวกับผู้เผยแพร่About the publisher
- ผู้เขียนAuthor
- Oneable Team
- บริษัทCompany
- Oneable — AI-Powered Software Development Agency
- ความเชี่ยวชาญExpertise
- LLM & RAG, AI Agent, Web/Mobile, MLOps
- ติดต่อContact
- www.oneable.co.th/contact