题目
题目如上图所示,我们发现连接到我们的一台服务器的一个可疑连接,于是立即进行了内存转储。你能弄清楚攻击者的目的吗?
内存分析
这次要分析的是一个内存dump文件。要做内存取证分析,自然就想到了Volatility。Volatility是一款用Python编写的开源的内存取证工具。该工具在Kali里自带了。
下载好题目提供的内存dump文件 WIN-LQS146OE2S1-20201027-142607.raw
。
为了使volatility能从内存dump文件中更准确的分析数据,需要指定不同操作系统的配置文件(通过 --profile
参数),所以先使用 volatility 的 imageinfo指令去确定一下该内存dump文件应使用哪个配置文件。
volatility -f WIN-LQS146OE2S1-20201027-142607.raw imageinfo
输出结果 Suggested Profile(s)
一项罗列了建议使用的配置文件,选择其中一个即可,这里我们使用 Win7SP1x64
.
根据 SANS的Memory Forensics Cheat Sheet 备忘录里提到的内存分析指导,识别可疑/恶意进程是第一步。
这里使用 volatility 的pslist
指令列出内存dump文件里的所有进程:
volatility -f WIN-LQS146OE2S1-20201027-142607.raw --profile=Win7SP1x64 pslist
如上图,可以看到存在一个cmd.exe
进程,这说明有一个活动的终端会话。接着使用 volatility 的cmdscan
指令提取出命令历史:
volatility -f WIN-LQS146OE2S1-20201027-142607.raw --profile=Win7SP1x64 cmdscan
bingo! 命令历史记录很少,有趣的来了,一条powershell命令,它将外部站点托管的powershell脚本下载到受害的Windows服务器的启动目录中,想要让这个powershell脚本随服务器启动而自动运行。
http://bit.ly/SFRCe1cxTmQwd3NfZjByM05zMUNTXzNIP30=.ps1
将url中的文件名进行base64编码后,得到本题的flag: