Perfctl มัลแวร์สายพันธุ์ดุ บุกโจมตี Linux ด้วยเทคนิคพรางตัวขั้นสูง

เหล่านักวิจัยจาก Aqua Security ได้เปิดเผยการค้นพบมัลแวร์อันตรายที่ชื่อว่า Perfctl ซึ่งกำลังแพร่ระบาดในระบบปฏิบัติการ Linux โดยมัลแวร์ตัวนี้มีความโดดเด่นในด้านการพรางตัวที่แนบเนียน และความสามารถในการเจาะระบบผ่านการตั้งค่าที่ผิดพลาด (Misconfigurations) จำนวนมหาศาล ทำให้เครื่องคอมพิวเตอร์หลายล้านเครื่องที่เชื่อมต่ออินเทอร์เน็ตตกเป็นเป้าหมายได้

Perfctl เริ่มแพร่ระบาดมาตั้งแต่ปี 2021 โดยใช้วิธีการโจมตีที่หลากหลาย ทั้งการอาศัยจุดอ่อนจากการตั้งค่าระบบที่หละหลวมกว่า 20,000 รูปแบบ รวมถึงการใช้ช่องโหว่ CVE-2023-33426 ใน Apache RocketMQ (แพลตฟอร์มสำหรับส่งข้อความและสตรีมมิ่ง) ซึ่งเป็นช่องโหว่ระดับวิกฤตที่มีคะแนนความรุนแรงเต็ม 10 คะแนน

กลไกการทำงานและการพรางตัวของ Perfctl

ชื่อของมัลแวร์นี้ถูกตั้งให้คล้ายกับเครื่องมือตรวจสอบระบบของ Linux ที่ชื่อว่า perf ผสมกับคำว่า ctl (ย่อมาจาก control) เพื่อให้ผู้ดูแลระบบเข้าใจผิดว่าเป็นกระบวนการทำงานปกติของระบบ นอกจากนี้ Perfctl ยังใช้เทคนิคขั้นสูงเพื่อหลบเลี่ยงการตรวจจับ ดังนี้:

  • การใช้ Rootkit: ติดตั้งส่วนประกอบในรูปแบบของ Rootkit (มัลแวร์ประเภทที่สามารถซ่อนตัวจากการมองเห็นของระบบปฏิบัติการและเครื่องมือจัดการระบบ)
  • การหยุดทำงานชั่วคราว: เมื่อตรวจพบว่ามีผู้ใช้งานล็อกอินเข้าสู่ระบบ มัลแวร์จะหยุดกิจกรรมที่สังเกตเห็นได้ง่ายทันที
  • การสื่อสารลับ: ใช้ Unix socket ผ่านเครือข่าย TOR เพื่อติดต่อกับเซิร์ฟเวอร์ภายนอก
  • การลบร่องรอย: ลบไฟล์ติดตั้งทิ้งทันทีหลังทำงาน และเปลี่ยนไปรันเป็นบริการเบื้องหลัง (Background Service) แทน
  • การดัดแปลงระบบ: ใช้เทคนิค Hooking เพื่อแทรกแซงกระบวนการ pcap_loop ของ Linux ทำให้เครื่องมือตรวจสอบไม่สามารถบันทึกทราฟฟิกที่ผิดปกติได้
  • การปิดการแจ้งเตือน: ระงับข้อผิดพลาดของ mesg เพื่อไม่ให้มีคำเตือนปรากฏขึ้นขณะทำงาน

การรักษาตัวตนในระบบ (Persistence)

เพื่อให้สามารถทำงานได้อย่างต่อเนื่องแม้จะมีการรีบูตเครื่องหรือพยายามลบไฟล์ทิ้ง Perfctl ได้ใช้วิธีการดังนี้:

  1. แก้ไขสคริปต์ ~/.profile เพื่อให้มัลแวร์เริ่มทำงานก่อนโปรแกรมปกติเมื่อผู้ใช้ล็อกอิน
  2. คัดลอกตัวเองจากหน่วยความจำ (Memory) ไปยังตำแหน่งต่างๆ บนดิสก์หลายจุด
  3. ใช้การ Hooking pcap_loop เพื่อให้กิจกรรมที่เป็นอันตรายยังคงดำเนินต่อไปได้แม้ตัว Payload หลักจะถูกตรวจพบและลบออกไปแล้ว

เป้าหมายและผลกระทบจากการโจมตี

Perfctl ไม่ได้ทำหน้าที่เพียงอย่างเดียว แต่เป็นเครื่องมืออเนกประสงค์สำหรับอาชญากรไซเบอร์ โดยมีวัตถุประสงค์หลักดังนี้:

  • ขุดสกุลเงินดิจิทัล (Cryptomining): แอบใช้ทรัพยากร CPU ของเครื่องเหยื่อเพื่อขุดเหรียญ
  • Proxy-jacking: เปลี่ยนเครื่องที่ติดเชื้อให้กลายเป็น Proxy เพื่อให้ลูกค้าที่จ่ายเงินนำไปใช้ส่งทราฟฟิกอินเทอร์เน็ตเพื่อปกปิดตัวตนที่แท้จริง
  • ประตูหลัง (Backdoor): ทำหน้าที่เป็นช่องทางให้มัลแวร์ตระกูลอื่นสามารถเข้ามาติดตั้งในระบบได้เพิ่มเติม
สรุปข้อมูลทางเทคนิคของมัลแวร์ Perfctl
หัวข้อ รายละเอียด
ปีที่เริ่มระบาด ตั้งแต่ปี 2021
ช่องโหว่หลักที่ใช้ CVE-2023-33426 (Apache RocketMQ), CVE-2021-4043 (Gpac)
เทคนิคการพรางตัว Rootkit, Hooking, TOR, การเลียนแบบชื่อ Process ระบบ
วัตถุประสงค์ ขุดเหรียญดิจิทัล, Proxy-jacking, ติดตั้งมัลแวร์เพิ่มเติม
จำนวนเครื่องที่คาดว่าติดเชื้อ หลายพันเครื่อง (จากกลุ่มเสี่ยงหลายล้านเครื่อง)

ข้อเท็จจริงสำคัญ

  • Perfctl ใช้การตั้งค่าที่ผิดพลาดกว่า 20,000 รูปแบบในการเข้าถึงระบบ
  • มัลแวร์จะหยุดทำงานทันทีเมื่อผู้ดูแลระบบล็อกอินผ่าน SSH ทำให้ตรวจพบได้ยาก
  • มีการใช้เทคนิคการเข้ารหัสและบีบอัดไฟล์ (Packed, Stripped, Encrypted) เพื่อป้องกันการทำ Reverse Engineering
  • สามารถกำจัดมัลแวร์คู่แข่งตัวอื่นในเครื่องเดียวกันเพื่อครองอำนาจการควบคุมระบบแต่เพียงผู้เดียว

คำถามที่พบบ่อย

จะรู้ได้อย่างไรว่าเครื่อง Linux ของเราติดมัลแวร์ Perfctl?

สัญญาณเตือนที่ชัดเจนที่สุดคือการที่ CPU ทำงานหนักผิดปกติ (Spike) หรือเครื่องช้าลงอย่างกะทันหันในช่วงที่ไม่มีการใช้งานหนัก โดยเฉพาะหากอาการเหล่านี้หายไปทันทีเมื่อคุณล็อกอินเข้าสู่ระบบ

ทำไมการลบไฟล์ที่สงสัยถึงไม่สามารถกำจัด Perfctl ได้?

เนื่องจาก Perfctl มีกลไกการรักษาตัวตน (Persistence) ที่ซับซ้อน เช่น การคัดลอกตัวเองไว้หลายจุดในดิสก์ และการแก้ไขสคริปต์ระบบ ทำให้มัลแวร์สามารถสร้างตัวเองขึ้นมาใหม่ (Respawn) ได้ทุกครั้งที่มีการรีบูตหรือล็อกเอาต์

มัลแวร์ตัวนี้เจาะระบบเข้ามาได้อย่างไร?

Perfctl เข้าสู่ระบบผ่านสองช่องทางหลัก คือการใช้ช่องโหว่ของซอฟต์แวร์ที่ไม่ได้อัปเดตแพตช์ (เช่น Apache RocketMQ และ Gpac) และการอาศัยการตั้งค่าระบบที่ผิดพลาดซึ่งพบได้ทั่วไปในเซิร์ฟเวอร์ Linux

วิธีป้องกันเบื้องต้นจาก Perfctl คืออะไร?

ควรหมั่นอัปเดตซอฟต์แวร์และแพตช์ความปลอดภัยให้เป็นปัจจุบันเสมอ ตรวจสอบการตั้งค่าระบบ (Configuration) ให้รัดกุม และเฝ้าระวังการใช้ทรัพยากร CPU ที่ผิดปกติผ่านเครื่องมือ Monitoring