Metasploit 快速入门(一)

时间:2020-09-09
本文章向大家介绍Metasploit 快速入门(一),主要包括Metasploit 快速入门(一)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Metasploit 快速入门(一)

参考:

https://mp.weixin.qq.com/s?__biz=MjM5MTYxNjQxOA==&mid=2652850523&idx=1&sn=38faa318148cf1c0bfa75ca84d9b114b&chksm=bd5935968a2ebc80fd07d10a83c72a465fe8beed36c05e8fdf3f0345ad9b6c8b9971f448b500&scene=21#wechat_redirect

框架和相关术语简介

Metasploit Framework;这是一个免费的、开源的渗透测试框架。它是使用Ruby语言编写的。它拥有世界上最大渗透测试攻击数据库。

Vunlerability:允许攻击者入侵或危害系统安全性的弱点称为漏洞,漏洞可能存在于操作心痛,应用软件设置网络协议中。

Exploit:攻击代码或程序,它允许攻击者利用易受攻击的系统并危害其安全。每个漏洞都有相对应的漏洞利用程序。

Payload:攻击载荷。它主要用于建立攻击者和受害机直接的连接。

Module:模块是一个完整的构件,每个模块执行特定的任务,并通过几个模块组成一个单元运行。这种架构的好处是可以容易的将自己写的利用程序和工具集成到架构中

Metasploit框架具有模块的体系结构

Metasploit提供两种不同的UI,msfconsole和WebUI,本文中主要使用msfconsole。因为msfconsole对metasploit支持最好,可以使用所有功能。

msf使用postgresql,所以需要开启服务

systemctl start postgresql && systemctl enable postgresql

ttl中输入msfconsole启动msf,输入db_status检查数据库连接情况

命令后带上 -h 参数查看命令具体信息

创建工作区

msf中有工作区的概念,可以用来隔离不同的渗透测试任务,从而避免混肴不同的测试。

默认工作区是default,输入workspace查看

msf5 > workspace
* default
msf5 > 

输入workspace -h 查看命令帮助

msf > workspace -h

Usage:

    workspace                  List workspaces

    workspace -v               List workspaces verbosely

    workspace [name]           Switch workspace

    workspace -a [name] ...    Add workspace(s)

    workspace -d [name] ...    Delete workspace(s)

    workspace -D               Delete all workspaces

    workspace -r <old> <new>   Rename workspace

    workspace -h               Show this help information

msf >

使用数据库

  1. 准备工作

    输入db_import,查看支持的文件类型

  2. 怎么做

    nmap -Pn -A -oX report 192.168.177.139,使用nmap将扫描结果以xml形式存储,可以直接在msf控制台中使用

  3. 导入到数据库

    db_import /root/report

host命令

数据库中有了数据,就可以使用hosts命令来显示当前工作区中存储的所有主机

services命令

services命令显示目标主机上可用的服务

search命令

search命令用来搜索相关的模块, 没有带参数表示匹配所有字段

search mysql type:exploit #查找mysql的攻击模块
search cve:2008 name:linux #查找linux cve2008库中漏洞
search path:shell type:payload platform:windows#查找平台为windows路径中包含shell的攻击载荷
search

show命令

  • show info

    显示当前模块的信息

  • show options

    显示当前模块所有可以设置的参数, 会回显

  • show missing

    显示当前为设置的必要参数

  • show payload/exploit/auxiliary

    同search,但是没有search好用

connect命令

连接目标主机, 发送请求

连接baidu.com 443端口发送get请求

connect -s -z baidu.com 443只连接不返回响应报文

其他命令

use命令

使用具体的模块, 一般配合search使用use <name|index>, 可是使用索引或是模块名

back命令

退出具体模块, 如果在模块中使用exit将退出msf

set命令

设置参数的具体内容

run命令

执行当前模块

原文地址:https://www.cnblogs.com/kikochz/p/13637133.html