ไลบรารีปลอมสำหรับนักพัฒนา WhatsApp ถูกซ่อนโค้ดอันตรายที่สามารถลบข้อมูลได้อย่างถาวร

มีการค้นพบแพ็กเกจ NPM อันตราย 2 รายการที่ปลอมเป็นเครื่องมือสำหรับพัฒนา WhatsApp โดยมีการแฝงโค้ดลบข้อมูลที่จะลบไฟล์ทั้งหมดบนคอมพิวเตอร์ของนักพัฒนา

จากการค้นพบของนักวิจัยจากบริษัท Socket ระบุว่า แพ็กเกจเหล่านี้ปลอมตัวเป็นไลบรารี socket ของ WhatsApp และถูกดาวน์โหลดไปแล้วมากกว่า 1,100 ครั้ง นับตั้งแต่ถูกเผยแพร่เมื่อเดือนกรกฏาคมที่ผ่านมา

แม้ว่าทาง Socket จะได้ยื่นเรื่องขอให้นำแพ็คเกจออก และแจ้งเตือนไปยังผู้เผยแพร่ที่ชื่อ nayflore แล้ว แต่ปัจจุบันทั้งแพ็คเกจ และบัญชีผู้เผยแพร่ก็ยังคงอยู่ในระบบ

แพ็คเกจอันตรายทั้ง 2 รายการนี้มีชื่อว่า naya-flore และ nvlore-hsc อย่างไรก็ตาม บัญชีผู้เผยแพร่รายเดียวกันนี้ยังได้ส่งแพ็คเกจอื่น ๆ เข้ามาใน NPM อีกหลายตัว เช่น nouku-search, very-nay, naya-clone, node-smsk และ @veryflore/disc

แม้ว่าแพ็คเกจเพิ่มเติมอีก 5 รายการนี้จะยังไม่มีพฤติกรรมที่เป็นอันตรายในปัจจุบัน แต่ก็ขอแนะนำให้ใช้ความระมัดระวังอย่างยิ่ง เนื่องจากอาจมีการอัปเดตที่แฝงโค้ดอันตรายเข้ามาได้ทุกเมื่อ

แพ็คเกจทั้งหมดนี้ทำขึ้นเพื่อลอกเลียนแบบไลบรารีสำหรับนักพัฒนา WhatsApp ของจริง ซึ่งใช้ในการสร้างบอท และเครื่องมืออัตโนมัติที่ทำงานร่วมกับ WhatsApp Business API

Socket ระบุว่า ไลบรารีเหล่านี้กำลังเป็นที่ต้องการเพิ่มขึ้นอย่างมากในช่วงหลัง เนื่องจากมีธุรกิจจำนวนมากขึ้นที่หันมาใช้ Cloud API ของ WhatsApp เพื่อสื่อสารกับลูกค้า

โค้ดลบข้อมูล

ทั้งแพ็คเกจ naya-flore และ nvlore-hs มีฟังก์ชันที่ชื่อว่า 'requestPairingCode' ซึ่งปกติควรจะทำหน้าที่จัดการการ pairing ของ WhatsApp แต่กลับไปดึงไฟล์ JSON ที่ถูกเข้ารหัสแบบ Base64 มาจาก GitHub แทน

ภายในไฟล์ JSON ดังกล่าวมีรายชื่อหมายเลขโทรศัพท์ของอินโดนีเซียที่ทำหน้าที่เป็น "kill switch" เพื่อยกเว้นไม่ให้ผู้ที่ใช้หมายเลขเหล่านี้ได้รับผลกระทบจากฟังก์ชั่นอันตราย

สำหรับเหยื่อรายอื่น (ที่เป็นเป้าหมายจริง) โค้ดจะรันคำสั่ง rm -rf * ซึ่งจะไล่ลบไฟล์ทั้งหมดในไดเรกทอรีปัจจุบัน ส่งผลให้โค้ดในระบบของนักพัฒนาถูกลบหายไปอย่างสิ้นเชิง

Socket ยังค้นพบฟังก์ชันสำหรับขโมยข้อมูลที่ชื่อว่า 'generateCreeds' ที่ยังไม่ถูกเปิดใช้งาน โดยมันสามารถขโมยข้อมูลของเหยื่อได้ เช่น หมายเลขโทรศัพท์, ID อุปกรณ์, สถานะ และ hardcoded key อย่างไรก็ตาม ฟังก์ชันนี้มีอยู่ในทั้ง 2 แพ็คเกจแต่ถูกปิดการทำงานเอาไว้ด้วยการใส่คอมเมนต์

Go ecosystem ก็ถูกโจมตีด้วยเช่นกัน

ในข่าวที่เกี่ยวเนื่องกัน Socket ยังได้ค้นพบแพ็คเกจ Go ที่เป็นอันตรายอีก 11 รายการ ที่ใช้เทคนิคการซ่อนโค้ดแบบ string-array เพื่อแอบเรียกใช้ payload จากระยะไกลแบบเงียบ ๆ ในขณะที่โปรแกรมกำลังทำงานอยู่

แพ็กเกจเหล่านี้จะสร้าง shell process ขึ้นมา จากนั้นไปดาวน์โหลดสคริปต์ หรือไฟล์ executable ขั้นที่สองมาจากโดเมน .icu หรือ .tech แล้วรันในหน่วยความจำ โดยมุ่งเป้าโจมตีทั้ง Linux CI servers และ Windows workstations

แพ็คเกจส่วนใหญ่ใช้วิธี "typosquatting" ที่อาศัยความผิดพลาดในการพิมพ์ หรือความสับสนของนักพัฒนาเพื่อหลอกให้ดาวน์โหลดมาใช้งาน

รายชื่อแพ็คเกจที่เป็นอันตราย และตำแหน่งที่พบมีดังต่อไปนี้ :

  • github.com/stripedconsu/linker
  • github.com/agitatedleopa/stm
  • github.com/expertsandba/opt
  • github.com/wetteepee/hcloud-ip-floater
  • github.com/weightycine/replika
  • github.com/ordinarymea/tnsr_ids
  • github.com/ordinarymea/TNSR_IDS
  • github.com/cavernouskina/mcp-go
  • github.com/lastnymph/gouid
  • github.com/sinfulsky/gouid
  • github.com/briefinitia/gouid

แพ็คเกจส่วนใหญ่ยังคงใช้งานได้อยู่ ดังนั้นจึงแนะนำให้นักพัฒนา Go ระมัดระวังเป็นพิเศษ และตรวจสอบส่วนประกอบพื้นฐานต่าง ๆ ที่จะนำมาใช้อย่างถี่ถ้วนก่อนนำไปใช้ในสภาพแวดล้อมการทำงานของตนเอง

 

ที่มา : bleepingcomputer.com