An Order of Magnitude Update
NTT Security Japan KK
Rintaro Koike, Hajime Takai, Nobuyuki Amakasu

About Us

Rintaro Koike

Hajime Takai

Nobuyuki Amakasu

SOC Analyst

SOC Analyst

SOC Analyst

Threat Research

Malware Analysis

Malware Analysis© 2022 NTT All Rights Reserved

Agenda1. Introduction

2. Traffic-based Analysis
3. Malware Analysis
4. Defense

5. Wrap-Up© 2022 NTT All Rights Reserved

Motivation & Goal
Magnitude Exploit Kitの最新動向の共有• 直近1年間で行われてきたアップデート内容• 具体的な攻撃の詳細解析• 検知・防衛手法

詳細な挙動を読み解く• 観測・回避のために必要な要素• 特徴的な実装、また作成者についての考察© 2022 NTT All Rights Reserved

Magnitude Exploit Kit• 2012年頃から観測されているExploit Kit•

現存するExploit Kitの中では最も古い• Region-Specific•

東アジアの国・地域のみを標的としている（特に韓国）•

日本ではこれまでほとんど観測されてこなかったが、2021年10月頃から急増• ランサムウェアを実行することが目的•

Magniberと呼ばれる独自のランサムウェア• 現在でも活発にアップデートが行われている•

新しい脆弱性を積極的に悪用© 2022 NTT All Rights Reserved

Major Update in 2021
新たな脆弱性の悪用• EKによるCVE-2021-40444とCVE-2021-21224の悪用は極めて珍しい
攻撃範囲を拡大• 標的国・地域の変更、Chromiumの脆弱性の悪用やソーシャルエンジニアリング
脆弱性

PoCが公開された時期

悪用し始めた時期

CVE-2021-26411

2021年2月上旬

2021年4月上旬

CVE-2021-40444

2021年9月中旬

2021年10月上旬

CVE-2021-21224

2021年6月上旬

2021年10月下旬

CVE-2021-43890-2021年12月下旬© 2022 NTT All Rights ReservedComponents
1. Magnigate•

特定の条件を満たすことでLanding PageへリダイレクトするWebページ›

主にユーザの地理的情報およびアクセス経路をチェック

2. Landing Page•

Exploit Codeなど攻撃のためのコードを読み込む

3. Exploit Code•

脆弱性を悪用し、Magniberをダウンロード・実行

4. Magniber•

オリジナルのランサムウェア© 2022 NTT All Rights ReservedTraffic-based Analysis© 2022 NTT All Rights Reserved

Case 1: Microsoft Internet Explorer

#1

#2,3

#4

© 2022 NTT All Rights Reserved

Case 1: Analysis: Exploit Code© 2022 NTT All Rights Reserved

Case 2: Microsoft Edge

#1

#2,3

#4

© 2022 NTT All Rights Reserved

Case 2: Social Engineering© 2022 NTT All Rights Reserved

Case 2: AppX File
AppX (Windows Application Package)• AppManifest.xmlによって、同梱されたexeファイルを実行© 2022 NTT All Rights Reserved

Case 2: CVE-2021-43890
Microsoftが発行した信頼されたアプリのように見える• 有効なデジタル署名も付与されている© 2022 NTT All Rights Reserved

Malware Analysis© 2022 NTT All Rights Reserved

Magniber
Magnitude Exploit Kitによって最終的に感染するランサムウェア© 2022 NTT All Rights Reserved

Case 1: Attack Flowdownload &execute© 2022 NTT All Rights Reserved

Magniber

Shellcodekxoirr.inf
xor decode &executeinject code
to local process

Case 1: Features
kxoirr.inf• 複数回のjmp命令を利用した難読化

Shellcode• XORを組み合わせた処理でMagniber本体をデコード• 感染端末のプロセスにMagniber本体のコードをインジェクション

• system callを利用したAPI呼び出し© 2022 NTT All Rights Reserved

Case 1: Features
Magniber本体• AESとRSAを用いてファイルを暗号化• 拡張子を基準にした暗号化するファイルの優先度付け• VolumeShadowCopyの削除© 2022 NTT All Rights Reserved

Case 2: Attack Flow
C&C Server

download &execute

APPX

download

EXE
executecontained file© 2022 NTT All Rights ReservedDLL
call exportfunction

Shellcode
xor decode &execute

Magniber

xor decode &execute

Case 2: Updates• Magniber本体をC&Cサーバーからダウンロードする方式に変化•

ダウンロードを実行するDLLを呼び出すEXEは.NETを用いて実装されている• 感染端末のプロセスにインジェクションする処理は削除
DLLを呼び出すコード© 2022 NTT All Rights Reserved

Case 2: Updates• 新規作成後に編集してないファイルを暗号化対象から除外•

ファイルのLastAccessTime, LastWritenDate, LastCreationDateを元に判断•

普段使用しているファイルの暗号化を優先するためと考えられる暗号化対象のファイルを判定するコード© 2022 NTT All Rights Reserved

Case 3 (2022/1/19-): Updates• C&Cサーバーからダウンロードする処理の削除• Magniber本体のデコード処理も1回しか行われない• Windows10以前のバージョンを意識したコードの削除•

syscallを利用したAPI呼び出し•

VolumeShadowCopyの削除

Magniber

APPX

download &execute© 2022 NTT All Rights Reserved

decode &executeMagniber Updates Summary
不要な機能を削除するアップデート• プロセスインジェクションをするコードの削除• Magniber本体をダウンロードするコードの削除• Magniber本体をデコードする回数も1回のみ• Windows10以前のバージョンを意識したコードの削除© 2022 NTT All Rights ReservedDefense© 2022 NTT All Rights ReservedResearch: Magnigate
Magnigateは条件を満たさないアクセスの場合ダミーページを返す• ダミーページは長期間変化しない•

533f687471b2eb49aa6b9ef6aace109e8c676cb51043f1fded5cb159ae98f6bb© 2022 NTT All Rights ReservedHunting: Network
トラフィックはHTTPのみ• URL•[0-9a-z](3,6).cab•"edge"や"chrome"を含む拡張子"appx"のファイル•›

edge_update.appx、upgrade_edge.appx、Upgrade_Edge_98.0.1000.0.zip›

chrome_update.appx、upgrade_chrome.appx、Upgrade_Chrome_98.0.1000.0.zip[0-9a-z](8,14).windows.store.{Domain}.{gTLD}• HTML•<title>Edge requires a manual update</title>•<html><body onload="[0-9a-z](8,15)()"><script© 2022 NTT All Rights ReservedHunting: EndpointCVE-2021-40444を悪用した場合• iexplore.exeが%temp%配下にinfファイルを作成•/AppData/Local/Temp/Low/xxxxxxx.inf• control.exeが%temp%以下にあるinfファイルを実行•

control.exe ".cpl:../../../AppData/../AppData/Local/Temp/Low/xxxxxxx.inf"• control.exeから生えたrundll32.exeも同様の引数で実行•

rundll32.exe Shell32.dll,Control_RunDLL".cpl:../../../AppData/../AppData/Local/Temp/Low/xxxxxxx.inf"© 2022 NTT All Rights ReservedHunting: Endpoint
ソーシャルエンジニアリングの場合• ブラウザによるAppXファイルの作成•"edge"や"chrome"を含む拡張子"appx"のファイル›

ファイル名は週単位くらいで変化する• AppXファイルの起動•

Program Files¥WindowsApps以下にあるAppInstaller.exe• AppXファイルからダウンローダの起動•

svchost.exe > sihost.exe > [ランダムな英字].exe›

ダウンローダのEXEファイルおよびDLLファイルはProgram Files¥WindowsApps配下に存在© 2022 NTT All Rights ReservedHunting: Endpoint
Magniberの挙動を用いた検知• 暗号化ファイル作成• Magniberの検体によって暗号化後のファイル拡張子は様々»

Sample.docx > Sample.docx.[ランダムな英字]• 複数のディレクトリ配下や、%PUBLIC%にランサムノート(readme.txt)の作成• VolumeShadowCopyの削除に利用するスクリプトの作成› %PUBLIC%¥readme.txt› %PUBLIC%¥readme1.txt© 2022 NTT All Rights ReservedHunting: Endpoint
Magniberの挙動を用いた検知• レジストリキーと値の作成› Win10：HKCU¥Software¥Classes¥ms-settings¥shell¥open¥command› Win10以外：HKCU¥Software¥Classes¥mscfile¥shell¥open¥command» regsvr32.exe scrobj.dll /s /u /n /i:C:¥Users¥Public¥readme.txt» regsvr32.exe scrobj.dll /s /u /n /i:C:¥Users¥Public¥readme1.txt» DelegateExecute(Win10の場合)© 2022 NTT All Rights Reserved

Wrap-Up© 2022 NTT All Rights Reserved

Wrap-Up
Magnitude Exploit Kitの最新動向の共有• 直近1年間で行われてきたアップデート内容• 具体的な攻撃の詳細解析• 検知・防衛手法

詳細な挙動を読み解く• 観測・回避のために必要な要素• 特徴的な実装、また作成者についての考察© 2022 NTT All Rights Reserved

Acknowledgements & References
Special Thanks• Jerome Segura (Malwarebytes)
References•

https://asec.ahnlab.com/en/24719/•

https://decoded.avast.io/janvojtesek/magnitude-exploit-kit-still-alive-and-kicking/•https://www.cybereason.com/blog/threat-analysis-report-printnightmare-and-magniber-ransomware•

https://asec.ahnlab.com/en/27264/•

https://blog.malwarebytes.com/exploits-and-vulnerabilities/2021/10/magnitude-ek-has-been-spotted-targeting-thechrome-browser/•

https://blog.malwarebytes.com/threat-intelligence/2022/01/ransomware-targets-edge-users/•

https://asec.ahnlab.com/en/30645/© 2022 NTT All Rights ReservedAny Questions?

© 2022 NTT All Rights Reserved

Appendix-1: IoC
Magniber• サンプルファイルハッシュ•

CABファイル›•

58ec0f69ad17a5e7dad615f8f9b306a0d098249e0f835a41988cfcbe09438db0

INFファイル›

63271aa9c1f4854e3c362e7ad23ba26c60a901273225f8244023e91dc0a69eb© 2022 NTT All Rights Reserved

Appendix-1: IoC
Magniber• サンプルファイルハッシュ•••

ローダ（.NETアセンブリ）›

6fbb07a65f69fba0821eb3c60708f0a18478acbf7a6466c5738c0208908264f1›

d2318cf487203d909993fd9fed787855af03ef7b6343f5fa492cac7e42f507ef›

758c730bd5ce13395261c87654b9f502661e70dd15f474c05fab3da97165da37

ダウンローダ（DLLファイル）›

bae28fb8c01c5b544400cc920f16e84546fdd255427ef8ee5961384afc843658›

730e9aaf852653ee296d8f1a5ec6ede4250acf90dbfd1eb56a107bc3a1e2e5d7

ドロッパー（DLLファイル）›

41244ba3a23d41c195451e25a8f658099e87b0e8b03987f37ea1e9a15832498b© 2022 NTT All Rights Reserved

Appendix-1: IoC
Magniber• ランサムページ•*.shepain[.]quest•*.weruns[.]quest•*.putout[.]space•*.ohroot[.]icu•*.ofideas[.]uno•*.allrids[.]art•*.megrow[.]site•*.madsell[.]cyou•*.ranmuch[.]space•*.gaplies[.]fit•*.gunfail[.]quest•*.raredoe[.]uno© 2022 NTT All Rights Reserved

Appendix-2: Detection Rule
import "pe“
rule Magniber_T1{
strings:$hex_1 = {48 FF C6 (EB | E9)}
$hex_2 = {48 FF C7 (EB | E9)}
$hex_3 = {48 FF C2 (EB | E9)}
$hex_4 = {48 33 DB (EB | E9)}
$hex_5 = {0F 05(EB | E9)}

condition:pe.is_pe and filesize <= 110KB and all of ($hex_*)}© 2022 NTT All Rights Reserved

Appendix-2: Detection Rule
rule Magniber_T2{

strings:$str_1 = "OUR DOCUMENTS PHOTOS DATABASES AND OTHER IMPORTANT FILES HAVE BEEN ENCRYPTED!" wide

$str_2 = "Your files are NOT damaged! Your files are modified only. This modification is reversible." wide

condition:
all of ($str_*)}© 2022 NTT All Rights Reserved

Appendix-2: Detection Rule
rule Magniber_T3{

strings:$hex_1 = {8D 41 A0 69 C0 6B F2 DA 00 03 D8}$hex_2 = {8D 41 A0 69 C0 F1 1B 08 00 03 d8}$hex_3 = {8D 41 A0 69 C0 E3 4C 00 00 03 D8}$hex_4 = {8D 41 A0 69 C0 D9 02 00 00 03 D8}$hex_5 = {8D 41 A0 6B C0 1B 03 D8}$hex_6 = {83 C3 A0 03 D9}

condition:

all of ($hex_*)}© 2022 NTT All Rights Reserved