พบแฮกเกอร์ใช้วิธีการพรางโค้ด ซ่อนโค้ดมัลแวร์ไว้ภายในไฟล์รูป PNG เพื่อปล่อยมัลแวร์

เมื่อ : 20 มีนาคม 2569
ผู้เข้าชม : 392
เขียนโดย :
image_big
image_big
เมื่อ : 20 มีนาคม 2569
ผู้เข้าชม : 392
เขียนโดย :

การซ่อนไฟล์มัลแวร์ หรือ Payload นั้นสามารถทำได้หลากวิธี ตั้งแต่การซ่อนผ่านทางการเปลี่ยนเป้าหมาย (Redirect) ตัว URL อย่างซับซ้อน, การใช้งานบริการคลังดิจิทัล หรือ Repo (Repository) ที่น่าเชื่อถือ และวิธีที่น่าจะกำลังมาแรงในปัจจุบันคือการซ่อนโค้ดไว้ในไฟล์ต่าง ๆ ที่ดูไม่มีพิษมีภัย เช่น ไฟล์รูปภาพ เป็นต้น ดังเช่นข่าวนี้

จากรายงานโดยเว็บไซต์ Cyber Security News ได้กล่าวถึงการตรวจพบแพคเกจ NPM ซึ่งเป็นแพคเกจ JavaScript ที่มีการซุกซ่อนมัลแวร์สำหรับการเข้าถึงระบบของเหยื่อจากระยะไกล หรือ RAT (Remote Access Trojan) แบบ .NET อยู่ด้วยการซ่อนโค้ดมัลแวร์ (Payload) ไว้ในไฟล์รูปภาพแบบ PNG ที่ดูไม่มีพิษมีภัยด้วยวิธีการแบบ Steganography (การพรางโค้ดอันตรายไว้ในไฟล์ธรรมดา) ซึ่งแพ็คเกจดังกล่าวนั้นจะแอบอ้างว่าเป็นแพ็คเกจชื่อว่า buildrunner-dev ซึ่งเป็นการตั้งชื่อให้คล้ายกับเครื่องมือพัฒนาอย่าง  buildrunner และ build-runner ซึ่งทั้ง 2 โครงการนั้นถูกผู้พัฒนาละทิ้งลอยแพไปนานแล้ว แต่ชื่อก็คล้ายมากพอที่จะทำให้ผู้ที่ค้นหาเครื่องมือทั้ง 2 ตัวนี้ดาวน์โหลดผิดตัวได้

ซึ่งกลไกการทำงานของมัลแวร์ดังกล่าวนั้นจะเริ่มขึ้นหลังจากเหยื่อทำการติดตั้งเครื่องมือจากแพ็คเกจดังกล่าวผ่านทาง npm install แล้วตัว Hook ที่ทำงานหลังจากการติดตั้งอย่าง Postinstall Hook จะทำการรันสคริปท์จากไฟล์ init.js ขึ้นมาเพื่อทำการดาวน์โหลดไฟล์สคริปท์แบบ Btach ชื่อว่า packageloader.bat ลงมาจาก Codeberg ซึ่งเป็นบริการ Repo แห่งหนึ่งที่มีความน่าเชื่อถือ ซึ่งไฟล์นี้จะคัดลอกตัวเองอย่างเงียบ ๆ ลงไปยังโฟลเดอร์ Windows Startup ซึ่งเป็นการสร้างความคงทนบนระบบ หรือ Persistence ทำให้รับประกันได้ว่าตัวมัลแวร์จะทำงานใหม่ทุกครั้งที่มีการเปิดเครื่อง หรือ รีบูทเครื่องขึ้นมาใหม่

ไฟล์ Batch ดังกล่าวนั้นนอกจากจะมีความสามารถในการสร้าง Persistence แล่ว ตัวไฟล์ยังได้มีการสร้างความสับสนให้กับระบบป้องกัน (Obfuscation) มากถึง 7 ชั้น ด้วยโค้ดที่มากถึง 1,653 บรรทัด แต่มีโค้ดที่มีฟังก์ชันใช้งานจริงเพียง 21 บรรทัดเท่านั้น นอกจากนั้นยังมีการใส่ความคิดเห็น (Comments) แบบกระคำอย่างไม่เป็นระเบียบ, ตัวแปรแบบขยะที่ไม่มีประโยชน์ (Junk Variables), ค่าสตริง (String) แบบ Base64 ปลอม ๆ ไว้เป็นจำนวนมาก เพื่อก่อกวนระบบการตรวจสอบแบบค่าคงที่ (Static Analysis) และการตรวจสอบด้วยมนุษย์ ให้เกิดความสับสนในการวิเคราะห์

และก่อนที่จะทำการรันโค้ด Payload ขึ้นมา ตัวมัลแวร์จะตรวจสอบก่อนว่ามีสิทธิ์ในการใช้งานระดับผู้ดูแลระบบ (Admin หรือ Administrator) หรือไม่ ถ้าไม่พบก็จะใช้งาน fodhelper.exe เพื่ออัปเกรดสิทธิ์ของตัวเองในขณะที่หลบเลี่ยงระบบป้องกันของ UAC (User Account Control) ไปในเวลาเดียว โดยไม่ให้ UAC แสดง Prompt ให้ผู้ใช้งานเลือกว่าจะให้สิทธิ์หรือไม่ หลังจากนั้นตัวมัลแวร์ก็จะทำการรันโค้ด PowerShell ผ่านทาง conhost.exe ขึ้นมาเพื่อตรวจสอบว่ามีแอนตี้ไวรัส หรือ เครื่องมือป้องกันภัยไซเบอร์ต่าง ๆ ติดตั้งอยู่บนระบบหรือไม่ ซึ่งในจุดนี้จะมีวิธีการที่นำไปสู่การติดตั้งไฟล์มัลแวร์ตัวสุดท้ายมากมายหลายทางตามแต่ที่ผลวิเคราะห์ตรวจพบ ซึ่งทางแหล่งข่าวไม่ได้ให้รายละเอียดเอาไว้

พบแฮกเกอร์ใช้วิธีการพรางโค้ด ซ่อนโค้ดมัลแวร์ไว้ภายในไฟล์รูป PNG เพื่อปล่อยมัลแวร์
ภาพจาก : https://cybersecuritynews.com/hackers-leverage-steganographic-images/

โดย Payload ตัวสุดท้ายนั้นจะเป็น Payload ของมัลแวร์แบบ RAT ที่มีชื่อว่า Pulsar ที่หลังจากติดตั้งเสร็จจะมีการแทรกตัวเองลงไปยัง Process ทั่วไปของ Windows ทำให้ถูกตรวจจับได้ยาก โดยโค้ดของ Payload ตัวนี้จะถูกซ่อนไว้ภายใน RGB (Red Green Blue) Pixel ของไฟล์รูปภาพสกุล PNG อยู่ 2 ตัวที่ถูกฝากไว้บนเว็บไซต์ ImgBB ซึ่งจะประกอบด้วย

  • “6b8owksyv28w.png” (41×41 px, 2.3 KB) ภายในจะมีโค้ดแบบ PowerShell ที่สามารถเล็ดลอดการป้องกันแบบ AMSI (Antimalware Scan Interface) ได้
  • “0zt4quciwxs2.png” (141×141 px, 67 KB) ภายในจะบรรจุโค้ดของมัลแวร์นกต่อ (Loader) แบบ .NET สำหรับใช้ในการปล่อย Payload ตัวจริงลงมา

ซึ่งการรันทั้ง 2 จะนำไปสู่การดาวน์โหลด และถอดรหัสโค้ดจากไฟล์รูปภาพอีกรูปหนึ่งที่ถูกฝากไว้ที่ hxxps://i.ibb[.]co/tpyTL2Zg/s9rugowxbq8i.png ซึ่งไฟล์ตัวที่ 3 นี้จะทำตัวเสมือนเป็นเซิร์ฟเวอร์ควบคุม (C2 หรือ Command and Control) ที่จะทำการปล่อยมัลแวร์ Pulsar ลงสู่เครื่องของเหยื่อในท้ายที่สุด

ต้นฉบับ :
ที่มา :
Copyright Notice : All Rights Reserved. Copyright 1999-2026
Antivirus.in.th is owned and operated by Thaiware Communication Co., Ltd.