ปัญหาใน Da Hood ผู้ไม่หวังดีใช้แพ็กเกจ PyPI ที่เป็นอันตรายเพื่อโจมตี Roblox Cheaters

โลกของเกมส่วนใหญ่จะเป็นสถานที่ที่มีการแข่งขันสูง โดยผู้เล่นหลายคนหันไปหาความช่วยเหลือจากโปรแกรมภายนอก (‘game hacks’) เพื่อให้ได้เปรียบ แม้ว่าโปรแกรมเหล่านี้บางโปรแกรมจะให้การช่วยเหลือในเกมอย่างถูกต้อง แต่ผู้ไม่หวังดีมักใช้ประโยชน์จากความสนใจของกลุ่มผู้ที่ชอบดัดแปลงเกม เพื่อนำมัลแวร์มาแพร่กระจาย หนึ่งในตัวอย่างนี้พบในชุมชนที่พัฒนาโปรแกรมโกงของเกมยอดนิยมอย่าง Roblox

Roblox เป็นแพลตฟอร์มเกมออนไลน์ และระบบสร้างเกมที่ได้รับความนิยม ซึ่งอนุญาตให้ผู้ใช้งานเล่น หรือสร้างเกมแบบผู้เล่นหลายคนได้ หนึ่งในตัวอย่างคือ Da Hood ซึ่งเป็นเกมในโครงสร้างของ Roblox โดยเกมนี้เกิดขึ้นในวัฒนธรรมแก๊งค์ ผู้เล่นสามารถเลือกที่จะเป็นตำรวจ หรืออาชญากร, เข้าร่วมกิจกรรมของแก๊งค์ หรือทำการต่อสู้กับแก๊งค์ เกมนี้ได้รับความนิยมอย่างมาก โดยปัจจุบันอยู่ในอันดับที่ 20 เกมยอดนิยมบน Roblox และมีการเข้าชมมากกว่า 2.6 พันล้านครั้ง

ผู้เล่นเกมจำนวนมาก รวมถึงผู้เล่น Roblox (และ Da Hood) เลือกติดตั้งโปรแกรมโกง (‘externals’), แฮ็ก และการปรับแต่ง (‘mods’) เพื่อเพิ่มประสบการณ์ในการเล่นเกม Mods สามารถเปลี่ยนแปลงรูปลักษณ์ หรือพฤติกรรมของเกม ในขณะที่โปรแกรมโกงอาจช่วยให้ผู้เล่นได้รับข้อได้เปรียบบางอย่างในระหว่างเล่นเกม เช่น “aimlock” ซึ่งช่วยเพิ่มความแม่นยำในเกมยิงปืน ตลอดระยะเวลาที่ผ่านมา มีชุมชนขนาดใหญ่เกิดขึ้นบนแพลตฟอร์มต่าง ๆ เช่น Reddit, YouTube และ Discord ซึ่งช่วยให้ผู้เล่นสามารถแลกเปลี่ยนเคล็ดลับ และเครื่องมือเกี่ยวกับ mods และ cheats สำหรับเกมต่าง ๆ ได้

Cheating the Cheaters: วิธีที่โปรแกรมภายนอก และ Mods ทำให้ผู้เล่นเสี่ยงต่อการติดมัลแวร์

เป็นที่ทราบกันดีว่าการติดตั้งโปรแกรมโกง และ Mods เหล่านี้สามารถทำให้ผู้เล่นเสี่ยงต่อการติดมัลแวร์ ผู้ไม่หวังดีสามารถใช้แพลตฟอร์มเกมยอดนิยม, ฟอรัม และชุมชนต่าง ๆ เพื่อแพร่กระจายมัลแวร์ เช่น โปรแกรมขโมยข้อมูล (stealers), RATs (Remote Access Trojans) และ cryptominers หนึ่งในตัวอย่างของแคมเปญในลักษณะนี้ได้ถูกบันทึกไว้ในงานวิจัยของ Cisco Talos ผู้ที่ใช้โปรแกรมโกงมักถูกชักชวนให้ปิดการใช้งานแอนตี้ไวรัส และการป้องกันแบบเรียลไทม์ เพื่อให้โปรแกรมโกงสามารถทำงานได้ ซึ่งทำให้พวกเขายิ่งเสี่ยงต่อการติดมัลแวร์มากขึ้น ดังที่เราจะเห็นในตัวอย่างต่อไปนี้

การค้นพบของนักวิจัย

ในการวิจัยล่าสุดเกี่ยวกับแพ็กเกจ PyPI ที่ถูกโจมตี และเป็นอันตราย ทีมวิจัยภัยคุกคามของ Imperva ได้ระบุแคมเปญมัลแวร์ที่กำลังดำเนินอยู่ ซึ่งมุ่งเป้าไปที่ผู้ที่ใช้งานที่ใช้โปรแกรมโกงใน Roblox โดยในการตรวจสอบนี้พบข้อมูลที่สำคัญหลายประการ

  • แพ็กเกจ Python ที่เป็นอันตรายถูกอัปโหลดไปยัง PyPI ซึ่งมีโค้ดที่ออกแบบมาเพื่อดาวน์โหลดไฟล์ Windows ที่เป็นอันตราย
  • แพ็กเกจเหล่านี้ถูกสร้างขึ้นเพื่อใช้ประโยชน์จากผู้ที่ใช้โปรแกรมโกงในเกม Da Hood ของ Roblox โดยปลอมตัวเป็นโปรแกรมโกงประเภท “external” เพื่อหลอกผู้ใช้งาน
  • ผู้ไม่หวังดีใช้แพลตฟอร์มต่าง ๆ เช่น GitHub, Discord และ YouTube เพื่อเผยแพร่โปรแกรมโกงเหล่านี้
  • ในบรรดาไฟล์ Windows ที่ค้นพบมีกรณีของ Skuld Stealer และ Blank Grabber ซึ่งเป็นมัลแวร์ขโมยข้อมูลที่เป็นที่รู้จักกันดี

เราจะเปิดเผยเกี่ยวกับแคมเปญนี้ และกลยุทธ์ที่พัฒนาขึ้นเรื่อย ๆ ของกลุ่มผู้ไม่หวังดีที่มุ่งเป้าไปยังชุมชนผู้ใช้โปรแกรมโกงในเกม

การติดตามร่องรอย

ทุกอย่างเริ่มต้นด้วยแพ็กเกจที่ชื่อว่า ‘pysleek’ ซึ่งถูกตรวจจับโดยระบบตรวจสอบ เมื่อตรวจสอบเพิ่มเติม นักวิจัยพบว่าแพ็กเกจนี้ดาวน์โหลดไฟล์ไบนารีที่ชื่อว่า ‘zwerve.exe’ เมื่อตรวจสอบ repository ของ GitHub ที่โฮสต์ไฟล์ไบนารีนี้ พบว่า repository maintainer ได้เพิ่ม และลบไฟล์ไบนารีนี้ซ้ำ ๆ ทุกสองถึงสามวัน พฤติกรรมการเพิ่ม และลบไฟล์ไบนารี “zwerve.exe” จาก repository แสดงให้เห็นถึงความพยายามในการหลีกเลี่ยงการตรวจจับจากเครื่องมือการวิเคราะห์แบบ static และ automated

เราต้องการตรวจสอบว่ามีความแตกต่างระหว่างเวอร์ชันหรือไม่ ดังนั้นเราจึงดาวน์โหลดไฟล์ไบนารีทั้งหมด และตรวจสอบ Hash ใน VirusTotal ผลปรากฏว่ามีมัลแวร์ที่แตกต่างกันสองประเภท ได้แก่ Blank Grabber และ Skuld Stealer

ในขั้นตอนนี้ นักวิจัยต้องการตรวจสอบว่ามีแพ็กเกจที่เป็นอันตรายอื่น ๆ ที่แสดงพฤติกรรมเดียวกันหรือไม่ และพบอีกห้าแพ็กเกจ ซึ่งหนึ่งในนั้นได้เปลี่ยนชื่อไฟล์ไบนารีเป็น ‘RealtekHDAudioManager.exe’ ซึ่งเป็นวิธีในการหลีกเลี่ยงการตรวจจับจากซอฟต์แวร์แอนตี้มัลแวร์

นักวิจัยสงสัยว่าใครกำลังดาวน์โหลดแพ็กเกจเหล่านี้ โดยเฉพาะอย่างยิ่งเมื่อพิจารณาถึงชื่อแปลก ๆ และการดาวน์โหลดไปแล้วกว่า 3,000 ครั้ง แต่ยังไม่มีคำตอบในเวลานั้น สุดท้ายนักวิจัยได้พบกับ repository ของ GitHub ชื่อ ‘Zwerve-External’ ซึ่งกำลังใช้งานแพ็กเกจที่เป็นอันตราย ‘pysleek’ อย่างต่อเนื่อง เมื่อตรวจสอบอย่างใกล้ชิด ทำให้สังเกตเห็นว่าไฟล์ ‘main.py’ ถูกอัปเดตบ่อยครั้งด้วยแพ็กเกจที่เป็นอันตรายต่าง ๆ

นักวิจัยพบประวัติของไฟล์ ‘main.py’ ใน repository ‘Zwerve-External’ ว่าผู้ดูแลได้อัปเดตโค้ดอย่างสม่ำเสมอเพื่อใช้แพ็กเกจ PyPI ที่เป็นอันตรายต่าง ๆ ในกรณีนี้ แพ็กเกจที่เป็นอันตราย ‘pytrv’ แทนที่แพ็กเกจที่ชื่อว่า ‘antibyfron’

ตามบันทึกของ PyPI แพ็กเกจ ‘pytrv’ ถูกสร้างขึ้นเมื่อวันที่ 16 กันยายน 2024 เวลา 12:15 น. และโค้ดถูกบันทึกเพียงหนึ่งนาทีหลังจากนั้น แสดงให้เห็นว่าผู้โจมตีสร้างแพ็กเกจใหม่ และรวมเข้ากับโค้ดทันที

คำอธิบายของ repository เปิดเผยให้เห็นถึงวัตถุประสงค์ที่ตั้งใจของโค้ด Python ซึ่ง repository ของ 'Zwerve-External' ถูกนำเสนอเป็นเครื่องมือโกงแบบโอเพนซอร์ส (external) ที่ออกแบบมาเพื่อปรับปรุงประสบการณ์การเล่นเกมสำหรับผู้เล่น Da Hood ผู้ใช้จะได้รับคำแนะนำให้ดำเนินการหลายขั้นตอนเพื่อให้แน่ใจว่าเครื่องมือนี้ทำงานได้อย่างถูกต้อง รวมถึงการปิดซอฟต์แวร์แอนตี้มัลแวร์เพื่อป้องกันไม่ให้โปรแกรมโกงถูกบล็อก เมื่อทำเช่นนี้ ผู้เล่นที่ไม่รู้ตัวจะมอบสิทธิ์การเข้าถึงแบบไม่จำกัดให้กับโปรแกรมขโมยข้อมูลโดยไม่รู้ตัว

การตรวจสอบของนักวิจัยในที่สุดได้นำเราไปยังช่อง YouTube ที่ชื่อว่า “Zwerve Da Hood External” ซึ่งมีวิดีโอสาธิตของเครื่องมือโกงที่โฆษณา นอกจากนี้นักวิจัยยังพบเซิร์ฟเวอร์ Discord ที่เกี่ยวข้องกับแคมเปญนี้ ซึ่งมีสมาชิกในชุมชนทั้งหมด 825 คน

เพย์โหลด Info-stealer

ไฟล์มัลแวร์ที่ถูกส่งในแคมเปญนี้เป็นเวอร์ชันที่เป็นที่รู้จักกันในชื่อ “Blank Grabber” และ “Skuld Stealer”

Skuld Stealer เป็นมัลแวร์ที่เขียนด้วยภาษา Go ซึ่งมุ่งเป้าไปที่ระบบ Windows ออกแบบมาเพื่อดึงข้อมูลที่สำคัญจาก Discord, เบราว์เซอร์ และกระเป๋าเงินดิจิทัล โดยใช้เทคนิค fodhelper.exe ซึ่งใช้ประโยชน์จากฟีเจอร์การเพิ่มระดับอัตโนมัติของ Windows เพื่อหลีกเลี่ยงการควบคุมบัญชีผู้ใช้ โดยการเพิ่มสิทธิ์เข้าถึงทั้งหมดในเซสชันของผู้ใช้บนระบบ ฟีเจอร์หลัก ๆ ได้แก่ การป้องกันการดีบัก, การหลีกเลี่ยงแอนตี้มัลแวร์ และความสามารถในการขโมยข้อมูล credentials สำหรับการเข้าสู่ระบบ, คุกกี้, บัตรเครดิต และประวัติการท่องเว็บจากเบราว์เซอร์ต่าง ๆ นอกจากนี้ยังมุ่งเป้าไปที่ผู้ใช้ Discord โดยการดักจับ 2FA และดักจับคำขอเข้าสู่ระบบ ในขณะเดียวกันก็ขุดข้อมูลจากกระเป๋าเงินดิจิทัล และเปลี่ยนเนื้อหาของคลิปบอร์ดเป็นที่อยู่คริปโตที่เป็นอันตราย นอกจากนี้ยังรวบรวมข้อมูลระบบที่หลากหลาย และทำให้ตัวเองแฝงตัวอยู่บนเครื่องเหยื่อ โดยการทำงานเมื่อเริ่มต้นระบบ

มัลแวร์ Blank Grabber เป็นมัลแวร์ประเภทขโมยข้อมูลที่คล้ายกับ Skuld แม้ว่ามันจะถูกพัฒนาบนพื้นฐานของภาษา Python และ C++

Proof-of-concept (PoC) เช่น Skuld Stealer และ Blank Grabber ทำให้เกิดความขัดแย้งที่สำคัญในโลกของความปลอดภัยทางไซเบอร์ เครื่องมือเหล่านี้มักถูกพัฒนาขึ้นเพื่อวัตถุประสงค์ด้านการศึกษา และการวิจัย ซึ่งแสดงให้เห็นว่าเครื่องมือที่เป็นอันตรายสามารถใช้ขโมยข้อมูลสำคัญ และเข้าถึงระบบจากระยะไกลได้ อย่างไรก็ตาม แม้ว่าจะมีเจตนาดี แต่บ่อยครั้งกลับถูกนำไปใช้ในทางที่ผิดโดยผู้ไม่หวังดี เมื่อมีการเผยแพร่สู่สาธารณะ PoC เหล่านี้อาจกลายเป็นต้นแบบให้กับผู้ไม่หวังดี ทำให้พวกเขาบรรลุเป้าหมายได้รวดเร็วยิ่งขึ้น สะท้อนให้เห็นถึงความยากในการหาจุดสมดุลระหว่างการวิจัยแบบเปิดกว้าง และความเสี่ยงในการช่วยเหลือกลุ่มผู้ไม่หวังดี เพราะเครื่องมือที่ออกแบบมาเพื่อเพิ่มความปลอดภัย มักกลับถูกใช้เป็นอาวุธโจมตีผู้ใช้งานที่ไม่ได้ระมัดระวัง

Indicators of compromise (IOCs)

Repositories

แพ็คเกจ Python

มัลแวร์

ที่มา : https://www.imperva.com/blog/trouble-in-da-hood-malicious-actors-use-infected-pypi-packages-to-target-roblox-cheaters/?eb_view=true