《Metasploit渗透测试手册》—第1章1.1节介绍

第1章 给安全专业人员的Metasploit快速提示
Metasploit渗透测试手册
本章讲解下述内容:

在Windows系统中配置Metasploit

在Ubuntu系统中配置Metasploit;

BackTrack 5与Metasploit 终极组合;

在单机上构建渗透测试环境;

在带有SSH连接的虚拟机上构建Metasploit环境;

从界面开始——Metasploit的“Hello World”;

在Metasploit框架中建立数据库;

使用数据库存储渗透测试结果;

分析数据库中存储的渗透测试结果。

1.1 介绍
Metasploit渗透测试手册
Metasploit是当前信息安全与渗透测试领域最流行的术语,完全颠覆了已有的渗透测试方式。Metasploit之所以如此受欢迎,是因为其所能执行的大部分任务可以简化渗透测试工作以使得系统更加安全。所有流行的操作系统都支持Metasploit,并且Metasploit框架在这些系统上的工作过程也几乎是一样的。本书中的内容和示例主要以BackTrack 5操作系统为基础,因为该操作系统预装有Metasploit及在其上运行的其他第三方工具。

首先介绍Metasploit框架及与其相关的各种术语。

Metasploit框架:H.D.Moore在2003年开发的一个免费的、开源的渗透测试框架,后来被Rapid 7公司收购。该框架目前的稳定版是使用Ruby语言开发的。Metasploit框架包含了世界上最大且经过测试攻击的代码数据库,每年下载量超百万。该框架也是迄今为止使用Ruby脚本语言构建的最复杂项目之一。

漏洞:系统中存在的可能被攻击者或渗透测试人员用以破坏系统安全性的弱点。漏洞可能存在于操作系统中、应用软件中,甚至存在于网络协议中。

漏洞利用代码:是攻击者或测试人员针对系统中的漏洞而设计的,用以破坏系统安全性的攻击代码。每个漏洞都有自己相应的攻击代码,Metasploit v4中包含超过700个针对不同漏洞的漏洞利用代码。

攻击载荷:完成实际攻击功能的代码,在成功渗透漏洞后会在系统上运行。攻击载荷最常见的用途是在攻击者和目标机器之间建立一个连接,Metasploit v4中包含超过250个实现不同攻击功能的攻击载荷。

模块:模块是组成完整系统的基本构建块。每个模块执行某种特定的任务,将若干模块组合成单独的功能主体可构成一个完整的系统。这种体系结构最大的优势在于,开发人员可以很容易地将新的漏洞利用代码和工具整合到Metasploit框架中。

Metasploit框架采用的是模块式体系结构,漏洞利用代码、攻击载荷、编码器等都可以视为单独的模块。下图展示了Metasploit的体系结构。

进一步解释上图的内涵。

Metasploit使用不同的库,这些库是保证Metasploit框架正确运转的关键。库实际上是预定义的任务、操作和功能的组合,框架中不同模块都可以使用这些库完成相应功能。Metasploit框架最基本的组成部分是Ruby扩展库(Rex),Rex提供的某些组件包含wrapper socket子系统、协议客户端与服务器、日志子系统、漏洞利用工具类及大量其他有用的类。Rex本身在设计上是独立的组件,不像有些组件需要默认的Ruby安装。

MSF Core库对Rex库进行了一些扩展,Core主要负责实现所有与漏洞利用模块、会话和插件的接口。这一核心库由框架的基础库进行扩展,可提供简单的用于处理框架核心功能的包裹器过程,同时也提供处理框架不同方面功能的工具类,例如对状态模块进行序列化以便适应不同的输出格式。最后,框架的用户接口(UI)对基础库进行了扩展,实现了对各种类型用户接口的支持,例如命令行控制台和Web界面。

Metasploit框架提供了4种不同的用户接口,分别是msfconsole、msfcli、msfgui及msfweb。强烈建议使用者熟练掌握这些接口,但在本书中主要介绍和演示的是msfconsole,原因在于msfconsole对Metasploit框架提供了最好的支持,对框架所有功能的发挥起到杠杆作用。

下面开始讲解本章的具体内容,并对多个方面进行示例演示。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

时间: 2024-08-03 14:28:03

《Metasploit渗透测试手册》—第1章1.1节介绍的相关文章

《Metasploit渗透测试手册》—第8章8.5节 将漏洞利用代码转换为Metasploit模块

8.5 将漏洞利用代码转换为Metasploit模块 Metasploit渗透测试手册 在前面的内容中已介绍了如何使用漏洞利用代码模块来攻陷目标机器.在本节中,我们将进一步拓展模块使用体验,尝试使用可用的概念验证代码开发完整的漏洞利用代码模块.为了将任意新的漏洞利用代码转换为框架中的模块,并在Metasploit团队进行更新之前使用其进行渗透测试,必须掌握将漏洞利用代码转换为模块的相关知识.并且,每个漏洞利用代码都以框架中模块形式存在也是不可能的,所以,下面学习怎样使用可用的POC来构建自己的漏

《Metasploit渗透测试手册》—第8章8.1节介绍

第8章 使用漏洞利用代码 Metasploit渗透测试手册 本章讲解下述内容: 探索模块结构: 常用的漏洞利用代码mixins: 使用msfvenom: 将漏洞利用代码转换为Metasploit模块: 移植并测试新的漏洞利用代码模块: 使用Metasploit进行模糊测试: 编写FileZilla FTP模糊测试器. 8.1 介绍 Metasploit渗透测试手册 首先介绍漏洞利用代码.漏洞利用代码(Exploit)是指利用某个软件中的漏洞或bug执行攻击者意图指令的软件代码.数据块或指令序列.

《Metasploit渗透测试手册》—第8章8.4节使用msfvenom

8.4 使用msfvenomMetasploit渗透测试手册在第4章中,我们曾提及过msfencode和msfpayload.现在简单回顾一下,msfpayload用于从攻击载荷中生成二进制文件,msfencode则用于使用不同编码技术对该二进制文件进行编码.现在要讨论的另一个Metasploit工具则结合了二者的功能,并在生成可隐蔽执行漏洞利用代码方面发挥重要作用. 准备要使用msfvenom,首先启动终端提示符窗口,键入msfvenom –h 命令. 怎样实现观察有哪些不同的可用选项. ro

《Metasploit渗透测试手册》—第8章8.2节 探索模块结构

8.2 探索模块结构Metasploit渗透测试手册理解漏洞利用模块的结构是非常重要的,因为这有助于对不同漏洞利用模块的正确分析.由于Metasploit框架是一个开源项目,其开发依赖于来自研究团体的贡献.来自全球的开发者们将各种漏洞利用代码的概念验证代码转换为Metasploit模块,以便为其他用户使用.读者也可以将新发现漏洞的利用代码转换为Metasploit模块,从而为Metasploit开发贡献力量.还有些时候需要利用不在Metasploit框架中的特定漏洞利用代码.掌握漏洞利用代码模块

《Metasploit渗透测试手册》—第3章3.1节介绍

第3章 操作系统漏洞评估与利用Metasploit渗透测试手册本章讲解下述内容: Exploit用法快速提示: 在Windows XP SP2上进行渗透测试: 绑定远程访问目标机器的shell: 在Windows 2003 Server上进行渗透测试: Windows 7/Server 2008 R2客户端无限循环漏洞: 对Linux(Ubuntu)机器进行攻击渗透: 理解Windows DLL注入漏洞. 3.1 介绍Metasploit渗透测试手册上章着重介绍了对目标机器的信息收集,包括目标I

《Metasploit渗透测试手册》—第1章1.8节在Metasploit框架中建立数据库

1.8 在Metasploit框架中建立数据库 Metasploit渗透测试手册 Metasploit的重要特点是包括用于存储渗透测试结果的数据库.渗透测试涉及大量信息,并且持续数天,因此存储中间结果是必要的.因此,好的渗透测试工具应该正确地整合数据库,以便快速高效地存储结果. 准备 默认情况下,Metasploit将自带的PostgreSQL作为基础数据库.在BackTrack上,还有另外一种选择,也就是MySQL数据库.用户可以使用这两种数据库中的任一种.我们先来看一下PostgreSQL数

《Metasploit渗透测试手册》—第8章8.3节常用的漏洞利用代码mixins

8.3 常用的漏洞利用代码mixins Metasploit渗透测试手册 Mixins是Ruby语言中应用广泛的一种机制,其作用是将一些功能放置到模块中,并使得Ruby这种单继承语言具备多继承的能力.在漏洞利用代码模块中使用mixins,有助于调用该漏洞利用代码所需的不同函数.在本节中,我们将学习一些重要的Metasploit exploit mixins. 怎样实现 下面快速浏览一些常用的exploit mixins,然后在现有的漏洞利用代码模块中了解其实现机理. Exploit::Remot

《Metasploit渗透测试手册》—第8章8.6节移植并测试新的漏洞利用代码模块

8.6 移植并测试新的漏洞利用代码模块 Metasploit渗透测试手册 在上节中学习了怎样使用可用的概念验证代码开发完整的Metasploit模块,本节中将把该模块保存到合适的位置,并测试其是否正常运转. 准备 了解漏洞利用代码模块要存储的文件夹位置是非常重要的,有助于追踪不同模块所在位置,同时也有助于Metasploit框架理解模块的基本用法.完整的模块脚本构建完成之后,在合适的位置将其保存. 怎样实现 由于上面开发的是漏洞利用代码模块,针对的目标是Windows操作系统,影响的是特定的文件

《Metasploit渗透测试手册》—第3章3.4节绑定远程访问目标机器的shell

3.4 绑定远程访问目标机器的shell Metasploit渗透测试手册 在前面内容中,分析了怎样对Windows SP2进行攻击渗透,并在其上添加新的用户账号,但是在执行该漏洞利用代码之后,连接也终止了.在本节中,将实现向目标机器绑定shell,以便建立与目标机器的远程连接并对其进行远程控制.工作过程和前面讲过的类似,使用不同的攻击载荷,执行后将在目标机器上打开远程连接shell. 准备 从启动msfconsole开始,目标与在Windows XP SP2上进行渗透测试的目标相同,使用的漏洞