欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Metasploit 新手指南(一)

程序员文章站 2022-07-15 13:42:29
...

一、Metasploit 简介

Metasploit是一款开源的安全漏洞检测工具,几乎所有流行的操作系统都支持Metasploit工具,因此安全工作人员常用Metasploit工具来检测系统的安全性。Metasploit Framework (MSF) 在2003年以开放源码方式发布,它是一个强大的开源平台,供开发,测试和使用恶意代码,同时这个环境为渗透测试、shellcode 编写和漏洞研究提供了一个可靠平台。

二、Metasploit 下载安装

Windows安装:安装程序可以从官网进行下载:https://www.metasploit.com/download
安装时需要注意的有两点:
1、由于Metasploit存在各种攻击载荷,所以在安装的时候要关闭杀毒软件。否则的话会导致杀毒软件和metasploit冲突,导致安装失败。
2、若安装过程中出现失败,在控制面版——区域和语言选项——选择英文(美国)——高级选项卡中选择英文(美国),因为在安装的时候,会进行检测,如果属于非英文地区会导致安装失败。
Linux安装:由于kail linux 上已经预安装完成,(没有则可以在官网上选择对应的Linux版本下载),所以可以直接在控制台使用:
Metasploit 新手指南(一)

三、Metasploit 常用参数

在metasploit控制台输入help可以查看所有的参数:
Metasploit 新手指南(一)
接下来我们来认识一些经常用到的参数,以下介绍的参数都可以 xx -h 看到参数详细信息:
1、search参数:它可以搜索到你 metasploit 存在的利用模块
Metasploit 新手指南(一)
2、use参数:你想利用某个 Payload或者某个模块都要用到 use 参数,其后面可以直接加上你想利用的payload或模块的名称或序号:
Metasploit 新手指南(一)
3、show options 参数:它可以看到利用模块的设置信息
Metasploit 新手指南(一)

4、info 参数:它可以看到模块的所有的详细介绍信息
Metasploit 新手指南(一)

5、set 参数:它是设置 Basic targets 选项
Metasploit 新手指南(一)

6、back参数:如果你想重新选择一个新的利用模块那么就要用 back 返回
Metasploit 新手指南(一)

7、exit 参数:exit 和 back 一样一个是返回,一个是退出
Metasploit 新手指南(一)

四、在Metasploit 框架中建立数据库

Metasploit的重要特点是包括用于存储渗透测试结果的数据库;渗透测试涉及大量的信息,并且持续数天,因此存储中间结果是必要的。
1、首先在进入Metasploit控制台时开启postgresql数据库
Metasploit 新手指南(一)
2、进入控制台:msfconsole查看数据库是否连接:
db_status 参数:它是查看是否连接 postgresql 数据库

msf6 > db_status 
[*] postgresql selected, no connection
msf6 > 
 3、如果没有连接,则我们需要用其它参数来链接它,新版本的数据库密码要自己设置:
aaa@qq.com:~# msfdb init
[+] Starting database
[i] The database appears to be already configured, skipping initialization
aaa@qq.com:~# cd /usr/share/metasploit-framework/config/
aaa@qq.com:/usr/share/metasploit-framework/config# cat database.yml
development:
  adapter: postgresql
  database: msf
  username: msf
  password: L9J6XxttZwt1tFfiSJRPSyvgRv97Ve8E88NZGtE3NIA=
  host: localhost
  port: 5432
  pool: 5
  timeout: 5

production:
  adapter: postgresql
  database: msf
  username: msf
  password: L9J6XxttZwt1tFfiSJRPSyvgRv97Ve8E88NZGtE3NIA=
  host: localhost
  port: 5432
  pool: 5
  timeout: 5

test:
  adapter: postgresql
  database: msf_test
  username: msf
  password: L9J6XxttZwt1tFfiSJRPSyvgRv97Ve8E88NZGtE3NIA=
  host: localhost
  port: 5432
  pool: 5
  timeout: 5
aaa@qq.com:/usr/share/metasploit-framework/config# 

4、使用db_connect 参数连接数据库:
格式为:db_connect 账号:密码@localhost:5432/数据库名称

msf6 > db_connect msf:L9J6XxttZwt1tFfiSJRPSyvgRv97Ve8E88NZGtE3NIA=@localhost:53432/postgresql
msf6 > db_status 
[*] Connected to msf. Connection type: postgresql.

5、删除数据库:

msf6 > db_disconnect msf:L9J6XxttZwt1tFfiSJRPSyvgRv97Ve8E88NZGtE3NIA=@localhost:53432/postgresql