metasploit

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信息系统安全结课报告Metasploit的使用

姓名:曹晨业

学号:U200915352

班级:信息安全0903

选题背景:

在学习信息系统应用安全时发现了一款名字为Metasploit的渗透测试软件。它可以搜索系统漏洞,进行溢出攻击等,通过一段时间的摸索、参考网络教程和查阅相关书籍,对Metasploit 的使用有一些体会,在此简单的对Metasploit的使用做一些介绍。

实验环境

操作系统:windows 7 、windows XP、VMware虚拟机、ubunta 10.04 lts

使用软件:Metasploit

Matesploit简介:

Metasploit介绍:

Metasploit是同HD Moore 和Spoonm等4名年轻人开发的,这款免费软件可以帮助黑客攻击和控制计算机,安全人员也可以利用Metasploit来加强系统对此类工具的攻击。Metasploit 的演示吸引了来自“美国国防部”和“国家安全局”等政府机构的众多安全顾问和个人,正如Spoonm在演讲中所说的, Metasploit很简单,只需要求“找到目标,单击和控制”即可。2004年Metasploit的发布在安全界引发了强烈的“地震”。没有一款新工具能够一发布就能挤进此列表的15 强(也就是说,2000年和2003年的调查没有这种情况),更何况此工具在5强之列,超过很多广为流传的诞生了几十年的老牌工具。

Metasploit Framework (MSF) 在2003年以开放源码方式发布,是可以自由获取的开发框架。它是一个强大的开源平台,供开发,测试和使用恶意代码,这个环境为渗透测试,shellcode 编写和漏洞研究提供了一个可靠平台。

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

这种可以扩展的模型将负载控制(payload)、编码器(encode)、无操作生成器(nops)和漏洞整合在一起,使Metasploit Framework 成为一种研究高危漏洞的途径。它集成了各平台上常见的溢出漏洞和流行的shellcode,并且不断更新。

目前的版本收集了数百个实用的溢出攻击程序及一些辅助工具,让人们使用简单的方法完成安全漏洞检测,即使一个不懂安全的人也可以轻松的使用它。当然,它并不只是一个简单的收集工具,提供了所有的类和方法,让开发人员使用这些代码方便快速的进行二次开发。其核心中一小部分由汇编和C语言实现,其余由ruby实现。不建议修改汇编和C语言部分。

Metasploit的功能:

Metasploit渗透测试框架主要包含3功能模块:msfconsole、msfweb、msfupdate。msfupdate 用于软件更新,建议使用前先进行更新,可以更新最新的漏洞库和利用代码。msfconsole是

整个框架中最受欢迎的模块,个人感觉也是功能强大的模块,所有的功能都可以该模块下运行。msfweb是Metasploit framework的web组件支持多用户,是Metasploit图形化接口。msfconsole是MSF中最主要最常用的功能组件,使用集成化的使用方法,可以使用MSF中的所有命令和模块,支持很多其它接口方式不支持的功能。

msfconsole主要有以下特点:

支持命令完成功能(tab键)

支持外部命令执行(可以执行系统命令)

如下为使用ping命令:

使用流程:

help命令:

和其它基于命令行的程序一样,使用?或者help可以显示MSF所支持的命令,如下为MSF 内置的全部命令:

show命令

在msfconsole中键入show,系统会显示Metasploit的所有模块,若想显示某一类型的模块可以加入模块名称,最常用的主要有一下三个:show payloads、show exploits、show auxiliary。show auxiliary显示Metasploit中的可用辅助模块列表,这些辅助模块包括scanner、dos、fuzzer 等

show exploits 显示Metasploit中包含的所有可以利用的攻击类型列表。

show payloads 显示Metasploit中可以在不同平台中可以在远程主机执行的代码,即shellcode。注:在使用具体的exploit时,只显示该平台支持的payload,例如:在使用ms08-067时,只显示windows平台可以使用的payload。

show options 显示可利用模块exploit的设置、条件、描述等。

show targets 显示可利用模块exploit支持的目标类型(操作系统、软件版本等)。

show advanced 显示可利用模块exploit高级信息,自定义利用程序时使用。

show encoders 显示可利用模块exploit的编码方式。

search命令

search 命令是最常用的命令之一,用于查找各种exploit、payload、auxiliary等,命令支持基于正则表达式的模糊查询。

info命令

info用于显示特殊模块的详细信息,显示内容包括该模块的选项、目标及其它信息。

use命令

use命令用于使用特殊的模块,如利用程序、shellcode或辅助模块等。

conect命令

connect命令可以连接到远程主机,连接方式和nc、telnet相同,可以指定端口。

set命令

set命令用于当前使用模块的选项和设置参数。

set payload xxx/xxx z设置溢出代码

set encoder xxx/xxx 设置利用程序编码方式

set target xxx 设置目标类型

set xxx xxx设置参数

check命令

部分exploit支持check命令,该命令用于检测目标系统是否存在漏洞,而不是进行溢出操作。

设置全局变量

Metasploit支持设置全局变量并可以进行存储,下次登录时直接使用。设置全局变量使用setg 命令,unsetg撤销全局变量,save用于保存全局变量。

exploit/run命令

设置好各个参数后,可以使用exploit命令执行溢出操作,当使用了自定义auxiliary参数时,需要用run命令执行操作。

resource命令

resource命令可以加载资源文件,并按顺序执行文件中的命令。

irb命令

运行irb命令,进入irb脚本模式,可以执行命令创建脚本。

Metasploit的攻击方法:

使用的版本共有635种溢出(exploit)模块,314种辅助(auxiliary)模块,215种加载(payload)

相关文档
最新文档