
高度なマルチフェーズローダーに対する詳細なリバースエンジニアリング解析。Shellhost.exe、amsi.dll、mstscax.dll、clbcatq.dllを標的とし、モジュールスタンピング、CFGバイパス、COMハイジャック、ダウングレード攻撃を利用。
この分析は、Shellhost.exe、amsi.dll、mstscax.dll、clbcatq.dllを標的とした高度な多段階ローダーを扱います。このローダーは、モジュールストンピング、CFGバイパス、COMハイジャック、およびダウングレード攻撃を使用します。
ローダーは、ペイロードインジェクションの主要プロセスとしてShellhost.exeを標的にします。モジュールストンピングを使用して、Shellhostの正当なコードを自身の悪意のあるペイロードで上書きします。
push 70207369h = "is p")と無効な命令(jb、outs、ins)が含まれています。fothkセクション: INT3トラップとCFGバイパスルーチンへの単一のjmpで埋められたカスタムセクション。Shellhost.exe内の難読化されたペイロードのWinDbgビュー。

ローダーは、INT3(0xCC)アンチディスアセンブリトラップで埋められたカスタムセクションをamsi.dllに注入します。単一のjmpが**Control Flow Guard(CFG)**バイパスルーチンにリダイレクトし、jmp raxを介して最終的なシェルコードにジャンプします。
INT3命令で埋められています。jmp: jmp 0x00007ffbc85060c0がCFGバイパスルーチンにつながります。
INT3トラップと単一のjmp命令のWinDbgビュー。
ローダーは、ペイロード用のメモリを手動で割り当てるためにLocalAllocを使用します。カスタム構造体には、COMハイジャックのためのファイルハンドルとvtable割り当てが入力されます。
LocalAlloc(0x40, 0x68): 104バイトのメモリを割り当てます。*puVar12 = &PTR_FUN_180699290。puVar12[4] = hFileは、ローダーがファイルから読み取ることを示唆しています。
LocalAllocの使用と手動構造体割り当てのGhidraビュー。
ローダーは、固定メモリアドレス(lRam0000000000000000)とvtable呼び出しを使用してカーネルオブジェクトを操作します。この技法は特権昇格に使用されます。
lRam0000000000000000。+0x18、+0x40、+0x60はカーネルレベルの操作を示します。FUN_180031f18とFUN_1800330c8を使用します。
固定メモリアドレスとvtable呼び出しのGhidraビュー。
HKLM\Software\Microsoft\COM3\RemoteAccessEnabledamsi.dll、mstscax.dll、clbcatq.dllShellhost.exefothkこのローダーは、モジュールストンピング、CFGバイパス、COMハイジャック、ダウングレード攻撃を含む高度な回避技術を示しています。ステルス性と永続性を確保するために複数のシステムコンポーネントを標的にしています。
StructBreaker – マルウェアアナリスト & リバースエンジニア