Metasploit 使用MSFconsole接口
什么是MSFconsole?
该msfconsole可能是最常用的接口使用Metasploit框架(MSF)。它提供了一个“一体化”集中控制台,并允许您高效访问MSF中可用的所有选项。MSFconsole一开始似乎很吓人,但一旦学习了命令的语法,您将学会体会利用此接口的强大功能。
使用MSFconsole的好处:
- 它是访问Metasploit中大部分功能的唯一支持方式。
- 为框架提供基于控制台的界面
- 包含最多功能并且是最稳定的MSF界面
- 完整的readline支持,Tab键和命令完成
- 可以在msfconsole中执行外部命令:
msf > ping -c 1 192.168.1.100
[*] exec: ping -c 1 192.168.1.100
PING 192.168.1.100 (192.168.1.100) 56(84) bytes of data.
64 bytes from 192.168.1.100: icmp_seq=1 ttl=128 time=10.3 ms
--- 192.168.1.100 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 10.308/10.308/10.308/0.000 ms
msf >
启动MSFconsole
MSFconsole通过从命令行简单运行msfconsole启动。MSFconsole位于 /usr/share/metasploit-framework/msfconsole 目录中。
1、直接启动
root@kali:~# msfconsole
.,,. .
.\$$$$$L..,,==aaccaacc%#s$b. d8, d8P
d8P #$$$$$$$$$$$$$$$$$$$$$$$$$$$b. `BP d888888p
d888888P '7$$$$\""""''^^`` .7$$$|D*"'``` ?88'
d8bd8b.d8p d8888b ?88' d888b8b _.os#$|8*"` d8P ?8b 88P
88P`?P'?P d8b_,dP 88P d8P' ?88 .oaS###S*"` d8P d8888b $whi?88b 88b
d88 d8 ?8 88b 88b 88b ,88b .osS$$$$*" ?88,.d88b, d88 d8P' ?88 88P `?8b
d88' d88b 8b`?8888P'`?8b`?88P'.aS$$$$Q*"` `?88' ?88 ?88 88b d88 d88
.a#$$$$$$"` 88b d8P 88b`?8888P'
,s$$$$$$$"` 888888P' 88n _.,,,ass;:
.a$$$$$$$P` d88P' .,.ass%#S$$$$$$$$$$$$$$'
.a$###$$$P` _.,,-aqsc#SS$$$$$$$$$$$$$$$$$$$$$$$$$$'
,a$$###$$P` _.,-ass#S$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$####SSSS'
.a$$$$$$$$$$SSS$$$$$$$$$$$$$$$$$$$$$$$$$$$$SS##==--""''^^/$$$$$$'
_______________________________________________________________ ,&$$$$$$'_____
ll&&$$$$'
.;;lll&&&&'
...;;lllll&'
......;;;llll;;;....
` ......;;;;... . .
=[ metasploit v4.16.8-dev ]
+ -- --=[ 1684 exploits - 964 auxiliary - 299 post ]
+ -- --=[ 498 payloads - 40 encoders - 10 nops ]
+ -- --=[ Free Metasploit Pro trial: http://r-7.co/trymsp ]
msf >
2、通过-q选项通过在安静模式下启动msfconsole来删除启动横幅。
root@kali:~# msfconsole -q
msf >
如何使用命令提示符?
您可以将-h传递给msfconsole以查看可用的其他使用选项。
root@kali:~# msfconsole -h
用法:msfconsole [选项]
通用选项
-E, --environment ENVIRONMENT 如果已设置,将使用RAIL_ENV环境变量。如果两个选项都不是RAILS_ENV环境变量,则默认为生产。
数据库选项
-M,--migration-path DIRECTORY 指定包含其他数据库迁移的目录
-n,--no-database 禁用数据库支持
-y,--yaml PATH 指定一个包含数据库设置的YAML文件
框架选项
-c FILE 加载指定的配置文件
-v,--version 显示版本
模块选项
--defer-module-loads 延迟模块加载,除非明确询问。
-m,--module-path DIRECTORY 附加模块路径
控制台选项:
-a,--ask 在退出Metasploit之前询问或接受“exit-y”
-H,--history-file FILE 将命令历史保存到指定的文件
-L,--real-readline 使用系统Readline库而不是RbReadline
-o,--output 将文件输出到指定的文件
-p,--plugin PLUGIN 在启动时加载插件
-q,--quiet 不要在启动时打印横幅
-r,--resource FILE 执行指定的资源文件( - 用于stdin)
-x,--execute-command COMMAND 执行指定的字符串作为控制台命令(使用;用于multiples)
-h,--help 显示此消息
一旦在msf命令提示符下输入help或?将显示可用命令的列表以及它们用于的内容的描述。
msf > help
核心命令
=============
? 帮助菜单
banner 显示一个真棒metasploit横幅
cd 更改当前的工作目录
color 切换颜色
connect 连接与主机通信
exit 退出控制台
get 获取特定于上下文的变量的值
getg 获取全局变量的值
grep grep另一个命令的输出
help 帮助菜单
history 显示命令历史
irb 进入irb脚本模式
load 加载一个框架插件
quit 退出控制台
route 通过会话路由流量
save 保存活动的数据存储
sessions 转储会话列表并显示有关会话的信息
set 将特定于上下文的变量设置为一个值
setg 将全局变量设置为一个值
sleep 在指定的秒数内不做任何事情
spool 将控制台输出写入文件以及屏幕
threads 线程查看和操作后台线程
unload 卸载框架插件
unset 取消设置一个或多个特定于上下文的变量
unsetg 取消设置一个或多个全局变量
version 显示框架和控制台库版本号
模块命令
===============
advanced 显示一个或多个模块的高级选项
back 从当前上下文返回
edit 使用首选编辑器编辑当前模块
info 显示有关一个或多个模块的信息
loadpath 路径从路径搜索并加载模块
options 显示全局选项或一个或多个模块
popm 将最新的模块从堆栈中弹出并使其处于活动状态
previous 将之前加载的模块设置为当前模块
pushm 将活动或模块列表推入模块堆栈
reload_all 从所有定义的模块路径重新加载所有模块
search 搜索模块名称和描述
show 显示给定类型的模块或所有模块
use 按名称选择模块
工作命令
============
handler 作为作业启动负载处理程序
jobs 显示和管理作业
kill 杀死一个工作
rename_job 重命名作业
资源脚本命令
========================
makerc 保存从开始到文件输入的命令
resource 运行存储在文件中的命令
数据库后端命令
=========================
db_connect 连接到现有的数据库
db_disconnect 断开与当前数据库实例的连接
db_export 导出包含数据库内容的文件
db_import 导入扫描结果文件(文件类型将被自动检测)
db_nmap 执行nmap并自动记录输出
db_rebuild_cache 重建数据库存储的模块高速缓存
db_status 显示当前的数据库状态
hosts 列出数据库中的所有主机
loot 列出数据库中的所有战利品
notes 列出数据库中的所有笔记
services 列出数据库中的所有服务
vulns 列出数据库中的所有漏洞
workspace 在数据库工作区之间切换
凭证后端命令
============================
creds 列出数据库中的所有凭据
Tab完成(标签完成/选项卡完成)
msfconsole被设计为可以快速使用,并且有助于实现此目标的功能之一是制表符完成。
有了各种可用的模块,可能很难记住您希望使用的特定模块的确切名称和路径。
与大多数其他shell一样,输入你知道的内容并点击'Tab'将会给你一个你可用的选项列表,或者只有一个选项时自动完成字符串。
选项卡完成取决于ruby readline扩展,并且控制台中的几乎每个命令都支持选项卡完成。
- use exploit/windows/dce
- use .*netapi.*
- set LHOST
- show
- set TARGET
- set PAYLOAD windows/shell/
- exp
msf > use exploit/windows/smb/ms
//运行上面命令再敲Tab键,会弹出下面供你选择,然后再输入,再敲Tab键会自动补齐,跟linux一样;
总结:
msfconsole是Metasploit最常用的界面。熟悉这些 msfconsole命令将在本课程中为您提供帮助,并为您一般处理Metasploit打下坚实的基础。
转:https://www.fujieace.com/metasploit/msfconsole.html
Metasploit 使用MSFconsole接口的更多相关文章
- Metasploit渗透测试魔鬼训练营
首本中文原创Metasploit渗透测试著作,国内信息安全领域布道者和资深Metasploit渗透测试专家领衔撰写,极具权威性.以实践为导向,既详细讲解了Metasploit渗透测试的技术.流程.方法 ...
- Kali-linux使用Metasploit基础
Metasploit是一款开源的安全漏洞检测工具.它可以帮助用户识别安全问题,验证漏洞的缓解措施,并对某些软件进行安全性评估,提供真正的安全风险情报.当用户第一次接触Metasploit渗透测试框架软 ...
- 《Metasploit渗透测试魔鬼训练营》第一章读书笔记
第1章 魔鬼训练营--初识Metasploit 20135301 1.1 什么是渗透测试 1.1.1 渗透测试的起源与定义 如果大家对军事感兴趣,会知道各国军队每年都会组织一些军事演习来锻炼军队的攻防 ...
- Metasploit 使用简介
Metasploit Framework 是非常优秀的开源渗透测试框架,像我这样的菜鸟刚刚听说,于是花时间好好研究了一下,整理了一下学习笔记,贴出来和大家一起交流.第一次写文章又不足的地方大家多多指点 ...
- metasploit 一款开源的渗透测试框架
渗透神器漏洞利用框架metasploit from: https://zhuanlan.zhihu.com/p/30743401 metasploit是一款开源的渗透测试框架软件也是一个逐步发展与成熟 ...
- [转]初探Metasploit的自动攻击
1. 科普Metasploit 以前只是个Back Track操作系统(简称:BT) 下的攻击框架,自成继承了后攻击渗透模块,隐隐有成为攻击平台的趋势. 我们都戏称它为美少妇,很简单,msf. 它 ...
- 移动安全初探:窃取微信聊天记录、Hacking Android with Metasploit
在这篇文章中我们将讨论如何获取安卓.苹果设备中的微信聊天记录,并演示如何利用后门通过Metasploit对安卓设备进行控制.文章比较基础.可动手性强,有设备的童鞋不妨边阅读文章边操作,希望能激发大家对 ...
- Metasploit中数据库的密码查看以及使用pgadmin远程连接数据库
我们都知道,在msf下进行渗透测试工作的时候,可以将结果数据保存到数据库中,方便各个小组成员在渗透测试过程中的数据同步. 例如,Metasploit提供了db_nmap命令,它能够将Nmap扫描结果直 ...
- (转)获取安卓iOS上的微信聊天记录、通过Metasploit控制安卓
在这篇文章中我们将讨论如何获取安卓.苹果设备中的微信聊天记录,并演示如何利用后门通过Metasploit对安卓设备进行控制.文章比较基础.可动手性强,有设备的童鞋不妨边阅读文章边操作,希望能激发大家对 ...
随机推荐
- mysql注入篇
博客这个东西真的很考验耐心,每写一篇笔记,都是在艰难的决定中施行的,毕竟谁都有懒惰的一面,就像这个,mysql注入篇,拖拖拖一直拖到现在才开始总结,因为这个实在是太多太杂了,细细的总结一篇太烧脑. 由 ...
- Http头域字段详解
HTTP(HyperTextTransferProtocol) 是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2616.HTTP协议采用了请求/响应模型.客 ...
- 记Selenium HTMLTestRunner 无法生成测试报告的总结
使用Python ,HTMLTestRunner 生成测试报告时,遇到很奇怪的问题,明明运行的结果,没有任何报错,就是不生成测试报告,纠结好久.google+baidu搜索结果也不满意,最后终于解 ...
- C++之宏定义实现两个数最值
转自:https://blog.csdn.net/baidu_33725271/article/details/69478782 方法一: 利用三重条件运算符 #include <stdio.h ...
- UVA 356 - Square Pegs And Round Holes
题目:在一个2n*2n的网格中间画一个直径为2n-1的圆,问圆内部的格子以及和圆相交的格子个数. 思路:只要考虑1 / 4圆的点就行,用点到原点距离与半径比较,当格子左下方和右上方都在格子里时,格子在 ...
- pcre2 正则库
\S+ 不能匹配到字符串末尾的最后一个字段
- 拾遗:Git 与 Svn hook 不执行问题
要点: GIT 或 SVN 的 hook 执行之前,会将所有环境变量清空,因此在其中执行命令时,必须指定绝对路径或重新设置必要的环境变量,如:$HOME 等 修改为正确的名称,如:post-commi ...
- PostgreSQL——服务器配置_{postgresql.conf}
一.设置参数 所有参数名称都是不区分大小写的 值为字符串时,需要单引号 值为数值时不需要单引号,但带单位时,需要单引号 配置文件(如:postgresql.conf.postgresql.auto.c ...
- PhotoShop的10大误区
一.使用错误的图像模式 操作菜单变成灰色?颜色看起来不对劲?当你遇到这些问题的时候,应该停下来,不要再编辑.这些可 能就是使用错误的图像模式而引起的问题.在主菜单中选择“图像>模式”,在这里确保 ...
- Centos 能ping通域名和公网ip但是网站不能够打开,服务器拒绝了请求。打开80端口解决。
博客搬迁,给你带来的不便,敬请谅解! http://www.suanliutudousi.com/2017/10/29/centos-%E8%83%BDping%E9%80%9A%E5%9F%9F%E ...