setodaNote

忘れる用のメモ書き for Cybersecurity

Volatility の netscan で通信したプロセスIDが不明なときの探し方

Volatility でnetscan を使った際に、怪しい接続先が見つかってもプロセスIDが「-1」となってしまっている場合があります。そんなときに通信元プロセスをどう探せばいいのかについて BlackHat Asia 2019 の発表でさらっと紹介されていました。

通信したプロセスIDの特定方法

まず怪しい通信がされていないかを netscan で確認します。すると不審なIPアドレスにアクセスしていることが分かりました。Whois によるとボリビアとメキシコのIPアドレスのようです。この接続先にアクセスしていたプロセスを特定したいですが、残念ながら接続していたプロセスIDの列が 「-1」 となっており特定できません。

vol.py -f memory.dmp  --profile=Win7SP1x86_24000 netscan

f:id:soji256:20190603201700p:plain
vol.py - netscan

そんなときは yarascan で接続先の IPアドレス を持つプロセスを探してみます。(以下では IPアドレス部分をデファングしています。)

vol.py -f memory.dmp  --profile=Win7SP1x86_24000 yarascan -Y "200[.]58.171.51"

f:id:soji256:20190603202240p:plain
vol.py - yara (1/2)

vol.py -f memory.dmp  --profile=Win7SP1x86_24000 yarascan -Y "189[.]196.140.187"

f:id:soji256:20190603202431p:plain
vol.py - yara (2/2)

2件ともに見つかり、怪しい名前をもつプロセス「813.exe」(PID 1944)が接続していたらしいことが分かります。(通信先IPアドレスで調べると分かりますが、この検体は Emotet に関係するもののようです。)

参考文献

付録

813.exe

MD5   : 1c6c24ea6c046a1a0e1a2ec66d68beec
SHA-1 : a0bd3ca87cf824aad686b1b207abf35a2be22c23 
SHA256: 7aafdd9cb1883904de67682d59c492e9883fa39e93a5d7077a5aa6252bf3c13c

更新履歴

  • 2019/06/03 新規作成