สรุปสั้น

นักวิจัยจาก ThreatDown เปิดโปงบอตเน็ตชื่อ CARBONATO ที่เปลี่ยนเซิร์ฟเวอร์ Docker ให้กลายเป็นหัวสะพานสำหรับผู้โจมตี จุดที่ทำให้ต่างจากบอตเน็ตทั่วไปคือมันฝัง AI agent ไว้ในระบบที่ถูกยึด แล้วให้ผู้ควบคุมส่งงานเข้ามาผ่าน Telegram และรับผลลัพธ์กลับได้ทันที การโจมตีเริ่มจากบริการ Docker ที่เปิดออกสู่อินเทอร์เน็ตโดยไม่มีการยืนยันตัวตน เมื่อเข้าถึงได้แล้ว CARBONATO จะสร้าง container แบบ privileged เพื่อคุมเครื่องโฮสต์ ฝังตัวให้อยู่รอดแม้รีบูต และไล่สแกนเครือข่ายข้างเคียงเพื่อหาเซิร์ฟเวอร์เป้าหมายรายต่อไป

ThreatDown พบปฏิบัติการนี้หลังไปเจอ Docker registry ที่เปิดโดยไม่มีการยืนยันตัวตนมาตั้งแต่เดือนพฤษภาคม 2569 ภายในวันเดียวทีมงานกู้ข้อมูลออกมาได้ถึง 59 repository, image tag 234 รายการ, blob ที่ยืนยันแล้ว 605 ชิ้น และข้อมูลรวม 4.3 GB ครอบคลุมช่วงตุลาคม 2567 ถึงสิงหาคม 2569 สิ่งที่น่ากังวลคือ CARBONATO แพร่กระจายได้เองโดยไม่ต้องรอคำสั่งใหม่ ขณะที่ AI agent ที่ผู้โจมตีควบคุมสามารถเก็บ credential สำคัญและลงมือทำต่อบนระบบที่ถูกยึดไปแล้ว งานนี้จึงสะท้อนว่าการตั้งค่าผิดเพียงจุดเดียวขยายกลายเป็นปัญหาระดับทั้งเครือข่ายได้

รายละเอียดข่าว

เว็บไซต์ Cyber Security News รายงานเมื่อวันที่ 25 กันยายน 2569 ว่า บริษัท ThreatDown ได้เผยแพร่รายงานที่แชร์ให้ Cyber Security News (CSN) เกี่ยวกับบอตเน็ต CARBONATO ซึ่งใช้ AI agent เป็นแกนกลางในการปฏิบัติการภายในเครื่องเหยื่อ จุดเด่นของมันคือไม่ได้ดัดแปลงซอฟต์แวร์ของ agent เลย แต่ผู้โจมตีติดตั้งเฟรมเวิร์กโอเพนซอร์สชื่อ Hermes Agent ตามปกติ แล้วแทนที่ไฟล์ persona ด้วยชุดคำสั่ง 39 บรรทัด ที่สั่งให้ agent คงการเข้าถึงเอาไว้ เก็บ secret และเชื่อฟังคำสั่งที่ส่งเข้ามาทาง Telegram

เมื่อผู้ควบคุมส่งงานเข้ามา คำสั่งจะเดินทางพร้อมชุดคำสั่งเริ่มต้นไปยัง language model gateway ของกลุ่ม โมเดลจะตีความคำขอ เขียนคำสั่งเทอร์มินัล ตรวจผลลัพธ์ที่ได้ แล้วตัดสินใจว่าจะลองอะไรต่อ จากนั้น agent จะรันคำสั่งเหล่านั้นบนเซิร์ฟเวอร์เหยื่อและรายงานกลับผ่าน Telegram เป้าหมายอันดับต้นของ agent คือคีย์ AI API ที่มีความอ่อนไหว ซึ่งถูกจัดลำดับความสำคัญเหนือกว่า SSH credential, access token และฐานข้อมูลเสียอีก แนวโน้มนี้สอดคล้องกับกิจกรรม ransomware ยุคใหม่ที่ใช้เครื่องมืออัตโนมัติเจาะจากการเข้าถึงครั้งแรกไปสู่การสร้างความเสียหายอย่างรวดเร็ว

นักวิจัยยังพบว่า gateway โฆษณาว่ามีโมเดล 12 ตัว แต่ให้บริการจริงถึง 27 ตัวผ่านหน้าอินเทอร์เฟซ นั่นหมายความว่าเครื่องที่ติดเชื้อกลายเป็นแหล่งจ่ายทั้ง credential ของ AI และ secret แบบดั้งเดิมไปพร้อมกัน ThreatDown ระบุว่าตัวเฟรมเวิร์กเองไม่ได้ถูกแก้ไข พฤติกรรมอันตรายทั้งหมดมาจากชุดคำสั่งที่ยัดเข้าไปตอน startup ประเด็นนี้สำคัญ เพราะการบล็อกการติดตั้ง agent ที่ถูกกฎหมายทุกกรณีก็จะไปรบกวนผู้ใช้ทั่วไปด้วยเช่นกัน

CARBONATO botnet plants an AI agent inside compromised Docker servers controlled via Telegram

วิธีการโจมตี

บอตเน็ตจะมองหา Docker daemon ที่ยอมรับการเชื่อมต่อผ่านเครือข่ายโดยไม่ต้องยืนยันตัวตน (พอร์ต 2375) แล้วอาศัยบริการที่เปิดอยู่นั้นสั่งสร้าง container แบบ privileged ที่เข้าถึงระบบไฟล์ กระบวนการ และเครือข่ายของเหยื่อได้ จากนั้นจึงรันคำสั่งลงบนเซิร์ฟเวอร์ที่อยู่เบื้องหลัง สคริปต์ทางเข้าจะเปิด reverse SSH tunnel ไปยัง relay ในประเทศคอสตาริกา ติดตั้ง SSH server พร้อมกุญแจของผู้โจมตี แล้วส่งรายละเอียดการ deploy กลับไปทาง Telegram อีกทั้งยังพรางตัว container และกระบวนการที่ติดเชื้อให้ดูเหมือนกิจกรรมปกติของ Linux เพื่อให้การตรวจสอบแบบผ่าน ๆ มองไม่ออก ในขั้นวาง Hermes Agent ผู้โจมตีจะเขียนทับไฟล์ persona SOUL.md ด้วยชุดคำสั่งที่สั่งให้ agent สวมบทบาทเป็น “senior hacker, pentester และ exploit developer” ในชื่อ GH0ST พร้อมสั่งให้คงการเข้าถึง ตอบกลับทาง Telegram และลงมือทำทุกปฏิบัติการที่ผู้ควบคุมสั่งโดยไม่มีข้อจำกัดทางศีลธรรมหรือจริยธรรม

CARBONATO สร้างความคงอยู่ด้วยหลายกลไกพร้อมกัน ทั้ง cron job, systemd timer, สคริปต์ตอน startup และ OpenRC แล้วทำให้ไฟล์ที่เกี่ยวข้องแก้ไขได้ยาก มีตัว watchdog คอยดึง implant กลับมาจาก registry เดิมได้อีกหากมันหายไป ยิ่งตอกย้ำความเสี่ยงแบบเดียวกับการโจมตี Docker ที่เปิดทิ้งไว้ในอดีตซึ่งทำให้ผู้บุกรุกยึดโฮสต์ได้ยาวนาน ทุก ๆ ห้านาที สคริปต์จะสำรวจเครือข่ายที่ต่ออยู่กับโฮสต์และ Docker bridge แล้วสแกนแต่ละช่วง /24 เพื่อหาบริการ Docker ที่เปิดอยู่ เมื่อเจอ daemon ที่เปิดอีกเครื่อง ก็จะ deploy ซ้ำแบบเดิม โดย AI agent ไม่ได้เป็นผู้จัดการการแพร่กระจายนี้ แต่เป็นสคริปต์ธรรมดาที่ทำหน้าที่สแกนและติดตั้งเอง

registry เดียวกันนี้ยังเก็บแอปกระเป๋าเงินคริปโตที่ฝังโทรจันไว้ควบคู่กับส่วนประกอบของบอตเน็ต การที่ image layer และ configuration ถูกเปิดทิ้งไว้ทำให้นักวิจัยเห็นภาพปฏิบัติการได้ละเอียด และตอกย้ำความเสี่ยงในวงกว้างของการเปิด container image ส่วนตัวเมื่อ registry ไม่มีการควบคุมการเข้าถึงที่เหมาะสม

บริบท: การใช้ Hermes Agent ในแคมเปญอัตโนมัติอื่น

CARBONATO ไม่ใช่ปฏิบัติการเดียวที่หยิบเฟรมเวิร์ก Hermes Agent มาใช้ การเปิดเผยนี้เกิดขึ้นท่ามกลางแนวโน้มที่ผู้ก่อภัยหันมาใช้เครื่องมือและโมเดล AI ทำงานเชิงรุกแบบอัตโนมัติมากขึ้น เมื่อเดือนกรกฎาคม 2569 บริษัท Palo Alto Networks (Unit 42) เชื่อมโยงผู้ก่อภัยฐานจีนที่ใช้ชื่อ “knaithe”/“KnYuan” เข้ากับแคมเปญที่อาศัย DeepSeek ผ่านเฟรมเวิร์ก Hermes Agent ซึ่งตั้งค่าให้รับคำสั่งทาง Telegram เพื่อสำรวจเป้าหมาย จัดหาเครื่องมือโจมตี และลงมือโดยไม่มีมนุษย์ควบคุม เดือนเดียวกัน บริษัท Hunt.io ยังพบปฏิบัติการที่ใช้ Hermes Agent ในโหมด “YOLO” แบบไร้คนดูแลเจาะกระทรวงการคลังของไทยจนทะลุหลายระบบในเครือข่าย ซึ่ง Cloud Thunder เคยรายงานไว้ก่อนหน้านี้ และล่าสุดบริษัท Gambit Security เปิดเผยว่าผู้ก่อภัยที่พูดภาษาจีนซึ่งมีแรงจูงใจด้านการเงินรัน AI harness โอเพนซอร์ส 3 ตัว (Strix สำหรับล่าช่องโหว่, Cairn สำหรับ exploitation อัตโนมัติแบบ end-to-end และ Hermes สำหรับ orchestration/post-exploitation) โจมตีร้านค้าออนไลน์หลายร้อยแห่ง ยึดได้อย่างน้อย 27 บริษัท ขโมยข้อมูลบัตรเครดิตกว่า 600,000 รายการจาก 2 แห่ง และ inject สคริปต์ skimmer ลง 5 ร้าน โดยใช้ DeepSeek v4.1 Flash รัน 105 โปรเจกต์โจมตีระหว่างวันที่ 10–15 กันยายน 2569

ผลกระทบ

องค์กรที่รัน Docker daemon เปิดออกสู่อินเทอร์เน็ตโดยไม่ตั้งการยืนยันตัวตนคือกลุ่มเสี่ยงโดยตรง เพราะ CARBONATO อาศัยความผิดพลาดจุดเดียวนี้ยกระดับจนคุมเครื่องโฮสต์และลามไปทั่วเครือข่ายได้ ผลลัพธ์ไม่ได้จำกัดแค่การขุดคริปโตกินทรัพยากร แต่รวมถึงการดูดคีย์ AI API, SSH credential, access token และฐานข้อมูลออกไป ซึ่งเปิดทางให้เกิดความเสียหายต่อเนื่องได้อีกมาก การที่คีย์ AI API ถูกจัดเป็นเป้าหมายอันดับหนึ่งยังสะท้อนว่าทรัพย์สินประเภทใหม่ในระบบ DevOps และ CI/CD กำลังกลายเป็นของมีค่าสำหรับผู้โจมตี นอกจากนี้การใช้ AI agent แปลงคำสั่งภาษาคนเป็นคำสั่งระบบแบบอัตโนมัติ ยังทำให้ผู้โจมตีลงมือได้เร็วและปรับตัวตามสภาพเครื่องเหยื่อได้ทันที

คำแนะนำ

ผู้ดูแลระบบควรกันไม่ให้ Docker daemon API เปิดออกสู่เครือข่ายสาธารณะ และตั้งการยืนยันตัวตนให้กับ registry ทุกตัว ควรตรวจหา container แบบ privileged ที่ไม่คาดคิด และเฝ้าระวัง traffic ไปยัง Telegram ที่ออกจากเซิร์ฟเวอร์ นอกจากนี้ให้ตรวจสอบการตั้งค่าความคงอยู่ที่ผิดปกติ (cron, systemd timer, OpenRC, สคริปต์ startup) ทำบัญชีและหมุนเวียนคีย์ AI API อย่างสม่ำเสมอ รวมถึงตรวจสอบ indicator of compromise ที่ระบุไว้ด้านล่าง ThreatDown ระบุว่าเบาะแสด้านภาษา, timestamp ตอน build, Telegram handle และ reverse tunnel ชี้ไปทางคอสตาริกา แต่ย้ำว่าเป็นเพียงการประเมิน ไม่ใช่การยืนยันตัวตนที่แน่ชัด สิ่งที่ควรทำเร่งด่วนที่สุดคือตัดการเข้าถึงผ่านบริการ Docker ที่เปิดอยู่ ก่อนที่บอตเน็ตจะลามไปยังโฮสต์อื่น

Indicators of Compromise (IoCs)

ประเภทIndicatorคำอธิบาย
Network45[.]79[.]183[.]61C2 hub (Linode)
Network91[.]99[.]195[.]164C2 ยุค fsociety (Hetzner)
Network213[.]136[.]79[.]115Beacon / reverse shell (Contabo, พอร์ต 8080 และ 4444)
Network213[.]136[.]83[.]197LLM gateway (Contabo), ยังทำงานอยู่
Network190[.]211[.]124[.]187ปลายทาง reverse-tunnel (AS262145, คอสตาริกา)
Networkcarbonato-proxy-{drab,zeta,zeta-2}[.]vercel[.]appLLM proxy, ถูกระงับแล้ว
NetworkRegistry fleet บน AS40065เจ็ด endpoint, หกตัวยังทำงาน, ปกปิดไว้ระหว่างยังทำงาน
Containergh0st/, fsociety/, netd-svc, system/resolved, scrub-emptyชื่อ repository, รวม 59 รายการ
ContainerGH0ST_C2, FSOCIETY_DISABLE_TUNNEL, GATEWAY_ALLOW_ALL_USERSตัวแปรสภาพแวดล้อมของ image
Container/opt/gh0st/entry.sh, auto-persist-host.sh, SOUL.mdไฟล์ชุด implant
Host/usr/local/bin/.docker-network-monitorไบนารี watchdog
Host/usr/sbin/systemd-logindตัวขุดเหรียญที่พรางเป็นบริการระบบ
Host[kworker/u2:0]อาร์กิวเมนต์กระบวนการที่พรางตัว
Secretcarbonato125รหัสผ่านที่ใช้ร่วมกันทั้งคลัง
SecretCARBONATO_API_KEYตัวแปรใน .env บนเครื่องที่ติดเชื้อ
TelegramChat 750752697แชตรายงานการ deploy และ C2

หมายเหตุ: IP และโดเมนถูก defang (เช่น [.]) โดยเจตนาเพื่อป้องกันการ resolve หรือกดลิงก์โดยไม่ตั้งใจ ให้ re-fang เฉพาะภายในแพลตฟอร์ม threat intelligence ที่ควบคุมได้ เช่น MISP, VirusTotal หรือ SIEM ขององค์กรเท่านั้น

แหล่งอ้างอิง