七夕云黑帽博客-专注互联网络安全-webshell七夕,七夕黑帽博客,QQ905690245

注册表中的PowerShell后门分析

2020-11-19 17:29 作者:Mr.刘 | 网络安全 | 标签: 注册表中的PowerShell后门分析

u=2967556374,3766812092&fm=27&gp=0.jpg

 

大家好,这是我关于恶意PowerShell脚本系列文章的第二部分。我的第一篇文章介绍了如何在系统事件日志中查找恶意的PowerShell脚本以及如何解码它们。在这篇文章中,我将讨论恶意PowerShell脚本可能隐藏的另一个位置——注册表。

 

分析

注册表是攻击者建立持久访问的好地方。常用的位置是位于软件配置单元或用户的ntuser.dat配置单元中的运行密钥。有关运行密钥的列表,请查看Forensic Wiki

我以前见过攻击者在Run键中使用PowerShell来调用包含另一个包含payload的base64代码。
让我们看看这个例子。使用Eric Zimmerman的注册表资源管理器,我打开以下注册表项:HKLMSoftwareMicrosoftWindowsCurrentVersionRun。在“hztGpoWa”值的下面,进行以下输入:你也可以使用Harlan的RegRipper soft_run插件来获取这些信息:

`rip.exe -r SOFTWARE -p soft_run` 

输出:

( 对于NTUSER.DAT配置单元,使用user_run插件) 那么这个命令是做什么的?%COMSPEC%cmd.exe的系统变量。使用cmd.exe在隐藏窗口中启动PowerShell。然后它使用PowerShell命令“Get-Item”获取另一个注册表项——HKLM:Software4MX64uqR和该项下的Dp8m09KD值。 查看HKLM:注册表资源管理器中的Software4MX64uqR键显示为一大段base64:另一种从注册表中获取像这样base64的方法是使用RegRipper的“sizes”插件。这将在注册表配置单元中搜索超过特定阈值的值并将其转储出去:

` rip.exe -r SOFTWARE -p sizes` 

要查看如何解码这个base64的详细步骤,请查看我之前关于解码恶意PowerShell脚本的博客文章

以下是对其进行解码的步骤:

1.在注册表项中解码unicode base64。
2.解码和解压(gzip)嵌入式base64 。
3.解码另一组嵌入式base64。
4.payload = shellcode。
5.尝试在shellcode上运行scdb.exe或字符串以获取IP地址和端口 

生成的代码通常是建立Meterpreter反向外壳的一种方法。在注册表中查找恶意PowerShell实例的另一种方法是在注册表中搜索“%COMSPEC%”。我使用 Registry Explorer和它的方便查找命令来做到这一点。确保并选择正确的“搜索”框:虽然此示例展示了一些随机名称的注册表项和值,但情况并总是这样。因为这些名称是可以根据攻击者修改,并且它们不会像随机名称那样显而易见。对于我的示例,我使用Metasploit在注册表中安装此持久性机制。检查所有可用的选项。如上所述,注册表项/值名称可以设置为任何内容:


  • blogger
分享本文至:

文章作者:Mr.刘 作者QQ:905690245
文章地址:http://www.blog.qixiwangluo.com/?post=165
版权所有 © 转载时必须以链接形式注明作者和原始出处!

发表评论:



如有侵犯您的版权请发送QQ邮件至905690245@qq.com

CopyRight 2018-2099 七夕云黑帽博客-专注互联网络安全.All rights reserved.

技术支持:攀枝花市七夕云网络