| 关键词: PowerShell 调用 脚本 可以 exe 文件 命令 Windows SyncAppvPublishi system |
0x01 简介Windows PowerShell 是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework 的强大功能。由于 powershell 的特性,使得它很受渗透测试爱好者的喜爱,当然也催生了像 ASMI 之类的防御手段,当然各类杀软也是把它纳入了查杀行列中,只要你调用 PS 就会查杀,今天列举一些可以绕过其检测规则的一些姿势,主要可以粗略分为两大类,首先是绕过AV的检测规则,其次是换一个方式执行类似 PowerShell 的操作 0x02 绕过本地调用2.1 模糊搜索调用forfiles 是一款 windows 平台的软件工具,其中选择文件并运行一个命令来操作文件。命令说明符支持一些特殊的语法选项。它可以直接在命令行中使用,也可以在批处理文件或其他脚本中使用。 在 cmd 终端中,借用 forfiles 调用 powershell : 有需求的话,也可以同时添加 powershell 的指令参数,以实现不同的参数功能,这里以-c参数举例:2.2 编译命令程序用c++的system函数库去调用(待完善): 2.3 SyncAppvPublishingServerSyncAppvPublishingServer是win10自带的服务,有vbs和exe两个版本,我们可以使用他们来做一些类似PS的操作 默认存放在C:\Windows\System32下面: 2.4 调用MSBuildMSBuild是.Net框架中包含的工具,用于自动化创建软件产品的过程,包括编译源代码,打包,测试,部署和创建文档。Msbuild依赖于.csproj文件,该文件具有XML语法,包含了.NET构建过程中的结果 github上有此类项目:https://github.com/Cn33liz/MSBuildShell.git 执行完之后会获得一个交互式的PS: 2.5 调用cscript三好师傅:http://www.mottoin.com/detail/1961.html 0x03 非Powershell执行3.1 PowerLinePowerLine是一款由c#编写的工具,支持本地命令行调用和远程调用,可以在不直接调用PowerShell的情况下调用PowerShell脚本 下载地址:https://github.com/fullmetalcache/PowerLine 首先拉取项目到本地,然后运行build.bat文件: 然后在 UserConf.xml 文件中填写你所需要调用的 powershell 脚本的地址,默认自带 powerup、powerview、Mimikatz 等,只要按照他给定的格式加入你的 ps 脚本地址即可: 加入完成以后,运行 PLBuilder.exe 进行构建,构建过程中,360 无提示。查看内置的脚本 PowerLine.exe -ShowScripts: 3.2 PowerShdll这个工具主要使用 dll 去运行 powershell 而不需要去连接 powershell.exe ,所以具有一定的 bypassAV 能力,当然它也可以在这几个程序下运行 rundll32.exe, installutil.exe, regsvcs.exe, regasm.exe, regsvr32.exe 或者使用作者给出的单独的 exe 进行执行 下载地址:https://github.com/p3nt4/PowerShdll 3.3 NopowershellNoPowerShell 是用C#实现的工具,它支持执行类似PowerShell的命令,同时对任何PowerShell日志记录机制都不可见。同时也提供了CS下的cna脚本。 下载地址:https://github.com/bitsadmin/nopowershell 这里要注意一点的是,cs的cna脚本默认调用 scripts 下的文件,国内的cs大多为 script 目录,自行修改文件内的目录即可。 参考链接无powershell运行powershell方法总结 |
| 本文出处: https://www.cnblogs.com/-mo-/p/12692559.html |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|