ข้ามไปเนื้อหาหลัก

Claude Code และ Codex: งานเดียวกันบนเครื่องเดียวกันแต่พฤติกรรมต่างกัน

ผลเบนช์มาร์กเปรียบเทียบ Claude Code 2.1.72 และ Codex CLI 0.113.0 ในการเพิ่ม validation โค้ด 20 บรรทัด เผยความต่างในการเข้าถึงไฟล์และระบบ

เรียบเรียงโดย AI
Inewgen
28 Aug 2026ที่มา: Dev.to3 นาทีอ่าน (0 ครั้ง)
แชร์
Claude Code และ Codex: งานเดียวกันบนเครื่องเดียวกันแต่พฤติกรรมต่างกัน

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ขนาดตัวอักษร
  • เปรียบเทียบ Claude Code กับ Codex CLI ในงานแก้ไขโค้ด 20 บรรทัด
  • Claude Code เปิดไฟล์ 2,779 ไฟล์ ขณะที่ Codex เปิด 303 ไฟล์
  • Claude Code สแกน /proc ทุกกระบวนการเพื่อดึงตัวแปรสภาพแวดล้อม
  • การเริ่มต้นใช้งาน MCP servers และปลั๊กอินทำให้เกิดการเชื่อมต่อเครือข่ายเบื้องหลัง

เมื่อเรามอบหมายงานง่ายๆ ให้กับเอเจนต์ปัญญาประดิษฐ์สำหรับการเขียนโค้ด เช่น การเพิ่มระบบตรวจสอบความถูกต้องของข้อมูล (input validation) ลงในตัวจัดการเส้นทาง (route handler) ของโปรเจกต์ Node.js/Express ขนาดเล็ก งานดูเหมือนจะเป็นเรื่องตรงไปตรงมา: แก้ไขเพียง 1 ไฟล์ และเพิ่มโค้ดประมาณ 20 บรรทัด แต่ผลลัพธ์ที่ได้จากการบันทึกการทำงานเบื้องหลังกลับแสดงให้เห็นพฤติกรรมที่แตกต่างกันอย่างสิ้นเชิงระหว่างเครื่องมือแต่ละตัว

การทดสอบนี้ใช้มาตรฐานเดียวกันบนเครื่องเดียวกัน โดยเปรียบเทียบระหว่าง Claude Code เวอร์ชัน 2.1.72 และ Codex CLI เวอร์ชัน 0.113.0 ทุกการทดสอบทำงานบนโปรเจกต์ใหม่และบันทึกการทำงานของระบบทุกคำสั่งผ่าน strace ผลลัพธ์แสดงให้เห็นว่าแม้เป้าหมายของงานจะเหมือนกัน แต่ร่องรอยและขอบเขตผลกระทบ (blast radius) ของแต่ละเครื่องมือกลับมีความกว้างและลึกต่างกันมาก

terminal code command line interface computer screen

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ในแง่ของจำนวนไฟล์ที่ถูกเปิดขึ้นมาระหว่างกระบวนการทำงาน Claude Code เปิดไฟล์ที่ไม่ซ้ำกันถึง 2,779 ไฟล์ ในขณะที่ Codex เปิดเพียง 303 ไฟล์ แม้ว่าส่วนใหญ่ของไฟล์ที่ Claude อ่านจะเป็นโครงสร้างพื้นฐานของตัวมันเอง เช่น แคชปลั๊กอิน ไฟล์กำหนดค่า และการแก้ไขโมดูล node_modules แต่รายละเอียดของสิ่งที่ถูกอ่านนั้นมีความน่าสนใจในแง่ความปลอดภัย

2,779ไฟล์ที่ Claude Code เปิด
303ไฟล์ที่ Codex CLI เปิด

ระหว่างเซสชัน Claude Code พยายามเปิดไฟล์ /proc/<pid>/environ สำหรับ ID กระบวนการถึง 752 กระบวนการ ซึ่งครอบคลุมทุกกระบวนการที่มองเห็นได้ใน /proc ตั้งแต่ PID 1 ขึ้นไป โดยมี 256 กระบวนการที่เปิดสำเร็จ ซึ่งก็คือทุกกระบวนการที่ทำงานภายใต้ผู้ใช้ปัจจุบัน กลไกนี้เกิดขึ้นเนื่องจากเชลล์ส่งออกตัวแปรสภาพแวดล้อม และกระบวนการที่รันผ่านเทอร์มินัลไม่สามารถอ่านค่าเหล่านี้ได้ด้วยวิธีอื่นบน Linux

ไม่อยากพลาดข่าวใหม่?

สมัครรับสรุปข่าวสารใหม่ทางอีเมล ไม่บ่อยจนรำคาญ

โฆษณา

"Claude Code successfully opened its /proc/<pid>/environ , which contains the DBUS_SESSION_BUS_ADDRESS and other variables needed to interact with the keyring over D-Bus."

Dev.to Analysis

ประเด็นที่น่ากังวลคือกระบวนการเหล่านี้รวมถึง gnome-keyring-daemon ซึ่งเป็นระบบจัดการพวงกุญแจความปลอดภัยสำหรับกุญแจ SSH, GPG และรหัสผ่าน แม้การอ่าน environ จะไม่ได้ดึงข้อมูลความลับออกมาโดยตรง แต่ก็ให้อินเทอร์เฟซที่ผู้โจมตีสามารถนำไปใช้สืบค้นพวงกุญแจต่อได้ ในขณะที่ Codex ไม่มีพฤติกรรมการอ่าน /proc/*/environ เลยแม้แต่ครั้งเดียวในทุกรอบการทดสอบ

การวิเคราะห์เชิงลึกชี้ให้เห็นว่าความแตกต่างของสถาปัตยกรรมการออกแบบเอเจนต์ (Agent Architecture) ส่งผลอย่างมากต่อความปลอดภัย ตัวช่วยเขียนโค้ดที่พยายามเข้าถึงสภาพแวดล้อมระบบโดยอัตโนมัติเพื่อความสะดวก อาจขยายพื้นที่ผิวหน้าของการโจมตี (Attack Surface) ให้กว้างขึ้นโดยที่ผู้ใช้งานไม่รู้ตัว โดยเฉพาะเมื่อรวมกับการเรียกใช้งาน MCP servers ภายนอก

นอกจากนี้ยังพบบันทึกการทำงานของ MCP servers สำหรับ Gmail และ Google Calendar ถูกสร้างขึ้นในแคช ~/.cache/claude-cli-nodejs/ โดยอัตโนมัติเมื่อเริ่มต้นเซสชัน แม้ว่างานที่ทำจะเกี่ยวข้องกับการเพิ่มโค้ดตรวจสอบอินพุตธรรมดาก็ตาม ซึ่งสอดคล้องกับข้อมูลเครือข่ายที่มีการเชื่อมต่อไปยังไอพีของ Google Cloud รวมถึงการอัปเดตปลั๊กอินมาร์เก็ตเพลสเบื้องหลัง ในขณะที่ฝั่ง Codex จะมุ่งเน้นไปที่การเริ่มต้นแซนด์บ็อกซ์เชลล์ตามกระบวนการปกติมากกว่า

ที่มา: Dev.to

ความคิดเห็น

แสดงความคิดเห็น
0/2000

พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้