
by GH05TCREW

ตัวนี้คือ PentestAgent หรือ AI Penetration Testing Framework ที่ช่วยให้เราทำ black-boxsecurity testing แบบอัตโนมัติได้ มันใช้ AI Agent ควบคุมเครื่องมือทดสอบเจาะระบบแทนที่เราจะต้องพิมพ์คำสั่งเองทีละบรรทัด โปรแกรมนี้รองรับ Python 3.10 ขึ้นไป และต้องมี API key ของผู้ให้บริการ AI อย่าง OpenAI หรือ Anthropic หรือใครก็ได้ที่ LiteLLM รองรับ ซึ่งหมายความว่าเราสามารถเลือกโมเดลที่ถูกใจหรือถูกกระเป๋าได้ตามสะดวก ตัวมันจะทำงานผ่าน TUI หรือ Terminal User Interface ที่เราสามารถสั่งงานด้วยคำสั่งแบบ chat ได้เลย
จุดเด่นที่เห็นได้ชัดคือ มันมีหลายโหมดให้เลือกใช้ตามความเหมาะสมของงาน ไม่ว่าจะเป็นโหมด Assist ที่สั่งทีละคำสั่งแล้วรอผล โหมด Agent ที่ให้มันทำงานเองอัตโนมัติตาม task ที่กำหนด โหมด Crew ที่เป็นmulti-agent มีตัว Orchestrator คอยแบ่งงานให้ agent ย่อยๆ ทำพร้อมกัน แล้วก็โหมด Interactที่เหมือน chat กับผู้ช่วยที่คอยแนะนำและ guide เราไปตลอดกระบวนการ pentest
นอกจากนี้ยังมี Playbooks สำเร็จรูปสำหรับการทดสอบเฉพาะด้าน เช่น thp3_web ที่ช่วยให้เราไม่ต้องเริ่มจากศูนย์ทุกครั้งแค่ระบุเป้าหมายแล้วเลือก playbook ที่ต้องการ มันก็จะเดิน流程ทดสอบตามขั้นตอนที่ออกแบบไว้แล้วฟีเจอร์ที่น่าสนใจอีกอย่างคือระบบ spawn_mcp_agent ที่ทำให้ agent หลักสามารถ spawn agent ลูกออกมาทำงานย่อยได้แบบ hierarchical โดย agent ลูกแต่ละตัวมี runtime ประวัติการสนทนา และ notes store เป็นของตัวเอง แต่เครื่องมือของ agent ลูกจะถูก inject กลับมาให้ agent แม่ใช้ได้ด้วย ซึ่งเปิดโอกาสให้ทำงานขนานกันได้ เช่น ให้ agent ลูกตัวหนึ่ง scan subnet 10.0.1.0/24 อีกตัวscan 10.0.2.0/24 แล้วรวมผลกลับมา
นอกจากนี้ยังมี MCP RAG Tool Optimizer ที่ช่วยจัดการเมื่อMCP server มีเครื่องมือเยอะเกิน 128 ตัว โดยจะใช้ embedding similarity ดึงเฉพาะเครื่องมือที่เกี่ยวข้องกับงานปัจจุบันมาให้ ทำให้ context window ไม่บวมและยังเข้าถึงเครื่องมือทั้งหมดได้อยู่ดีทางเทคนิคแล้ว PentestAgent สร้างด้วย Python และใช้ LiteLLM เป็น abstraction layer สำหรับเชื่อมต่อกับหลายๆ โมเดล LLM ทำให้ไม่ถูก lock-in กับผู้ให้บริการรายใดรายหนึ่ง ตัวมันรองรับ MCP หรือ Model Context Protocol ในสองทิศทาง คือทั้ง consume external MCP servers เข้ามาเป็นเครื่องมือเสริม และ expose ตัวเองเป็น MCP server ให้โปรแกรมภายนอกอย่าง Claude Desktop หรือ Cursor เรียกใช้ได้ ส่วนเครื่องมือ built-in ที่มีให้ใช้งานได้เลยประกอบด้วย terminal สำหรับรันคำสั่งระบบ browser สำหรับเปิดเว็บผ่าน Playwright notes สำหรับจดบันทึก web_searchที่ต้องตั้งค่า Tavily API key และ spawn_mcp_agent ที่กล่าวไปแล้ว นอกจากนี้ยังรองรับการรันผ่านDocker โดยมีทั้ง image แบบ base ที่มี nmap netcat curl และ image แบบ Kali ที่พร้อม metasploit sqlmap hydra อีกด้วยโปรแกรมนี้เหมาะกับ penetration tester ที่ต้องการเร่งความเร็วในการทำ reconnaissance และexploitation โดยเฉพาะใน bug bounty หรือ red team operation ที่ต้องสำรวจพื้นที่กว้างๆ ภายในเวลาจำกัด นักศึกษาด้าน cybersecurity ที่กำลังฝึกฝนก็ใช้ได้ดีเพราะโหมด Interact จะคอยอธิบายและแนะนำว่าทำไมถึงต้องใช้เครื่องมือนี้ในขั้นตอนนี้ ทีม security ในองค์กรที่ต้องการทำ black-boxtesting บนระบบของตัวเองก่อน deploy ก็เอาไปใช้ได้ หรือแม้แต่ freelancer ที่รับงาน pentestแล้วต้องการเครื่องมือที่ช่วย automate งานประจำวันลดเวลาเขียน report ลงได้เยอะ เพราะมันมีคำสั่ง /report ที่ generate report จาก session ที่ทำมาได้เลย
ข้อดีที่เห็นชัดเจนเมื่อเทียบกับการใช้เครื่องมือแยกกันเองหรือ script ธรรมดาคือ มันมีความเป็น autonomous สูง ไม่ใช่แค่รันคำสั่งตามลำดับแต่สามารถตัดสินใจเลือกเครื่องมือและปรับกลยุทธ์ตามผลที่ได้รับกลับมาในแต่ละขั้นตอน ระบบ multi-agent ช่วยแก้ปัญหา context window ที่มักเป็นข้อจำกัดของ LLM โดยแบ่งงานให้ agent ย่อยรับผิดชอองค์หนึ่งๆ การรองรับ LiteLLM ทำให้ไม่ผูกติดกับ provider ใด provider หนึ่ง สามารถสลับโมเดลได้ตามงบประมาณหรือคุณภาพที่ต้องการ นอกจากนี้การมี Docker image พร้อมใช้ยังลดเวลา setup environment ลงได้มาก ไม่ต้องมานั่งติดตั้งเครื่องมือ pentest ทีละตัวบนเครื่องตัวเอง
อย่างไรก็ตามมี
ข้อจำกัดที่ควรรู้ไว้ก่อนใช้งาน อย่างแรกคือต้องมี API key ของผู้ให้บริการ AI ซึ่งหมายถึงมีค่าใช้จ่ายตามการใช้งานจริง อาจจะแพงถ้าสั่งงานซ้ำๆ หรือให้ทำ task ที่ใหญ่เกินไป อย่างที่สองคือมันยังเป็นเวอร์ชัน 0.2.0 ซึ่งถือว่าอยู่ในช่วง early development อาจมี bug หรือพฤติกรรมที่ไม่คาดคิดได้อย่างที่สามคือการรันคำสั่งระบบอัตโนมัติมีความเสี่ยงเสมอ โดยเฉพาะถ้าเป้าหมายเป็น production system ควรมีการกำหนด scope ให้ชัดเจนและทดสอบบน lab ก่อนเสมอ เพราะ AI อาจตีความคำสั่งผิดพลาดแล้วสร้างผลกระทบที่ไม่ต้องการได้
สรุปว่า PentestAgent เป็นอีกตัวเลือกที่น่าลองถ้าเรากำลังมองหา AI assistant ที่ช่วย automateงาน penetration testing โดยเฉพาะงาน black-box ที่ต้องค้นหาและเรียนรู้ระบบเป้าหมายไปพร้อมๆ กัน มัน
เหมาะกับคนที่มีพื้นฐาน pentest อยู่แล้วแต่ต้องการเครื่องมือที่ช่วยเร่ง speed และลดความจำเจในงาน recon หรือคนที่กำลังเรียนรู้แล้วอยากมีผู้ช่วยที่คอยอธิบายขั้นตอนไปด้วย แนะนำให้ลองเริ่มจากโหมด Interact หรือ Assist ก่อนเพื่อคุ้นเคยกับพฤติกรรมของมัน แล้วค่อยๆ ขยับไปใช้โหมด Agent หรือ Crew เมื่อมั่นใจว่าเข้าใจวิธีควบคุมและกำหนด scope ได้ถูกต้อง