มีกลุ่มไซเบอร์ที่มีชื่อเสียงหลายกลุ่มที่เชี่ยวชาญในการขโมยเงินจากบริษัทรัสเซีย เราได้เห็นการโจมตีโดยใช้ช่องโหว่ด้านความปลอดภัยที่ทำให้สามารถเข้าถึงเครือข่ายของเป้าหมายได้ เมื่อเข้าถึงได้ ผู้โจมตีจะศึกษาโครงสร้างเครือข่ายขององค์กรและใช้เครื่องมือของตนเองเพื่อขโมยเงิน ตัวอย่างคลาสสิกของเทรนด์นี้คือกลุ่มแฮกเกอร์ Buhtrap, Cobalt และ Corkow
กลุ่ม RTM ที่รายงานนี้เน้นเป็นส่วนหนึ่งของแนวโน้มนี้ ใช้มัลแวร์ที่ออกแบบมาเป็นพิเศษซึ่งเขียนด้วย Delphi ซึ่งเราจะดูรายละเอียดเพิ่มเติมในส่วนต่อไปนี้ ร่องรอยแรกของเครื่องมือเหล่านี้ในระบบการวัดและส่งข้อมูลทางไกลของ ESET ถูกค้นพบเมื่อปลายปี 2015 ทีมงานโหลดโมดูลใหม่ต่างๆ ลงบนระบบที่ติดไวรัสตามความจำเป็น การโจมตีดังกล่าวมุ่งเป้าไปที่ผู้ใช้ระบบธนาคารทางไกลในรัสเซียและประเทศเพื่อนบ้านบางประเทศ
แคมเปญ RTM มุ่งเป้าไปที่ผู้ใช้ระดับองค์กร ซึ่งเห็นได้ชัดเจนจากกระบวนการที่ผู้โจมตีพยายามตรวจจับในระบบที่ถูกบุกรุก มุ่งเน้นไปที่ซอฟต์แวร์การบัญชีสำหรับการทำงานกับระบบธนาคารทางไกล
รายการกระบวนการที่น่าสนใจสำหรับ RTM คล้ายคลึงกับรายการที่เกี่ยวข้องของกลุ่ม Buhtrap แต่กลุ่มเหล่านี้มีพาหะของการติดเชื้อที่แตกต่างกัน หาก Buhtrap ใช้เพจปลอมบ่อยขึ้น RTM จะใช้การโจมตีแบบไดรฟ์โดยการดาวน์โหลด (การโจมตีเบราว์เซอร์หรือส่วนประกอบ) และการส่งสแปมทางอีเมล จากข้อมูลการตรวจวัดทางไกล ภัยคุกคามดังกล่าวมุ่งเป้าไปที่รัสเซียและประเทศใกล้เคียงหลายประเทศ (ยูเครน คาซัคสถาน สาธารณรัฐเช็ก เยอรมนี) อย่างไรก็ตาม เนื่องจากการใช้กลไกการกระจายจำนวนมาก การตรวจพบมัลแวร์นอกภูมิภาคเป้าหมายจึงไม่น่าแปลกใจ
จำนวนการตรวจจับมัลแวร์ทั้งหมดค่อนข้างน้อย ในทางกลับกัน แคมเปญ RTM ใช้โปรแกรมที่ซับซ้อน ซึ่งบ่งชี้ว่าการโจมตีมีเป้าหมายสูง
เราได้ค้นพบเอกสารหลอกลวงหลายฉบับที่ RTM ใช้ รวมถึงสัญญา ใบแจ้งหนี้ หรือเอกสารการบัญชีภาษีที่ไม่มีอยู่จริง ลักษณะของเหยื่อเมื่อรวมกับประเภทของซอฟต์แวร์ที่เป็นเป้าหมายของการโจมตี บ่งชี้ว่าผู้โจมตีกำลัง "เข้าสู่" เครือข่ายของบริษัทรัสเซียผ่านทางแผนกบัญชี กลุ่มนี้ดำเนินการตามโครงการเดียวกัน
ในระหว่างการวิจัย เราสามารถโต้ตอบกับเซิร์ฟเวอร์ C&C หลายแห่งได้ เราจะแสดงรายการคำสั่งทั้งหมดในส่วนต่อไปนี้ แต่สำหรับตอนนี้เราสามารถพูดได้ว่าไคลเอนต์ถ่ายโอนข้อมูลจากคีย์ล็อกเกอร์ไปยังเซิร์ฟเวอร์ที่ถูกโจมตีโดยตรง ซึ่งจากนั้นจะได้รับคำสั่งเพิ่มเติม
อย่างไรก็ตาม วันที่คุณสามารถเชื่อมต่อกับเซิร์ฟเวอร์คำสั่งและควบคุมและรวบรวมข้อมูลทั้งหมดที่คุณสนใจได้หายไปแล้ว เราสร้างไฟล์บันทึกที่เหมือนจริงขึ้นมาใหม่เพื่อรับคำสั่งที่เกี่ยวข้องจากเซิร์ฟเวอร์
ประการแรกคือการขอให้บอทถ่ายโอนไฟล์ 1c_to_kl.txt ซึ่งเป็นไฟล์การขนส่งของโปรแกรม 1C: Enterprise 8 ซึ่ง RTM จะตรวจสอบลักษณะที่ปรากฏ 1C โต้ตอบกับระบบธนาคารระยะไกลโดยการอัปโหลดข้อมูลเกี่ยวกับการชำระเงินขาออกไปยังไฟล์ข้อความ จากนั้น ไฟล์จะถูกส่งไปยังระบบธนาคารระยะไกลเพื่อให้ระบบอัตโนมัติและดำเนินการตามคำสั่งจ่ายเงิน
ไฟล์ประกอบด้วยรายละเอียดการชำระเงิน หากผู้โจมตีเปลี่ยนข้อมูลเกี่ยวกับการชำระเงิน การโอนเงินจะถูกส่งโดยใช้รายละเอียดที่เป็นเท็จไปยังบัญชีของผู้โจมตี
ประมาณหนึ่งเดือนหลังจากการร้องขอไฟล์เหล่านี้จากเซิร์ฟเวอร์คำสั่งและการควบคุม เราพบว่าปลั๊กอินใหม่ 1c_2_kl.dll ถูกโหลดเข้าสู่ระบบที่ถูกบุกรุก โมดูล (DLL) ได้รับการออกแบบมาเพื่อวิเคราะห์ไฟล์ดาวน์โหลดโดยอัตโนมัติโดยเจาะลึกกระบวนการซอฟต์แวร์การบัญชี เราจะอธิบายรายละเอียดในส่วนต่อไปนี้
สิ่งที่น่าสนใจคือ FinCERT ของธนาคารแห่งรัสเซียเมื่อปลายปี 2016 ได้ออกคำเตือนเกี่ยวกับอาชญากรไซเบอร์ที่ใช้ไฟล์อัพโหลด 1c_to_kl.txt นักพัฒนาจาก 1C ก็รู้เกี่ยวกับโครงการนี้เช่นกัน พวกเขาได้ออกแถลงการณ์อย่างเป็นทางการและระบุข้อควรระวังแล้ว
โมดูลอื่นๆ ยังถูกโหลดจากเซิร์ฟเวอร์คำสั่ง โดยเฉพาะ VNC (เวอร์ชัน 32 และ 64 บิต) มันคล้ายกับโมดูล VNC ที่เคยใช้ในการโจมตี Dridex Trojan โมดูลนี้น่าจะใช้เพื่อเชื่อมต่อกับคอมพิวเตอร์ที่ติดไวรัสจากระยะไกล และทำการศึกษาระบบโดยละเอียด ถัดไป ผู้โจมตีจะพยายามเคลื่อนที่ไปรอบๆ เครือข่าย แยกรหัสผ่านผู้ใช้ รวบรวมข้อมูล และรับรองว่ามีมัลแวร์อยู่ตลอดเวลา
2. พาหะของการติดเชื้อ
รูปต่อไปนี้แสดงพาหะของการติดเชื้อที่ตรวจพบในระหว่างช่วงการศึกษาของการรณรงค์ กลุ่มนี้ใช้เวกเตอร์ที่หลากหลาย แต่ส่วนใหญ่ขับเคลื่อนโดยการดาวน์โหลดและสแปม เครื่องมือเหล่านี้สะดวกสำหรับการโจมตีแบบกำหนดเป้าหมาย เนื่องจากในกรณีแรก ผู้โจมตีสามารถเลือกไซต์ที่ผู้ที่อาจเป็นเหยื่อเยี่ยมชมได้ และในกรณีที่สอง พวกเขาสามารถส่งอีเมลพร้อมไฟล์แนบโดยตรงไปยังพนักงานบริษัทที่ต้องการได้
มัลแวร์แพร่กระจายผ่านหลายช่องทาง รวมถึงชุดหาประโยชน์จาก RIG และ Sundown หรือการส่งจดหมายขยะ ซึ่งบ่งบอกถึงการเชื่อมต่อระหว่างผู้โจมตีและผู้โจมตีทางไซเบอร์รายอื่นที่นำเสนอบริการเหล่านี้
2.1. RTM และ Buhtrap เกี่ยวข้องกันอย่างไร
แคมเปญ RTM คล้ายกับ Buhtrap มาก คำถามทั่วไปคือ: พวกเขาเกี่ยวข้องกันอย่างไร?
ในเดือนกันยายน 2016 เราสังเกตเห็นการแจกจ่ายตัวอย่าง RTM โดยใช้โปรแกรมอัปโหลด Buhtrap นอกจากนี้ เราพบใบรับรองดิจิทัลสองใบที่ใช้ในทั้ง Buhtrap และ RTM
ครั้งแรกที่ถูกกล่าวหาว่าออกให้กับ บริษัท DNISTER-M ถูกนำมาใช้เพื่อลงนามแบบดิจิทัลในแบบฟอร์ม Delphi ที่สอง (SHA-1: 025C718BA31E43DB1B87DC13F94A61A9338C11CE) และ Buhtrap DLL (SHA-1: 1E2642B454A2C889B6D41116CCDBA83F6F2D4890 ).
อันที่สองที่ออกให้กับ Bit-Tredj ใช้เพื่อลงนามตัวโหลด Buhtrap (SHA-1: 7C1B6B1713BD923FC243DFEC80002FE9B93EB292 และ B74F71560E48488D2153AE2FB51207A0AC206E2B) รวมถึงดาวน์โหลดและติดตั้งส่วนประกอบ RTM
ตัวดำเนินการ RTM ใช้ใบรับรองที่ใช้ร่วมกับกลุ่มมัลแวร์อื่นๆ แต่ก็มีใบรับรองเฉพาะเช่นกัน จากข้อมูลการวัดทางไกลของ ESET พบว่ามีการออกให้กับ Kit-SD และใช้เพื่อลงนามมัลแวร์ RTM บางตัวเท่านั้น (SHA-1: 42A4B04446A20993DDAE98B2BE6D5A797376D4B6)
RTM ใช้ตัวโหลดเดียวกันกับ Buhtrap ส่วนประกอบ RTM ถูกโหลดจากโครงสร้างพื้นฐาน Buhtrap ดังนั้นกลุ่มจึงมีตัวบ่งชี้เครือข่ายที่คล้ายกัน อย่างไรก็ตาม ตามการประมาณการของเรา RTM และ Buhtrap เป็นกลุ่มที่แตกต่างกัน อย่างน้อยก็เพราะ RTM มีการกระจายในรูปแบบที่แตกต่างกัน (ไม่เพียงแต่ใช้โปรแกรมดาวน์โหลด "ต่างประเทศ")
อย่างไรก็ตาม กลุ่มแฮ็กเกอร์ก็ใช้หลักการทำงานที่คล้ายกัน พวกเขากำหนดเป้าหมายธุรกิจโดยใช้ซอฟต์แวร์บัญชี รวบรวมข้อมูลระบบในทำนองเดียวกัน ค้นหาเครื่องอ่านสมาร์ทการ์ด และปรับใช้เครื่องมือที่เป็นอันตรายมากมายเพื่อสอดแนมเหยื่อ
3. วิวัฒนาการ
ในส่วนนี้ เราจะดูเวอร์ชันต่างๆ ของมัลแวร์ที่พบในระหว่างการศึกษา
3.1. การกำหนดเวอร์ชัน
RTM จัดเก็บข้อมูลการกำหนดค่าในส่วนรีจิสทรี ส่วนที่น่าสนใจที่สุดคือคำนำหน้าบอตเน็ต รายการค่าทั้งหมดที่เราเห็นในกลุ่มตัวอย่างที่เราศึกษาแสดงอยู่ในตารางด้านล่าง
เป็นไปได้ว่าค่าดังกล่าวสามารถใช้เพื่อบันทึกเวอร์ชันของมัลแวร์ได้ อย่างไรก็ตาม เราไม่ได้สังเกตเห็นความแตกต่างมากนักระหว่างเวอร์ชันต่างๆ เช่น bit2 และ bit3, 0.1.6.4 และ 0.1.6.6 ยิ่งไปกว่านั้น หนึ่งในคำนำหน้ามีมาตั้งแต่เริ่มต้นและมีการพัฒนาจากโดเมน C&C ทั่วไปไปเป็นโดเมน .bit ดังที่แสดงด้านล่าง
3.2. กำหนดการ
ด้วยการใช้ข้อมูลการวัดและส่งข้อมูลทางไกล เราได้สร้างกราฟของการเกิดขึ้นของกลุ่มตัวอย่าง
4. การวิเคราะห์ทางเทคนิค
ในส่วนนี้ เราจะอธิบายฟังก์ชันหลักของโทรจันธนาคาร RTM รวมถึงกลไกการต่อต้าน อัลกอริธึม RC4 เวอร์ชันของตัวเอง โปรโตคอลเครือข่าย ฟังก์ชั่นการสอดแนม และคุณสมบัติอื่น ๆ โดยเฉพาะอย่างยิ่ง เราจะมุ่งเน้นไปที่ตัวอย่าง SHA-1 AA0FA4584768CE9E16D67D8C529233E99FF1BBF0 และ 48BC113EC8BA20B8B80CD5D4DA92051A19D1032B
4.1. การติดตั้งและการประหยัด
4.1.1. การนำไปปฏิบัติ
แกน RTM คือ DLL ไลบรารีถูกโหลดลงบนดิสก์โดยใช้ .EXE ไฟล์ปฏิบัติการมักจะถูกบรรจุไว้และมีรหัส DLL เมื่อเปิดตัวแล้ว มันจะแตกไฟล์ DLL และรันโดยใช้คำสั่งต่อไปนี้:
rundll32.exe “%PROGRAMDATA%Winlogonwinlogon.lnk”,DllGetClassObject host
4.1.2. สพป
DLL หลักจะถูกโหลดลงดิสก์เสมอในรูปแบบ winlogon.lnk ในโฟลเดอร์ %PROGRAMDATA%Winlogon นามสกุลไฟล์นี้มักจะเชื่อมโยงกับทางลัด แต่จริงๆ แล้วไฟล์นี้เป็น DLL ที่เขียนใน Delphi ซึ่งตั้งชื่อว่า core.dll โดยนักพัฒนาดังที่แสดงในภาพด้านล่าง
Пример названия DLL F4C746696B0F5BB565D445EC49DD912993DE6361
เมื่อเปิดตัว โทรจันจะเปิดใช้งานกลไกการต่อต้าน ซึ่งสามารถทำได้สองวิธีที่แตกต่างกัน ขึ้นอยู่กับสิทธิพิเศษของเหยื่อในระบบ หากคุณมีสิทธิ์ของผู้ดูแลระบบ โทรจันจะเพิ่มรายการ Windows Update ลงในรีจิสทรี HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun คำสั่งที่มีอยู่ใน Windows Update จะทำงานเมื่อเริ่มเซสชันของผู้ใช้
HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunWindows Update [REG_SZ] = rundll32.exe “%PROGRAMDATA%winlogon.lnk”,โฮสต์ DllGetClassObject
โทรจันยังพยายามเพิ่มงานให้กับ Windows Task Scheduler งานจะเปิดตัว winlogon.lnk DLL ด้วยพารามิเตอร์เดียวกันกับด้านบน สิทธิ์ผู้ใช้ทั่วไปอนุญาตให้โทรจันเพิ่มรายการ Windows Update ด้วยข้อมูลเดียวกันในรีจิสทรี HKCUSoftwareMicrosoftWindowsCurrentVersionRun:
rundll32.exe “%PROGRAMDATA%winlogon.lnk”,DllGetClassObject host
4.2. อัลกอริทึม RC4 ที่ถูกแก้ไข
แม้จะทราบข้อบกพร่องแล้ว แต่อัลกอริทึม RC4 ก็ถูกใช้โดยผู้เขียนมัลแวร์เป็นประจำ อย่างไรก็ตาม ผู้สร้าง RTM ได้ปรับเปลี่ยนเล็กน้อย อาจทำให้งานนักวิเคราะห์ไวรัสยากขึ้น RC4 เวอร์ชันแก้ไขมีการใช้กันอย่างแพร่หลายในเครื่องมือ RTM ที่เป็นอันตรายเพื่อเข้ารหัสสตริง ข้อมูลเครือข่าย การกำหนดค่า และโมดูล
4.2.1. ความแตกต่าง
อัลกอริธึม RC4 ดั้งเดิมประกอบด้วยสองขั้นตอน: การเริ่มต้น s-block (หรือที่เรียกว่า KSA - อัลกอริธึมการจัดตารางเวลาคีย์) และการสร้างลำดับแบบสุ่มหลอก (PRGA - อัลกอริธึมการสร้างแบบสุ่มหลอก) ขั้นตอนแรกเกี่ยวข้องกับการเริ่มต้น s-box โดยใช้คีย์ และในขั้นตอนที่สอง ข้อความต้นฉบับจะถูกประมวลผลโดยใช้ s-box สำหรับการเข้ารหัส
ผู้เขียน RTM ได้เพิ่มขั้นตอนกลางระหว่างการเริ่มต้น s-box และการเข้ารหัส คีย์เพิ่มเติมเป็นตัวแปรและตั้งค่าพร้อมกับข้อมูลที่จะเข้ารหัสและถอดรหัส ฟังก์ชั่นที่ดำเนินการขั้นตอนเพิ่มเติมนี้จะแสดงในรูปด้านล่าง
4.2.2. การเข้ารหัสสตริง
เมื่อมองแวบแรก มีหลายบรรทัดที่สามารถอ่านได้ใน DLL หลัก ส่วนที่เหลือจะถูกเข้ารหัสโดยใช้อัลกอริธึมที่อธิบายไว้ข้างต้น โครงสร้างดังแสดงในรูปต่อไปนี้ เราพบคีย์ RC25 ที่แตกต่างกันมากกว่า 4 รายการสำหรับการเข้ารหัสสตริงในตัวอย่างที่วิเคราะห์ ปุ่ม XOR จะแตกต่างกันไปในแต่ละแถว ค่าของเส้นแยกเขตข้อมูลตัวเลขจะเป็น 0xFFFFFFFF เสมอ
เมื่อเริ่มต้นการดำเนินการ RTM จะถอดรหัสสตริงให้เป็นตัวแปรร่วม เมื่อจำเป็นในการเข้าถึงสตริง โทรจันจะคำนวณที่อยู่ของสตริงที่ถอดรหัสแบบไดนามิกตามที่อยู่ฐานและออฟเซ็ต
สตริงประกอบด้วยข้อมูลที่น่าสนใจเกี่ยวกับฟังก์ชันของมัลแวร์ ตัวอย่างสตริงบางส่วนมีระบุไว้ในส่วนที่ 6.8
4.3. เครือข่าย
วิธีที่มัลแวร์ RTM ติดต่อเซิร์ฟเวอร์ C&C จะแตกต่างกันไปในแต่ละรุ่น การแก้ไขครั้งแรก (ตุลาคม 2015 - เมษายน 2016) ใช้ชื่อโดเมนแบบดั้งเดิมพร้อมกับฟีด RSS บน livejournal.com เพื่ออัปเดตรายการคำสั่ง
ตั้งแต่เดือนเมษายน 2016 เราได้เห็นการเปลี่ยนแปลงไปใช้โดเมน .bit ในข้อมูลการวัดและส่งข้อมูลทางไกล สิ่งนี้ได้รับการยืนยันโดยวันที่จดทะเบียนโดเมน - โดเมน RTM แรก fde05d0573da.bit ได้รับการจดทะเบียนเมื่อวันที่ 13 มีนาคม 2016
URL ทั้งหมดที่เราเห็นขณะติดตามแคมเปญมีเส้นทางร่วมกัน: /r/z.php ซึ่งค่อนข้างผิดปกติและจะช่วยระบุคำขอ RTM ในโฟลว์เครือข่าย
4.3.1. ช่องทางในการสั่งการและควบคุม
ตัวอย่างดั้งเดิมใช้ช่องทางนี้เพื่ออัปเดตรายการเซิร์ฟเวอร์คำสั่งและการควบคุม โฮสติ้งตั้งอยู่ที่ livejournal.com ในขณะที่เขียนรายงานนั้นยังคงอยู่ที่ URL hxxp://f72bba81c921(.)livejournal(.)com/ data/rss
Livejournal เป็นบริษัทรัสเซีย-อเมริกันที่ให้บริการแพลตฟอร์มบล็อก ผู้ดำเนินการ RTM สร้างบล็อก LJ ที่พวกเขาโพสต์บทความด้วยคำสั่งที่เข้ารหัส - ดูภาพหน้าจอ
บรรทัดคำสั่งและการควบคุมถูกเข้ารหัสโดยใช้อัลกอริธึม RC4 ที่ได้รับการแก้ไข (ส่วนที่ 4.2) เวอร์ชันปัจจุบัน (พฤศจิกายน 2016) ของช่องสัญญาณประกอบด้วยคำสั่งและที่อยู่เซิร์ฟเวอร์ควบคุมต่อไปนี้:
- hxxp://cainmoon(.)net/r/z.php
- hxxp://rtm(.)dev/0-3/z.php
- hxxp://vpntap(.)top/r/z.php
4.3.2. โดเมน .bit
ในตัวอย่าง RTM ล่าสุด ผู้เขียนเชื่อมต่อกับโดเมน C&C โดยใช้โดเมนระดับบนสุด .bit TLD ไม่อยู่ในรายชื่อโดเมนระดับบนสุดของ ICANN (Domain Name and Internet Corporation) แต่จะใช้ระบบ Namecoin ซึ่งสร้างขึ้นจากเทคโนโลยี Bitcoin แทน ผู้เขียนมัลแวร์มักไม่ค่อยใช้ .bit TLD สำหรับโดเมนของตน แม้ว่าตัวอย่างการใช้งานดังกล่าวจะเคยพบเห็นในเวอร์ชันของบ็อตเน็ต Necurs ก็ตาม
ต่างจาก Bitcoin ผู้ใช้ฐานข้อมูล Namecoin แบบกระจายมีความสามารถในการบันทึกข้อมูล แอปพลิเคชันหลักของคุณสมบัตินี้คือโดเมนระดับบนสุด .bit คุณสามารถลงทะเบียนโดเมนที่จะจัดเก็บไว้ในฐานข้อมูลแบบกระจายได้ รายการที่เกี่ยวข้องในฐานข้อมูลประกอบด้วยที่อยู่ IP ที่โดเมนแก้ไข TLD นี้ “ต้านทานการเซ็นเซอร์” เนื่องจากมีเพียงผู้จดทะเบียนเท่านั้นที่สามารถเปลี่ยนความละเอียดของโดเมน .bit ได้ ซึ่งหมายความว่าการหยุดโดเมนที่เป็นอันตรายโดยใช้ TLD ประเภทนี้ทำได้ยากขึ้นมาก
โทรจัน RTM ไม่ได้ฝังซอฟต์แวร์ที่จำเป็นในการอ่านฐานข้อมูล Namecoin แบบกระจาย ใช้เซิร์ฟเวอร์ DNS กลาง เช่น dns.dot-bit.org หรือเซิร์ฟเวอร์ OpenNic เพื่อแก้ไขโดเมน .bit ดังนั้นจึงมีความคงทนเช่นเดียวกับเซิร์ฟเวอร์ DNS เราสังเกตว่าโดเมนของทีมบางโดเมนไม่ถูกตรวจพบอีกต่อไปหลังจากถูกกล่าวถึงในโพสต์บนบล็อก
ข้อดีอีกประการหนึ่งของ .bit TLD สำหรับแฮกเกอร์ก็คือต้นทุน หากต้องการจดทะเบียนโดเมน ผู้ดำเนินการจะต้องชำระเงินเพียง 0,01 NK ซึ่งเท่ากับ 0,00185 ดอลลาร์สหรัฐฯ (ณ วันที่ 5 ธันวาคม 2016) เพื่อการเปรียบเทียบ domain.com มีราคาอย่างน้อย $10
4.3.3. มาตรการ
ในการสื่อสารกับเซิร์ฟเวอร์คำสั่งและการควบคุม RTM จะใช้คำขอ HTTP POST กับข้อมูลที่จัดรูปแบบโดยใช้โปรโตคอลที่กำหนดเอง ค่าพาธจะเป็น /r/z.php เสมอ ตัวแทนผู้ใช้ Mozilla/5.0 (เข้ากันได้; MSIE 9.0; Windows NT 6.1; Trident/5.0) ในการร้องขอไปยังเซิร์ฟเวอร์ ข้อมูลจะถูกจัดรูปแบบดังนี้ โดยที่ค่าออฟเซ็ตจะแสดงเป็นไบต์:
ไบต์ 0 ถึง 6 ไม่ได้เข้ารหัส ไบต์ที่เริ่มต้นจาก 6 จะถูกเข้ารหัสโดยใช้อัลกอริธึม RC4 ที่ได้รับการแก้ไข โครงสร้างของแพ็กเก็ตตอบกลับ C&C นั้นง่ายกว่า ไบต์ถูกเข้ารหัสตั้งแต่ 4 ถึงขนาดแพ็กเก็ต
รายการค่าไบต์การกระทำที่เป็นไปได้แสดงอยู่ในตารางด้านล่าง:
มัลแวร์จะคำนวณ CRC32 ของข้อมูลที่ถอดรหัสเสมอและเปรียบเทียบกับข้อมูลที่มีอยู่ในแพ็กเก็ต หากต่างกัน โทรจันจะทิ้งแพ็กเก็ต
ข้อมูลเพิ่มเติมอาจมีออบเจ็กต์ต่างๆ รวมถึงไฟล์ PE ไฟล์ที่จะค้นหาในระบบไฟล์ หรือ URL คำสั่งใหม่
4.3.4. แผงหน้าปัด
เราสังเกตเห็นว่า RTM ใช้แผงบนเซิร์ฟเวอร์ C&C ภาพหน้าจอด้านล่าง:
4.4. เครื่องหมายลักษณะ
RTM เป็นโทรจันการธนาคารทั่วไป ไม่ใช่เรื่องน่าแปลกใจที่ผู้ปฏิบัติงานต้องการข้อมูลเกี่ยวกับระบบของเหยื่อ ในด้านหนึ่ง บอทจะรวบรวมข้อมูลทั่วไปเกี่ยวกับระบบปฏิบัติการ ในทางกลับกัน จะพบว่าระบบที่ถูกบุกรุกมีคุณลักษณะที่เกี่ยวข้องกับระบบธนาคารทางไกลของรัสเซียหรือไม่
4.4.1. ข้อมูลทั่วไป
เมื่อมีการติดตั้งหรือเปิดใช้งานมัลแวร์หลังจากรีบูต รายงานจะถูกส่งไปยังเซิร์ฟเวอร์คำสั่งและการควบคุมที่มีข้อมูลทั่วไป ได้แก่:
- เขตเวลา;
- ภาษาของระบบเริ่มต้น
- ข้อมูลรับรองผู้ใช้ที่ได้รับอนุญาต
- ระดับความสมบูรณ์ของกระบวนการ
- ชื่อผู้ใช้;
- ชื่อคอมพิวเตอร์
- เวอร์ชันระบบปฏิบัติการ;
- โมดูลที่ติดตั้งเพิ่มเติม
- ติดตั้งโปรแกรมป้องกันไวรัส
- รายชื่อเครื่องอ่านสมาร์ทการ์ด
4.4.2 ระบบธนาคารทางไกล
เป้าหมายโทรจันทั่วไปคือระบบธนาคารระยะไกล และ RTM ก็ไม่มีข้อยกเว้น โมดูลหนึ่งของโปรแกรมเรียกว่า TBdo ซึ่งทำงานหลายอย่าง รวมถึงการสแกนดิสก์และประวัติการเรียกดู
โดยการสแกนดิสก์ โทรจันจะตรวจสอบว่ามีการติดตั้งซอฟต์แวร์ธนาคารไว้ในเครื่องหรือไม่ รายการโปรแกรมเป้าหมายทั้งหมดอยู่ในตารางด้านล่าง เมื่อตรวจพบไฟล์ที่สนใจแล้วโปรแกรมจะส่งข้อมูลไปยังเซิร์ฟเวอร์คำสั่ง การดำเนินการถัดไปขึ้นอยู่กับตรรกะที่ระบุโดยอัลกอริธึมของศูนย์สั่งการ (C&C)
RTM ยังค้นหารูปแบบ URL ในประวัติเบราว์เซอร์ของคุณและแท็บที่เปิดอยู่ นอกจากนี้ โปรแกรมจะตรวจสอบการใช้ฟังก์ชัน FindNextUrlCacheEntryA และ FindFirstUrlCacheEntryA และยังตรวจสอบแต่ละรายการเพื่อให้ตรงกับ URL กับรูปแบบใดรูปแบบหนึ่งต่อไปนี้:
หลังจากตรวจพบแท็บที่เปิดอยู่ โทรจันจะติดต่อกับ Internet Explorer หรือ Firefox ผ่านกลไก Dynamic Data Exchange (DDE) เพื่อตรวจสอบว่าแท็บนั้นตรงกับรูปแบบหรือไม่
การตรวจสอบประวัติการเข้าชมและแท็บที่เปิดอยู่จะดำเนินการในวง WHILE (วงที่มีเงื่อนไขเบื้องต้น) โดยมีการพัก 1 วินาทีระหว่างการตรวจสอบ ข้อมูลอื่นๆ ที่ได้รับการตรวจสอบแบบเรียลไทม์จะกล่าวถึงในหัวข้อ 4.5
หากพบรูปแบบ โปรแกรมจะรายงานสิ่งนี้ไปยังเซิร์ฟเวอร์คำสั่งโดยใช้รายการสตริงจากตารางต่อไปนี้:
4.5 การติดตามผล
ขณะที่โทรจันกำลังทำงาน ข้อมูลเกี่ยวกับคุณลักษณะเฉพาะของระบบที่ติดไวรัส (รวมถึงข้อมูลเกี่ยวกับซอฟต์แวร์ธนาคาร) จะถูกส่งไปยังเซิร์ฟเวอร์คำสั่งและควบคุม การพิมพ์ลายนิ้วมือเกิดขึ้นเมื่อ RTM รันระบบตรวจสอบเป็นครั้งแรกทันทีหลังจากการสแกนระบบปฏิบัติการครั้งแรก
4.5.1. การธนาคารระยะไกล
โมดูล TBdo ยังรับผิดชอบในการตรวจสอบกระบวนการที่เกี่ยวข้องกับการธนาคารด้วย ใช้การแลกเปลี่ยนข้อมูลแบบไดนามิกเพื่อตรวจสอบแท็บใน Firefox และ Internet Explorer ในระหว่างการสแกนครั้งแรก โมดูล TShell อื่นใช้เพื่อตรวจสอบหน้าต่างคำสั่ง (Internet Explorer หรือ File Explorer)
โมดูลใช้อินเทอร์เฟซ COM IShellWindows, iWebBrowser, DWebBrowserEvents2 และ IConnectionPointContainer เพื่อตรวจสอบหน้าต่าง เมื่อผู้ใช้นำทางไปยังหน้าเว็บใหม่ มัลแวร์จะบันทึกสิ่งนี้ไว้ จากนั้นจะเปรียบเทียบ URL ของหน้ากับรูปแบบข้างต้น เมื่อตรวจพบการจับคู่ โทรจันจะจับภาพหน้าจอติดต่อกันหกภาพโดยมีช่วงเวลา 5 วินาทีและส่งไปยังเซิร์ฟเวอร์คำสั่ง C&S โปรแกรมยังตรวจสอบชื่อหน้าต่างบางส่วนที่เกี่ยวข้องกับซอฟต์แวร์ธนาคาร - รายการทั้งหมดอยู่ด้านล่าง:
4.5.2. สมาร์ทการ์ด
RTM ช่วยให้คุณตรวจสอบเครื่องอ่านสมาร์ทการ์ดที่เชื่อมต่อกับคอมพิวเตอร์ที่ติดไวรัส อุปกรณ์เหล่านี้ใช้ในบางประเทศเพื่อกระทบยอดคำสั่งซื้อการชำระเงิน หากอุปกรณ์ประเภทนี้เชื่อมต่อกับคอมพิวเตอร์ ก็อาจระบุให้โทรจันทราบว่าเครื่องนั้นถูกใช้สำหรับธุรกรรมทางธนาคาร
ไม่เหมือนกับโทรจันธนาคารอื่นๆ RTM ไม่สามารถโต้ตอบกับสมาร์ทการ์ดดังกล่าวได้ บางทีฟังก์ชันนี้อาจรวมอยู่ในโมดูลเพิ่มเติมที่เรายังไม่เคยเห็น
4.5.3. คีย์ล็อกเกอร์
ส่วนสำคัญในการตรวจสอบพีซีที่ติดไวรัสคือการตรวจจับการกดแป้นพิมพ์ ดูเหมือนว่านักพัฒนา RTM จะไม่ขาดข้อมูลใด ๆ เนื่องจากพวกเขาตรวจสอบไม่เพียง แต่คีย์ปกติเท่านั้น แต่ยังรวมถึงแป้นพิมพ์เสมือนและคลิปบอร์ดด้วย
เมื่อต้องการทำเช่นนี้ ใช้ฟังก์ชันSetWindowsHookExA ผู้โจมตีจะบันทึกคีย์ที่กดหรือคีย์ที่ตรงกับแป้นพิมพ์เสมือน พร้อมด้วยชื่อและวันที่ของโปรแกรม จากนั้นบัฟเฟอร์จะถูกส่งไปยังเซิร์ฟเวอร์คำสั่ง C&C
ฟังก์ชัน SetClipboardViewer ใช้เพื่อสกัดกั้นคลิปบอร์ด แฮกเกอร์บันทึกเนื้อหาของคลิปบอร์ดเมื่อข้อมูลเป็นข้อความ ชื่อและวันที่จะถูกบันทึกไว้ก่อนที่จะส่งบัฟเฟอร์ไปยังเซิร์ฟเวอร์
4.5.4. ภาพหน้าจอ
ฟังก์ชั่น RTM อีกอย่างคือการสกัดกั้นภาพหน้าจอ คุณลักษณะนี้จะถูกนำไปใช้เมื่อโมดูลการตรวจสอบหน้าต่างตรวจพบไซต์หรือซอฟต์แวร์การธนาคารที่น่าสนใจ ภาพหน้าจอจะถูกถ่ายโดยใช้ไลบรารีภาพกราฟิกและถ่ายโอนไปยังเซิร์ฟเวอร์คำสั่ง
4.6. การถอนการติดตั้ง
เซิร์ฟเวอร์ C&C สามารถหยุดไม่ให้มัลแวร์ทำงานและทำความสะอาดคอมพิวเตอร์ของคุณได้ คำสั่งช่วยให้คุณสามารถล้างไฟล์และรายการรีจิสตรีที่สร้างขึ้นในขณะที่ RTM กำลังทำงานอยู่ จากนั้น DLL จะใช้เพื่อลบมัลแวร์และไฟล์ winlogon หลังจากนั้นคำสั่งจะปิดคอมพิวเตอร์ ดังที่แสดงในภาพด้านล่าง DLL จะถูกลบออกโดยนักพัฒนาโดยใช้ Erase.dll
เซิร์ฟเวอร์สามารถส่งคำสั่งถอนการติดตั้งล็อคแบบทำลายล้างไปยังโทรจัน ในกรณีนี้ หากคุณมีสิทธิ์ของผู้ดูแลระบบ RTM จะลบบูตเซกเตอร์ MBR บนฮาร์ดไดรฟ์ หากล้มเหลว โทรจันจะพยายามเปลี่ยนเซกเตอร์สำหรับบูต MBR เป็นเซกเตอร์แบบสุ่ม จากนั้นคอมพิวเตอร์จะไม่สามารถบูตระบบปฏิบัติการได้หลังจากปิดเครื่อง ซึ่งอาจนำไปสู่การติดตั้งระบบปฏิบัติการใหม่ทั้งหมด ซึ่งหมายถึงการทำลายหลักฐาน
หากไม่มีสิทธิ์ของผู้ดูแลระบบ มัลแวร์จะเขียน .EXE ที่เข้ารหัสใน RTM DLL ที่เกี่ยวข้อง โปรแกรมปฏิบัติการรันโค้ดที่จำเป็นในการปิดเครื่องคอมพิวเตอร์และลงทะเบียนโมดูลในคีย์รีจิสทรี HKCUCurrentVersionRun ทุกครั้งที่ผู้ใช้เริ่มเซสชัน คอมพิวเตอร์จะปิดเครื่องทันที
4.7. ไฟล์การกำหนดค่า
ตามค่าเริ่มต้น RTM แทบจะไม่มีไฟล์การกำหนดค่า แต่เซิร์ฟเวอร์คำสั่งและการควบคุมสามารถส่งค่าการกำหนดค่าที่จะถูกเก็บไว้ในรีจิสทรีและใช้งานโดยโปรแกรม รายการคีย์การกำหนดค่าแสดงอยู่ในตารางด้านล่าง:
การกำหนดค่าถูกจัดเก็บไว้ในคีย์รีจิสทรีซอฟต์แวร์ [สตริงสุ่มหลอก] แต่ละค่าสอดคล้องกับแถวใดแถวหนึ่งที่แสดงในตารางก่อนหน้า ค่าและข้อมูลถูกเข้ารหัสโดยใช้อัลกอริทึม RC4 ใน RTM
ข้อมูลมีโครงสร้างเดียวกันกับเครือข่ายหรือสตริง มีการเพิ่มคีย์ XOR สี่ไบต์ที่จุดเริ่มต้นของข้อมูลที่เข้ารหัส สำหรับค่าคอนฟิกูเรชัน คีย์ XOR จะแตกต่างออกไปและขึ้นอยู่กับขนาดของค่า สามารถคำนวณได้ดังนี้:
xor_key = (len (config_value) << 24) | (เลน (config_value) << 16)
| เลน (config_value) | (เลน (config_value) << 8)
4.8. ฟังก์ชั่นอื่นๆ
ต่อไป มาดูฟังก์ชันอื่นๆ ที่ RTM รองรับกัน
4.8.1. โมดูลเพิ่มเติม
โทรจันมีโมดูลเพิ่มเติมซึ่งเป็นไฟล์ DLL โมดูลที่ส่งจากเซิร์ฟเวอร์คำสั่ง C&C สามารถดำเนินการเป็นโปรแกรมภายนอก ซึ่งสะท้อนอยู่ใน RAM และเปิดใช้งานในเธรดใหม่ สำหรับการจัดเก็บข้อมูล โมดูลจะถูกบันทึกในไฟล์ .dtt และเข้ารหัสโดยใช้อัลกอริธึม RC4 ด้วยคีย์เดียวกับที่ใช้สำหรับการสื่อสารเครือข่าย
จนถึงตอนนี้เราได้สังเกตการติดตั้งโมดูล VNC (8966319882494077C21F66A8354E2CBCA0370464) โมดูลการแยกข้อมูลเบราว์เซอร์ (03DE8622BE6B2F75A364A275995C3411626C4D9F) และโมดูล 1c_2_kl (B1EE562E1F69E FC6FBA58 B88753BE7D0B3E4CFAB)
หากต้องการโหลดโมดูล VNC เซิร์ฟเวอร์ C&C จะออกคำสั่งเพื่อขอการเชื่อมต่อกับเซิร์ฟเวอร์ VNC ที่ที่อยู่ IP เฉพาะบนพอร์ต 44443 ปลั๊กอินเรียกข้อมูลเบราว์เซอร์จะเรียกใช้งาน TBrowserDataCollector ซึ่งสามารถอ่านประวัติการเรียกดู IE ได้ จากนั้นจะส่งรายการ URL ที่เยี่ยมชมทั้งหมดไปยังเซิร์ฟเวอร์คำสั่ง C&C
โมดูลสุดท้ายที่ค้นพบเรียกว่า 1c_2_kl สามารถโต้ตอบกับแพ็คเกจซอฟต์แวร์ 1C Enterprise โมดูลประกอบด้วยสองส่วน: ส่วนหลัก - DLL และเอเจนต์สองตัว (32 และ 64 บิต) ซึ่งจะถูกฉีดเข้าไปในแต่ละกระบวนการ โดยลงทะเบียนการเชื่อมโยงกับ WH_CBT เมื่อนำมาใช้ในกระบวนการ 1C แล้ว โมดูลจะผูกฟังก์ชัน CreateFile และ WriteFile เมื่อใดก็ตามที่มีการเรียกใช้ฟังก์ชัน CreateFile ที่ถูกผูกไว้ โมดูลจะเก็บเส้นทางของไฟล์ 1c_to_kl.txt ไว้ในหน่วยความจำ หลังจากสกัดกั้นการเรียก WriteFile แล้ว จะเรียกใช้ฟังก์ชัน WriteFile และส่งพาธของไฟล์ 1c_to_kl.txt ไปยังโมดูล DLL หลัก โดยส่งข้อความ Windows WM_COPYDATA ที่สร้างขึ้นมา
โมดูล DLL หลักจะเปิดและแยกวิเคราะห์ไฟล์เพื่อกำหนดใบสั่งการชำระเงิน รับรู้จำนวนเงินและหมายเลขธุรกรรมที่มีอยู่ในไฟล์ ข้อมูลนี้จะถูกส่งไปยังเซิร์ฟเวอร์คำสั่ง เราเชื่อว่าโมดูลนี้อยู่ระหว่างการพัฒนาเนื่องจากมีข้อความแก้ไขข้อบกพร่องและไม่สามารถแก้ไข 1c_to_kl.txt ได้โดยอัตโนมัติ
4.8.2. การเพิ่มสิทธิพิเศษ
RTM อาจพยายามขยายสิทธิ์โดยการแสดงข้อความแสดงข้อผิดพลาดที่เป็นเท็จ มัลแวร์จำลองการตรวจสอบรีจิสทรี (ดูภาพด้านล่าง) หรือใช้ไอคอนตัวแก้ไขรีจิสทรีจริง โปรดทราบว่าการสะกดผิดรอ – whait หลังจากการสแกนไม่กี่วินาที โปรแกรมจะแสดงข้อความแสดงข้อผิดพลาดเท็จ
ข้อความเท็จจะหลอกลวงผู้ใช้ทั่วไปได้อย่างง่ายดายแม้จะมีข้อผิดพลาดทางไวยากรณ์ก็ตาม หากผู้ใช้คลิกลิงก์ใดลิงก์หนึ่งจากทั้งสองลิงก์ RTM จะพยายามขยายสิทธิ์ในระบบ
หลังจากเลือกหนึ่งในสองตัวเลือกการกู้คืน โทรจันจะเปิด DLL โดยใช้ตัวเลือก runas ในฟังก์ชัน ShellExecute พร้อมสิทธิ์ของผู้ดูแลระบบ ผู้ใช้จะเห็นพรอมต์ Windows จริง (ดูภาพด้านล่าง) สำหรับการยกระดับ หากผู้ใช้ให้สิทธิ์ที่จำเป็น โทรจันจะทำงานด้วยสิทธิ์ของผู้ดูแลระบบ
โทรจันจะแสดงข้อความแสดงข้อผิดพลาดเป็นภาษารัสเซียหรือภาษาอังกฤษ ทั้งนี้ขึ้นอยู่กับภาษาเริ่มต้นที่ติดตั้งบนระบบ
4.8.3. ใบรับรอง
RTM สามารถเพิ่มใบรับรองลงใน Windows Store และยืนยันความน่าเชื่อถือของการเพิ่มโดยคลิกปุ่ม "ใช่" ในกล่องโต้ตอบ csrss.exe โดยอัตโนมัติ ลักษณะการทำงานนี้ไม่ใช่เรื่องใหม่ ตัวอย่างเช่น Banking Trojan Retefe ยังยืนยันการติดตั้งใบรับรองใหม่อย่างอิสระอีกด้วย
4.8.4. การเชื่อมต่อย้อนกลับ
ผู้เขียน RTM ยังสร้างอุโมงค์ Backconnect TCP อีกด้วย เรายังไม่เคยเห็นคุณสมบัตินี้ใช้งาน แต่ได้รับการออกแบบมาเพื่อตรวจสอบพีซีที่ติดไวรัสจากระยะไกล
4.8.5. การจัดการไฟล์โฮสต์
เซิร์ฟเวอร์ C&C สามารถส่งคำสั่งไปยังโทรจันเพื่อแก้ไขไฟล์โฮสต์ Windows ไฟล์โฮสต์ใช้เพื่อสร้างการแก้ไข DNS แบบกำหนดเอง
4.8.6. ค้นหาและส่งไฟล์
เซิร์ฟเวอร์อาจขอค้นหาและดาวน์โหลดไฟล์บนระบบที่ติดไวรัส ตัวอย่างเช่น ในระหว่างการวิจัย เราได้รับคำขอไฟล์ 1c_to_kl.txt ตามที่อธิบายไว้ก่อนหน้านี้ ไฟล์นี้สร้างโดยระบบบัญชี 1C: Enterprise 8
4.8.7. อัพเดท
สุดท้ายนี้ ผู้เขียน RTM สามารถอัปเดตซอฟต์แวร์ได้โดยการส่ง DLL ใหม่เพื่อแทนที่เวอร์ชันปัจจุบัน
5 ข้อสรุป
การวิจัยของ RTM แสดงให้เห็นว่าระบบธนาคารของรัสเซียยังคงดึงดูดผู้โจมตีทางไซเบอร์ กลุ่มต่างๆ เช่น Buhtrap, Corkow และ Carbanak ประสบความสำเร็จในการขโมยเงินจากสถาบันการเงินและลูกค้าของพวกเขาในรัสเซีย RTM เป็นผู้เล่นใหม่ในอุตสาหกรรมนี้
มีการใช้งานเครื่องมือ RTM ที่เป็นอันตรายตั้งแต่อย่างน้อยปลายปี 2015 ตามการวัดทางไกลของ ESET โปรแกรมนี้มีความสามารถในการสอดแนมอย่างเต็มรูปแบบ รวมถึงการอ่านสมาร์ทการ์ด การสกัดกั้นการกดแป้นพิมพ์ และการตรวจสอบธุรกรรมทางธนาคาร รวมถึงการค้นหาไฟล์การขนส่ง 1C: Enterprise 8
การใช้โดเมนระดับบนสุด .bit ที่กระจายอำนาจและไม่ถูกเซ็นเซอร์ทำให้มั่นใจได้ว่าโครงสร้างพื้นฐานมีความยืดหยุ่นสูง
ที่มา: will.com