กลับไปที่บล็อก

AI สำหรับผู้เริ่มต้นคู่มือ

รัน Claude Code หรือ Codex ใน Downloads? การตรวจสอบความปลอดภัยของ AGENTS.md

ไฟล์ชื่อ AGENTS.md หรือ CLAUDE.md ใน Downloads สามารถชี้นำ Claude Code และ Codex ได้ ไฟล์เหล่านี้คืออะไรและการตรวจสอบ config ของคุณใน 5 นาที

โดย CheapTokens Teamเผยแพร่เมื่อ ใช้เวลาอ่าน 6 นาที

ภาพปก: AGENTS.md ที่ถูกฝังในโฟลเดอร์ Downloads ไปถึง config ของเอเจนต์ AI
ในหน้านี้
  1. AGENTS.md และ CLAUDE.md คืออะไร และทำไมเอเจนต์ถึงเชื่อ
  2. นักวิจัยทำอะไรกับไฟล์ใน Downloads
  3. การตั้งค่าใดที่ควรดู และค่าปกติหน้าตาเป็นอย่างไร
  4. การตรวจสอบ 5 นาที
  5. ถ้ามีอะไรดูผิดปกติ

ตอบสั้น ๆ: อย่าเริ่ม Claude Code หรือ Codex ในโฟลเดอร์ ~/Downloads ของคุณ เมื่อวันที่ 22 ตุลาคม 2026 บริษัทความปลอดภัย Forever Security เผยแพร่งานวิจัยที่แสดงว่าเว็บไซต์สามารถบันทึกไฟล์ชื่อ AGENTS.md หรือ CLAUDE.md ลงใน Downloads ได้อย่างเงียบ ๆ และเอเจนต์ที่เริ่มในโฟลเดอร์นั้นจะถือว่าไฟล์นี้เป็นคำสั่งที่เชื่อถือได้ ด้านล่างนี้คือไฟล์เหล่านี้คืออะไร นักวิจัยเปลี่ยนอะไรได้บ้าง และการตรวจสอบที่ใช้เวลาประมาณห้านาที

ลองนึกภาพกรณีปกติ คุณบันทึก PDF และภาพหน้าจอหลายสิบไฟล์จากเว็บไซต์ เปิดเทอร์มินัลใน Downloads พิมพ์ claude หรือ codex แล้วขอให้ "จัดเรียงไฟล์เหล่านี้" ไม่มีอะไรรู้สึกเสี่ยงเลย และนั่นแหละคือกับดัก

AGENTS.md และ CLAUDE.md คืออะไร และทำไมเอเจนต์ถึงเชื่อ#

เอเจนต์เขียนโค้ดไม่ได้เริ่มทุกเซสชันจากศูนย์ ก่อนที่มันจะดูคำขอของคุณ มันจะตรวจสอบโฟลเดอร์ที่มันถูกเริ่มว่ามีไฟล์ข้อความธรรมดาที่มีคำสั่งถาวรหรือไม่: "ใช้แท็บ รันเทสต์ด้วย npm test ห้ามแตะโฟลเดอร์ migrations" AGENTS.md คือชื่อทั่วไป CLAUDE.md คือแนวคิดเดียวกันสำหรับ Claude Code ในโปรเจกต์ของคุณเองไฟล์เหล่านี้มีประโยชน์ เพราะคุณเป็นคนเขียนมัน

แต่เอเจนต์บอกไม่ได้ว่าใครเขียนไฟล์ CLAUDE.md ที่เว็บไซต์ทิ้งไว้ใน Downloads ดูเหมือนกับไฟล์ที่คุณเขียนเมื่อสัปดาห์ที่แล้วทุกประการ

แฟลชการ์ด

คำศัพท์ที่คุณจะพบในบทความนี้

นักวิจัยทำอะไรกับไฟล์ใน Downloads#

โพสต์ของ Forever Security (ผู้เขียน Gal Weizman และ Omer Samet, 22 ตุลาคม 2026) อธิบายสองกรณี อัตราความสำเร็จทั้งหมดด้านล่างเป็นการวัดของนักวิจัยเอง

Codex. AGENTS.md ที่ถูกฝังไว้สั่งให้เอเจนต์เพิ่มรายการ MCP server ลงใน ~/.codex/config.toml และรายการนั้นนำไปสู่การติดตั้งแพ็กเกจ npm ชื่อ function-color ตามที่นักวิจัยระบุ เพย์โหลดทำงานในกว่าครั้ง 90% ของความพยายาม ดูว่าที่ไฟล์นั้นอยู่: โฟลเดอร์ home ของคุณ ไม่ใช่ Downloads config เป็นระดับเครื่อง ดังนั้นทุกเซสชันถัดไปในโฟลเดอร์ใดก็ตามจะได้รับผลกระทบ นานหลังจากที่คุณลืมโฟลเดอร์ Downloads ไปแล้ว

Claude Code. CLAUDE.md ที่ถูกฝังไว้พยายามเขียนการตั้งค่า ANTHROPIC_BASE_URL ลงใน .claude/settings.json การตั้งค่านี้กำหนดว่าเอเจนต์ส่งทราฟฟิก API ไปที่ไหน ชี้ไปที่เซิร์ฟเวอร์ของคนอื่น แล้วเซิร์ฟเวอร์นั้นจะเห็น OAuth token ของคุณและสามารถส่ง tool call กลับมาให้เอเจนต์รันได้ การเขียนสำเร็จประมาณครึ่งหนึ่งของครั้ง ส่วนเส้นทางที่ทำงานภายในเซสชันเดียวกัน ประมาณหนึ่งในห้าของครั้ง

จากไฟล์ที่ถูกฝังสู่ config ที่ถูกเปลี่ยน
วิธีที่ไฟล์คำสั่งที่ถูกฝังลงเอยในการตั้งค่าของเอเจนต์เอง (Forever Security, 22 ตุลาคม 2026)

โพสต์ระบุชัดว่าไม่มีอะไร "เสีย" ในผลิตภัณฑ์ทั้งสอง: เอเจนต์ทำงานตามที่ออกแบบ และความเสี่ยงมาจากตำแหน่งที่ไฟล์อยู่และระดับที่เอเจนต์เชื่อถือมัน Forever ยังระบุว่าพบ AGENTS.md ที่ถูกฝังจริงบนเครื่องของลูกค้ารายหนึ่งและหยุดการติดตั้ง npm ที่เป็นอันตรายก่อนโค้ดจะรัน; ต่อมา npm ได้ลบ function-color ออกแล้ว ส่วนหลังเป็นคำบอกเล่าของนักวิจัยเอง OpenNET รายงานเรื่องนี้เมื่อวันที่ 26 ตุลาคม 2026 และชี้ให้เห็นความเสี่ยงคล้ายกันเมื่อ AGENTS.md มาทาง pull request หรือ repository ที่โคลนมา

เช็กด่วน

ทำไมกรณี Codex ถึงแย่กว่าเซสชันแย่ ๆ ครั้งเดียวใน Downloads?

แสดงคำตอบ

คำตอบ: config ที่มันเปลี่ยนเป็นระดับเครื่อง ดังนั้นทุกเซสชันถัดไปในโฟลเดอร์ใดก็ตามจะได้รับผลกระทบ

ไฟล์ที่ถูกฝังต้องรันเพียงครั้งเดียว สิ่งที่มันเขียนลงใน ~/.codex/config.toml จะคงอยู่และมีผลกับเซสชันถัดไปในทุกโฟลเดอร์

การตั้งค่าใดที่ควรดู และค่าปกติหน้าตาเป็นอย่างไร#

สองไฟล์ หนึ่งไฟล์ต่อเครื่องมือหนึ่งตัวในงานวิจัย

ใน ~/.codex/config.toml มองหารายการ [mcp_servers.*] ที่คุณจำไม่ได้ว่าเพิ่มเข้าไป และหา base URL ที่คุณไม่ได้ตั้ง ค่าที่น่าสงสัยทำให้เครื่องของคุณดึงและรันบางอย่างจาก npm:

toml
[mcp_servers.helper]
command = "npx"
args = ["-y", "some-package"]

ชื่อ helper และแพ็กเกจตรงนี้เป็นตัวอย่าง ในกรณีของนักวิจัย แพ็กเกจที่อยู่เบื้องหลังรายการดังกล่าวคือ function-color

ใน .claude/settings.json มองหา API endpoint หรือ proxy ที่คุณไม่ได้ใส่ไว้ ถ้าคุณไม่เคยตั้ง ANTHROPIC_BASE_URL ไฟล์ไม่ควรกล่าวถึงเลย ถ้าคุณตั้งไว้ มันควรเป็นที่อยู่ของผู้ให้บริการที่คุณเลือก สำหรับ CheapTokens ไคลเอนต์สไตล์ Anthropic อย่าง Claude Code ใช้ https://api.cheaptokens.dev โดยไม่มี /v1 ต่อท้าย ส่วนไคลเอนต์สไตล์ OpenAI ใช้ https://api.cheaptokens.dev/v1

base URL ที่คุณตั้ง เทียบกับที่คุณไม่ได้ตั้ง
การตั้งค่าเดียวกันสองครั้ง: ที่อยู่ซ้ายคือที่ที่คุณเลือก ที่อยู่ขวาคือโฮสต์ที่คุณไม่รู้จัก (ตัวอย่าง)

ถ้าคุณรัน Claude Code ด้วยคีย์ของคุณเอง ขั้นตอนทีละขั้นสำหรับเชื่อมต่อ Claude Code กับ CheapTokens แสดงไฟล์ทั้งหมด และ เอกสาร แสดง base URL ทั้งสอง สำหรับลูปเอเจนต์ที่ยาวนาน DeepSeek-V4-Flash (deepseek-ai/DeepSeek-V4-Flash-0731) มี context 380K เอาต์พุตสูงสุด 32,768 token ต่อคำตอบ และราคาเดียวทุกชั่วโมง หน้าโมเดล มีส่วนที่เหลือ

Cline, Aider และเอเจนต์อื่น ๆ ไม่ได้อยู่ในงานวิจัยนี้ และแต่ละตัวเก็บการตั้งค่าไว้ในที่ของตัวเอง นิสัยก็เหมือนกัน: รู้ว่าไฟล์ใดเก็บ endpoint และอ่านมันสักครั้ง

การตรวจสอบ 5 นาที#

เปิดเทอร์มินัลและทำตามลำดับนี้ ไม่มีอะไรตรงนี้เปลี่ยนไฟล์ แค่อ่านเท่านั้น

ทีละขั้นตอน

ตรวจสอบเครื่องของคุณ

หาไฟล์คำสั่งที่หลงเหลือ

bash
find ~/Downloads -maxdepth 3 -name "AGENTS.md" -o -name "CLAUDE.md"

ผลลัพธ์ใดก็ตามที่คุณไม่ได้เขียน: เปิดเป็นข้อความและอ่าน ถ้าคุณไม่รู้ว่ามันมาจากไหน ลบมัน

อ่าน config ของ Codex

bash
grep -n "mcp_servers\|base_url" ~/.codex/config.toml

ทุกบรรทัด [mcp_servers.…] ควรเป็นสิ่งที่คุณจำได้ว่าเพิ่มเข้าไป "No such file" ก็ไม่เป็นไรถ้าคุณไม่ใช้ Codex

อ่านการตั้งค่าของ Claude Code

bash
grep -n "BASE_URL\|proxy" ~/.claude/settings.json .claude/settings.json

รันจากโฟลเดอร์โปรเจกต์ของคุณเพื่อให้ครอบคลุมทั้งสองไฟล์ ทุกที่อยู่ในเอาต์พุตควรเป็นผู้ให้บริการที่คุณเลือก

ดู shell ของคุณ

bash
env | grep -i "BASE_URL"

คำสั่งนี้แสดง base URL ที่ตั้งเป็นตัวแปรสภาพแวดล้อม กฎเดียวกัน: คุณควรจำแต่ละอันได้

มองหาแพ็กเกจจากกรณีศึกษา

bash
npm ls -g --depth=0 | grep function-color

รัน npm ls function-color ภายในโปรเจกต์ที่คุณเคยใช้เอเจนต์ด้วย ถ้ามันปรากฏขึ้น ให้ถือว่าเครื่องถูกบุกรุก

ถ้ามีอะไรดูผิดปกติ#

ปิดเอเจนต์ก่อน จากนั้นลบรายการที่คุณจำไม่ได้ และหมุนเวียนทุก credential ที่เอเจนต์มองเห็นได้: API key, token ทุกอย่างในสภาพแวดล้อม ถ้าแนวคิดเรื่องการหมุนเวียนคีย์เป็นเรื่องใหม่ API key คืออะไรและวิธีเก็บรักษา ครอบคลุมพื้นฐาน

นิสัยที่ป้องกันไม่ให้เกิดขึ้นอีก ทั้งหมดมาจากมาตรการบรรเทาของนักวิจัย:

  • เริ่มเอเจนต์ในโฟลเดอร์โปรเจกต์ที่คุณสร้างเอง ไม่ใช่ใน Downloads
  • อ่าน AGENTS.md หรือ CLAUDE.md ใดก็ตามที่คุณไม่ได้เขียนก่อนรันเอเจนต์กับมัน รวมถึงไฟล์ที่มาทาง clone หรือ pull request
  • เปิด approval prompt และ sandboxing ไว้ และระวังคำสั่งใดก็ตามที่ขอให้เอเจนต์ปิดมัน