
AnyDeskにAPCインジェクションを行い、AES/RSAを使用してHTTPS経由でC2へ窃取し、レジストリGUIDキーを介して永続化するPythonシェルコードのリバースエンジニアリング解説。
このx64dbgビューは、Pythonシェルコードがファイル操作(CreateFileW、DeleteFileA/W)とJMPトランポリンを使用してWindows APIを動的に呼び出していることを明らかにしています。
CreateFileW – ファイルを作成または開く(ペイロードのドロップ)。DeleteFileA / DeleteFileW – ファイルを削除する(痕跡のクリーンアップ)。DefineDosDeviceW – DOSデバイスを定義する(ドライブ操作)。jmp qword ptr ds:[<API>] – APIアドレスを動的に解決する。INT3 (0xCC) – アンチデバッグトラップ。C:\Users\dkaan\OneDrive\Desktop\output\shellcode.exe。
CreateFileW、DeleteFileA/W、JMPトランポリンを示すx64dbgビュー。
このx64dbgビューは、PythonシェルコードがGetCommandLineWを呼び出してコマンドライン引数を読み取り、同時にアンチデバッグのためにINT3トラップを使用していることを明らかにしています。
jmp qword ptr ds:[<GetCommandLineW>] – GetCommandLineWへのJMPトランポリン。&"Sun" – コマンドライン引数の文字列。mov [rsp+8], rbx、sub rsp, 0x20、xor ebx, ebx。test rdx, rdx、je kernel32.7FFBEC730A9。mov rdx, rsi、mov r8, rdi。GetCommandLineWを解決する。
GetCommandLineW、コマンドライン解析、INT3トラップを示すx64dbgビュー。
Process Hackerのメモリ分析は、PythonシェルコードがAnyDesk.exeへのAPCインジェクションを実行し、データ窃取のために高度な暗号化アルゴリズムを使用していることを明らかにしています。
AnyDesk.exe (PID 8064) – 正規のリモートデスクトップツール。AES for x86 / AES for Intel AES-NI – 対称暗号化。RSA for x86 – 非対称暗号化。SHA256 block transform – ハッシュ化。RC4 for x86 – ストリーム暗号。Vector Permutation AES – SIMDアクセラレーションされたAES。GHASH for x86 – GCM認証。Montgomery Multiplication – RSAアクセラレーション。ECP_NISTZ256 for x86 – 楕円曲線暗号。CreateRemoteThreadよりもステルス性が高い – 新しいスレッドが作成されない。
AnyDeskインジェクションと暗号化アルゴリズム(AES、RSA、SHA256、RC4)を示すProcess Hackerビュー。
TCPView分析は、PythonシェルコードがAnyDesk.exeを使用してポート443(HTTPS)経由で141.227.178.79にデータを窃取していることを明らかにしています。
AnyDesk.exe (PID 5068) – 正規のリモートデスクトップツール。141.227.178.79443 (HTTPS – 正規のトラフィックと混ざり合う)。Established (アクティブな接続)。
AnyDesk.exeがポート443経由で141.227.178.79に接続していることを示すTCPViewビュー。
Simplewall分析は、PythonシェルコードがAnyDesk.exeを使用してポート443(HTTPS)経由で141.227.178.79にデータを窃取しようとするものの、ブロックされると別の正規アドレス(92.38.180.106)への接続を試みることを明らかにしています。
AnyDesk.exe (PID 5068) – 正規のリモートデスクトップツール。92.38.180.106443 (HTTPS – 正規のトラフィックと混ざり合う)。Blocked (ブロックされた接続)。
Anydesk.exeがポート443経由で92.38.180.106への接続をブロックされていることを示すSimplewallビュー。
レジストリ分析は、Pythonシェルコードが永続化のためにHKLM\SYSTEM\CurrentControlSet\Control\の下にGUIDベースのキーを作成していることを明らかにしています。
{bf1a281b-ad7b-4476-ac95-f47682990ce7} – ランダムに生成されたGUID。GLOBALROOT\Device\HarddiskVolumeShadowCopy5\WINDOWS\system32\config\components。09 00 00 00 – アーキテクチャ識別子。30 00 2e 00 30 00 2e 00 2e 00 36 00 – Unicodeでの「0.0.0.6」。
GUIDベースのキーとStoreFormatVersion値を示すレジストリエディタビュー。
この分析は、APCインジェクションを介してAnyDeskに注入し、AnyDeskの正規IPアドレスを使用してC2サーバーへの接続を確立し、AESおよびRSA暗号化アルゴリズムを使用してトラフィックを隠蔽する高度なPythonシェルコードを明らかにしました。
141.227.178.79にデータを窃取していたことが明らかになった。GLOBALROOT\Device\HarddiskVolumeShadowCopy5\WINDOWS\system32\config\componentsを指すGUIDベースのキーを使用してレジストリに痕跡を残す。int3トラップが頻繁に現れる。分析されたFormbookサンプルは、自身で分析を行いたい方向けにMalwareBazaarで入手可能です:
MalwareBazaarのPython Shellcodeサンプル
使用ツール: x64dbg、Process Hacker、Binary Ninja