通过本篇文章,我们将会学习以下内容:
1、在Windows上安装Metasploit
2、在Linux和MacOS上安装Metasploit
3、在Kali Linux中使用 Metasploit
4、升级Kali Linux
5、使用虚拟化软件构建渗透测试实验环境
6、配置SSH连接
7、使用SSH连接Kali
8、配置PostgreSQL数据库
9、创建工作区
10、使用数据库
11、使用hosts命令
12、理解services命令
零、简介
Metasploit是目前世界上领先的渗透测试工具,也是信息安全与渗透测试领域最大的开源项目之一。它彻底改变了我们执行安全测试的方式。
Metasploit之所以流行,是因为它可以执行广泛的安全测试任务,从而简化渗透测试的工作。Metasploit 适用于所有流行的操作系统,本文中,主要以Kali Linux为主。因为Kali Linux预装了 Metasploit 框架和运行在框架上的其他第三方工具。
框架和相关术语简介:
Metasploit Framework:这是一个免费的、开源的渗透测试框架,由 H.D.Moore 在 2003 年发布,后来被 Rapid7 收购。当前稳定版本是使用 Ruby 语言编写的。它拥有世界上最大的渗透测试攻击数据库,每年超过100万次的下载。它也是迄今为止使用 Ruby构建的最复杂的项目之一。
Vulnerability:允许攻击者入侵或危害系统安全性的弱点称为漏洞,漏洞可能存在于操作系统,应用软件甚至网络协议中。
Exploit:攻击代码或程序,它允许攻击者利用易受攻击的系统并危害其安全性。每个漏洞都有对应的漏洞利用程序。Metasploit有超过 1700 个漏洞利用程序。
Payload:攻击载荷。它主要用于建立攻击者和受害者机器直接的连接,Metasploit有超过 500个有效攻击载荷。
Module:模块是一个完整的构件,每个模块执行特定的任务,并通过几个模块组成一个单元运行。这种架构的好处是可以很容易的将自己写的利用程序和工具集成到框架中。
Metasploit框架具有模块化的体系结构,exploits、payload、encoders都是独立的模块:
Metasploit提供两种不同的UI,msfconsole和WebUI,本书中主要使用msfconsole接口。因为msfconsole对Metasploit支持最好,可以使用所有功能。
一、在Windows上安装Metasploit
在Windows上安装Metasploit非常简单,直接从官方下载(http://www.metasploit.com/download).安装文件进行安装即可。
准备工作
Metasploit的四个版本:
Pro:适用于渗透测试人员和IT安全团队
Express:适用于一般IT人员
Community:适用于小公司和学生
Framework:适用于开发人员和安全研究人员
请从官网下载最新版的 Metasploit Framework
(https://windows.metasploit.com/metasploitframework-latest.msi) 它包含控制台程序和其他依赖程序。
如何安装
下载完之后,运行即可,它将自动安装相关所有组件。
Tip:在Windows上安装Metasploit时候,应该禁用防护软件,因为可能会检测到一些安装文件为恶意程序,从而阻止安装过程。安装完后将 Metasploit加入到防护软件的白名单。
二、在Linux和MacOS上安装Metasploit
通过以下快速安装脚本导入Rapid7签名密钥并为受支持的Linux和macOS系统设置程序包:
- curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && \
- chmod 755 msfinstall && \
- ./msfinstall
复制代码
软件包将集成到系统的包管理器中,可以使用 msfupdate 命令或包管理器进行更新。
安装过程差不多是这样的:
- bcook@localhost:~$ uname -a
- Linux localhost 3.14.0 #1 SMP PREEMPT Mon Feb 6 21:59:30 PST 2017 armv7l armv7l armv7l GNU/Linux
- bcook@localhost:~$ curl https://raw.githubusercontent.com/rapid7/metasploit-omnibus/master/config/templates/metasploit-framework-wrappers/msfupdate.erb > msfinstall && \
- > chmod 755 msfinstall && \
- > ./msfinstall
- % Total % Received % Xferd Average Speed Time Time Time Current
- Dload Upload Total Spent Left Speed
- 100 5394 100 5394 0 0 5609 0 --:--:-- --:--:-- --:--:-- 5607
- Switching to root user to update the package
- [sudo] password for bcook:
- Adding metasploit-framework to your repository list..OK
- Updating package cache..OK
- Checking for and installing update..
- Reading package lists... Done
- Building dependency tree
- Reading state information... Done
- The following NEW packages will be installed:
- metasploit-framework
- 0 upgraded, 1 newly installed, 0 to remove and 2 not upgraded.
- Need to get 148 MB of archives.
- After this operation, 358 MB of additional disk space will be used.
- Get:1 http://downloads.metasploit.com/data/releases/metasploit-framework/apt lucid/main armhf metasploit-framework armhf 4.13.23+20170217143300.git.1.85dca6a~1rapid7-1 [148 MB]
- Fetched 148 MB in 19s (7743 kB/s)
- Selecting previously unselected package metasploit-framework.
- (Reading database ... 28449 files and directories currently installed.)
- Preparing to unpack .../metasploit-framework_4.13.23+20170217143300.git.1.85dca6a~1rapid7-1_armhf.deb ...
- Unpacking metasploit-framework (4.13.23+20170217143300.git.1.85dca6a~1rapid7-1) ...
- Setting up metasploit-framework (4.13.23+20170217143300.git.1.85dca6a~1rapid7-1) ...
- update-alternatives: using /opt/metasploit-framework/bin/msfbinscan to provide /usr/bin/msfbinscan (msfbinscan) in auto mode
- update-alternatives: using /opt/metasploit-framework/bin/msfconsole to provide /usr/bin/msfconsole (msfconsole) in auto mode
- update-alternatives: using /opt/metasploit-framework/bin/msfd to provide /usr/bin/msfd (msfd) in auto mode
- update-alternatives: using /opt/metasploit-framework/bin/msfdb to provide /usr/bin/msfdb (msfdb) in auto mode
- update-alternatives: using /opt/metasploit-framework/bin/msfelfscan t
复制代码