แบ็กดอร์ใน Postmark กำลังดาวน์โหลดอีเมล
(koi.security)- เมื่อไม่นานมานี้มีการตรวจพบพฤติกรรมที่เป็นอันตรายในโมดูล postmark-mcp
- ตั้งแต่ เวอร์ชัน 1.0.16 เป็นต้นมา ได้มีการเพิ่มโค้ดที่คัดลอกอีเมลไปยังเซิร์ฟเวอร์ภายนอกของผู้พัฒนา
- ช่องโหว่เชิงโครงสร้างที่ทำให้ อีเมลที่มีความอ่อนไหว ของหลายร้อยองค์กรรั่วไหลได้ถูกเปิดเผย
- เนื่องจากไม่มี โมเดลความเชื่อถือ สำหรับเซิร์ฟเวอร์ MCP ความเสี่ยงจากการโจมตีซัพพลายเชนจึงเพิ่มสูงขึ้น
- ผู้ใช้ MCP ทุกคนจำเป็นต้อง ตรวจสอบและถอดออกทันที
ความเป็นจริงของเซิร์ฟเวอร์ MCP และภาพรวมเหตุการณ์ postmark-mcp
- เซิร์ฟเวอร์ MCP เป็นเครื่องมือที่ช่วยให้ AI assistant จัดการ งานซ้ำ ๆ เช่น การส่งอีเมลและการรันคิวรีฐานข้อมูล ได้โดยอัตโนมัติ
- เครื่องมือเหล่านี้ทำงานด้วย สิทธิ์ระดับสูงมาก และนักพัฒนามักติดตั้งโค้ดที่ผู้อื่นสร้างขึ้นโดยอาศัยความเชื่อถือเป็นหลัก แทบไม่มีระบบตรวจสอบที่แท้จริง
- แพ็กเกจยอดนิยมอย่าง postmark-mcp นำซอร์สโค้ดจาก GitHub repository อย่างเป็นทางการของ Postmark มาใช้ แล้วเพิ่มบรรทัด BCC ที่เป็นอันตรายเข้าไปก่อนเผยแพร่ขึ้น npm ด้วยชื่อเดียวกัน
- ตั้งแต่เวอร์ชัน 1.0.16 มีการเพิ่มโค้ดเพียงหนึ่งบรรทัดลงในโค้ดที่ดูทำงานปกติ เพื่อให้ อีเมลทุกฉบับ ถูกคัดลอกไปยังเซิร์ฟเวอร์ส่วนตัวของผู้พัฒนา (giftshop.club)
- กล่าวคือ นี่คือเหตุการณ์ที่ทำให้ ข้อมูลอีเมลทั้งหมด ไม่ว่าจะเป็นการรีเซ็ตรหัสผ่าน ใบแจ้งหนี้ บันทึกภายใน หรือเอกสารลับ ถูกเปิดเผย
การตรวจจับความผิดปกติและโครงสร้างการโจมตี
- Risk Engine ของ Koi ตรวจพบสัญญาณผิดปกติในเวอร์ชัน 1.0.16
- ตัวตนของผู้พัฒนาดูปกติบน GitHub และช่องทางอื่น ๆ และ 15 เวอร์ชันแรกก็ทำงานได้ไม่มีปัญหา จึงสร้างความน่าเชื่อถือขึ้นมา
- ในเวอร์ชัน 1.0.16 มีการเพิ่มฟังก์ชันที่ทำให้ข้อมูลสำคัญรั่วออกไปภายนอกด้วยโค้ดเพียงบรรทัดเดียว
- ผู้โจมตีใช้วิธีคัดลอกโค้ดพร้อมกับปลอมตัวเป็นผู้พัฒนาเดิม (Classic impersonation)
- เครื่องมือที่เคยใช้งานได้ตามปกติกลับค่อย ๆ กลายเป็น โครงสร้างพื้นฐานที่ตั้งอยู่บนความเชื่อถือ และต่อมาจึงเริ่มทำงานในลักษณะอันตราย
ผลกระทบและวิธีการรั่วไหลของอีเมล
- มีการดาวน์โหลดประมาณ 1,500 ครั้งต่อสัปดาห์ และหากสมมติว่ามีการใช้งานจริงราว 20% ก็หมายความว่ามีหลายร้อยองค์กรที่อยู่ในข่ายเสี่ยง
- คาดว่ามี อีเมล 3,000 ถึง 15,000 ฉบับต่อวัน ถูกส่งไปยัง giftshop.club
- ผู้ใช้ไม่ได้ตรวจสอบการทำงานของเครื่องมือทีละรายการ แต่ปล่อยให้ AI assistant รันงานส่วนใหญ่โดยอัตโนมัติ
- ไม่มีทั้งโมเดลความปลอดภัย, sandbox หรือกระบวนการตรวจสอบใด ๆ เลย
- แม้ว่าผู้พัฒนาจะลบแพ็กเกจออกจาก npm แล้ว แต่ในสภาพแวดล้อมของผู้ใช้ที่ติดตั้งไปก่อนหน้า การลบนั้นไม่ช่วยให้หยุดผลกระทบได้ และ ข้อมูลยังคงรั่วไหลต่อเนื่อง
การวิเคราะห์ลำดับขั้นของการโจมตี
-
ขั้นที่ 1: เผยแพร่เครื่องมือปกติ
- ตั้งแต่ 1.0.0 ถึง 1.0.15 ทำงานได้ตามปกติและสะสมความเชื่อถือ
-
ขั้นที่ 2: แทรกโค้ดอันตราย
- ใน 1.0.16 เพิ่ม BCC หนึ่งบรรทัดเพื่อคัดลอกอีเมลออกไปภายนอก
-
ขั้นที่ 3: เก็บรวบรวมข้อมูล
- รหัสผ่าน, API key และข้อมูลการเงิน/ข้อมูลลูกค้าถูกรั่วไหลไปยัง giftshop.club
-
ไม่สามารถติดต่อผู้พัฒนาได้ และแม้จะลบแพ็กเกจออกจาก npm แล้ว แต่ความเสียหายในสภาพแวดล้อมที่ติดตั้งไว้ก่อนหน้ายังคงดำเนินต่อไป
ข้อบกพร่องเชิงโครงสร้างของระบบนิเวศ MCP
- เซิร์ฟเวอร์ MCP แตกต่างจากแพ็กเกจ npm ทั่วไป เพราะเป็น เครื่องมือความเสี่ยงสูงที่ AI assistant เรียกใช้อัตโนมัติหลายร้อยหรือหลายพันครั้ง
- ทั้ง AI และโซลูชันความปลอดภัยแบบเดิมไม่สามารถตรวจจับได้ว่าโค้ดเป็นอันตรายหรือไม่ และยังคงพึ่งพาความเชื่อถือเป็นหลัก
- ระบบนิเวศ MCP โดยรวมมีโครงสร้างที่เสี่ยง เพราะ มอบอำนาจทั้งหมดเหนือทรัพยากรสำคัญให้แก่นักพัฒนานิรนาม
- จำเป็นต้องมีมาตรการควบคุมด้านความปลอดภัย เช่น การระบุการโจมตีผ่านการตรวจจับการเปลี่ยนแปลงพฤติกรรม และ ซัพพลายเชนเกตเวย์
- Koi กำลังผลักดันการป้องกันและการตรวจสอบแพ็กเกจอันตรายลักษณะคล้ายกันด้วย Risk Engine และเกตเวย์
แนวทางรับมือและ IOC
- แพ็กเกจอันตราย: postmark-mcp (npm)
- เวอร์ชันอันตราย: 1.0.16 ขึ้นไป
- อีเมลที่ใช้รั่วไหล: phan@giftshop[.]club
- โดเมน: giftshop[.]club
วิธีตรวจจับ
- ตรวจสอบในอีเมลล็อกว่ามีร่องรอยการส่ง BCC ไปยัง giftshop.club หรือไม่
- ตรวจสอบพารามิเตอร์การส่งต่ออีเมลที่ไม่คาดคิดในการตั้งค่าเซิร์ฟเวอร์ MCP
- ตรวจสอบประวัติการติดตั้ง postmark-mcp เวอร์ชัน 1.0.16 ขึ้นไปอย่างละเอียด
การตอบสนองและการกู้คืน
- ลบ postmark-mcp ทันที
- หมุนเวียน ข้อมูลรับรอง ทั้งหมดที่ถูกแชร์ทางอีเมลในช่วงเวลาที่ถูกบุกรุก
- ตรวจสอบอีเมลล็อกทั้งหมดสำหรับ ข้อมูลอ่อนไหว ที่อาจถูกขโมย
- หากยืนยันความเสียหายได้ ให้รายงานต่อหน่วยงานที่เกี่ยวข้องทันที
บทสรุปและคำแนะนำ
- สำหรับเซิร์ฟเวอร์ MCP ทุกตัว จำเป็นต้องมีขั้นตอน ตรวจสอบตัวตนนักพัฒนา, ตรวจสอบโค้ด และตรวจสอบความปลอดภัย อย่างเคร่งครัด
- ด้วยลักษณะของ MCP ในฐานะโครงสร้างพื้นฐาน AI อัตโนมัติ จึงจำเป็นต้องใช้โมเดลไม่ไว้วางใจขั้นต่ำและมีการเฝ้าติดตามอย่างต่อเนื่อง
- ผู้ใช้ postmark-mcp เวอร์ชัน 1.0.16 ขึ้นไปต้องลบออกและดำเนินมาตรการด้านความปลอดภัยทันที
- ควรตระหนักว่าการใช้งานบนพื้นฐานของความเชื่อถือเท่ากับต้องเผชิญกับความเสี่ยงของ การโจมตีซัพพลายเชน
- การยึด Paranoia (ความไม่ไว้วางใจ/ความระแวง) เป็นแนวปฏิบัติพื้นฐาน คือกลยุทธ์ที่สมเหตุสมผลสำหรับการใช้ MCP
1 ความคิดเห็น
ความคิดเห็นจาก Hacker News
npm i) หรืออะไรบางอย่างในระบบอัตโนมัติกำลังติดตั้งมัน ในงานจริง ถ้า CI ตั้งค่าลวก ๆ ก็อาจรันnpm iทุกครั้งที่รัน หรือไม่ก็ตามแต่ละสเตจ ดังนั้นยอดดาวน์โหลด 1,500 ครั้งจริง ๆ อาจมาจากแค่ 2 บริษัทก็ได้ ที่หนึ่งมีนักพัฒนาลองใช้ทำ PoC ส่วนอีกที่ CI ตั้งค่าเละเทะ ดูจาก repo ทางการก็มีแค่ watch 1, fork 0, star 2 https://github.com/ActiveCampaign/postmark-mcp ตัว MCP กับปัญหา supply chain นั้นร้ายแรงจริง แต่เคสนี้ผลกระทบจริงแทบเป็นศูนย์