MITRE ATT&CK系列文章之Powershell DLL注入及日志分析
作者: 日期:2020年10月16日 阅:2,709

背景

进程注入是一种广泛应用于恶意软件和无文件攻击中的逃避技术,可以在另一个进程的地址空间内执行任意代码。由于执行的代码由合法的程序代理执行,因此通过进程注入可以绕过部分安全产品的防病毒检测或进程白名单检测,既提高了隐蔽性也实现了持久化。Red Canary公司在2019年对其客户环境的真实数据进行调研分析,整理得出2020威胁检测报告,报告中排名靠前的威胁有进程注入、定时任务、Windows Admin共享和Powershell等。另外,在2018年和2019年,进程注入的威胁风险排名都为第一,影响的客户也分别高达25%和35%。

DLL注入作为进程注入最常见的一种方式,攻击者通常会在DLL文件中嵌入自己的恶意攻击代码以获取更高的执行权限。

Powershell DLL注入模拟

环境准备:windows服务器(靶机)、webshell木马、放在公网的Powershell脚本(PowerSploit)、kali(攻击机)

流程:利用Powershell使用已有工具PowerSploit中的Invoke-DllInjection进行DLL注入利用,通过Invoke-Expression(IEX)调用.Net Web Client下载功能下载公网上的PowerShell代码并执行DLL注入到后台进程。

过程:

通过MSF生成恶意DLL

2、MSF开启监听

3. 连接webshell木马(主要展示DLL注入,传马过程略)并将DLL文件上传到服务器(靶机)

4.通过powershell命令在后台打开notepad.exe(也可打开explorer.exe等)并查看进程ID,并利用Invoke-DLLInjection将DLL注入到进程。

5.在kali中可以看到反弹回来到shell,可以进一步利用MSF的功能模块进行提权等操作。

日志分析

日志来源:Sysmon日志、Apache服务器acess日志

平台:日志易、SIEM

分析:

1.日志易SIEM平台配置了MITRE ATT&CK告警规则,查看平台可看到对应告警

2.点击查看原始事件可在日志易平台查看原始告警数据,可以看到下载脚本和注入的命令,对应的父进程为cmd.exe,脚本服务器IP。

3.统计与恶意脚本服务器的事件,有进程事件和网络连接事件。

经进一步统计分析,进程事件均为下载恶意脚本和注入的记录,网络事件统计如下:

可以看到脚本服务器IP还对本机的httpd.exe发起连接,为Apache服务器进程,再继续查看受害机器的服务器日志。

4. 统计apache日志,发现是服务器下login.php的问题(即webshell)

申明:本文系厂商投稿收录,所涉观点不代表安全牛立场!


相关文章