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一样;

use exploit/windows/smb/ms

 

总结:

msfconsole是Metasploit最常用的界面。熟悉这些 msfconsole命令将在本课程中为您提供帮助,并为您一般处理Metasploit打下坚实的基础。

    A+
发布日期:2018年04月16日 19:03:31  所属分类:Metasploit
最后更新时间:2018-04-19 22:20:12
付杰
  • ¥ 388.0元
  • 市场价:388.0元
  • ¥ 15元
  • 市场价:15元
  • ¥ 159.0元
  • 市场价:398.0元
  • ¥ 298.0元
  • 市场价:899.0元

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: