"如果我有七个小时的时间来砍树,那么我一定会花6个小时来磨我的斧头。"

–Abraham Lincoln

??这句话一直引导着我做事的思路,而且从未改变过。这篇文章翻译自Offensive-security社区。我希望通过我的翻译能够让国内的安全人员能够有进一步的升华。当然,在翻译的时候我也加上了我自己的想法和一些注释。在我做渗透测试或者审计测试之前,我一般都会对我的Metasploit上面的工具和脚本进行升级和完善。中国有句俗话,养兵千日,用兵一时。我对Metasploit长达几个月的维护和升级,为的就是使用它的那一秒。

0×01 简介

Metasploit就是一个漏洞框架。它的全称叫做The Metasploit Framework,简称叫做MSF。Metasploit作为全球最受欢迎的工具,不仅仅是因为它的方便性和强大性,更重要的是它的框架。它允许使用者开发自己的漏洞脚本,从而进行测试。如果看完这篇文章,读者还是不懂Metasploit,那么可能需要在这个网站学习一些基础知识。戳我!

0×02 要求

在使用Metasploit之前,我们得确保自己的设备能够达到以下的要求,这些要求包括硬件和软件。

硬件:确保你的计算机或者VM都达到下面的要求。

硬盘空间: 如果你要使用Metasploit,首先你得确保你有10GB的储存空间。因为Metasploit会使用到一些大型文件。在分区的时候确保不是以FAT32类型进行分区。因为FAT32不支持大文件运行。我的建议是以NTFS,ext3或者其他类型进行分区。我的建议是你的使用空间最好有30GB。

内存:Kali对内存的建议做了很多解释,实际上只要你的内存值等于或者大于2GB就可以使用各个版本的Kali系统了。

处理器:官方系统解释到,只要处理器的处理速度大于或者等于400MHz就可以使用Kali系统。但是我建议最低为500MHz

网络设备:你可以使用cat5接口进行访问。请确保你的网络设备有DHCP,如果没有,那么请自己为你的kali分配IP。当然,你也可以用无线网络,但是请为你的无线网卡安装相对应的驱动。

软件:这里建议使用者安装两套操作系统。一台是kali系统,一台是受害者的系统或者测试系统。这样做的原因是能够方便安全人员做一下测试。

虚拟机:我们的建议是用虚拟机来运行kali系统。VMware Player可以说是最棒的选择。这个软件是免费的,用户只需要注册就能够使用。当然你也可以选择其他的虚拟机,但是我的建议就是VMware。

Kali Linux:在前面我也没介绍kali系统。先说说这个系统吧。Kali是以linux系统进行封装的。Kali系统的有点在于这个系统集合了大量的优秀的安全工具,同时还能对这些工具进行升级。其中也包含了Metasploit。Kali系统的下载地址是:http://www.kali.org/downloads/ 。如果你安装完了Kali系统,你可以打开控制窗口,使用以下命令对Kali系统进行升级。

升级指令:"apt-get update && apt-get upgrade"

Metasploitable系统:也许你遇到过很多linux系统,但是却不知道如何使用那些linux漏洞。幸运的是,Metasploit的开发团队也意识到了这个问题。他们制作出了Metasploitable系统。这个系统包含了大大小小的linux漏洞,十分适合做为测试系统。既能提高技术,同时也能够"自我意淫"一下。现在的Metasploitable已经有了第二套版本,下面是下载地址。

Metasploitable 2.0 下载地址—> 戳这里~

大家有一点需要注意。千万不要在公共WIFI或者你未知的网络环境下使用Metasploitable系统,以防遭到他人入侵。

这个测试系统下载下来后是zip格式的。解压后使用VM打开。如果是VMware的,直接打开用VMware打开Metasploitable.vmx文件即可。Metasploitable系统的默认账号和密码是msfadmin:msfadmin

下面是截图:

如果你想了解更多关于Metasploitable的信息,你可以去下面这个网站。

科普内容一或者科普内容二

0×03 Metasploit结构简介

先来看看下面的一张图。因为专业术语比较多,有些关键的名词我就不翻译,以防影响的文章的学术性和正确性。

系统文件和库

MSF的系统文件通过很直观的方式进行排列,并且通过目录的方式展现出来。下面我来说说各个目录的介绍。

data目录:里面存放一些可编辑的文件,主要是给Metasploit使用

documentation目录:提供一些MSF的介绍文档等

external目录:源文件和第三方的库

lib目录:MSF框架的主要组成部分

modules目录:MSF的模块存放位置

plugins目录:存放Metasploit的插件

scripts目录:存放Meterpreter代码(shell code)或者是其他的脚本文件

tools目录:各种各样实用的命令行工具

1. Rex库

1.1 最基础的组建

1.2 网络套接字、网络应用协议客户端与服务端实现、日志子系统等

1.3 SSL, SMB, HTTP, XOR, Base64, Unicode

2. Msf::Core库

2.1 提供了一些比较基础的API接口

2.2 为MSF的框架进行定义

3. Msf::Base

3.1 提供了一些额外的和简单的API接口

模块和位置

1. 主要的Metasploit模块位置在/usr/share/metasploit-framework/modules/目录下。

2. 用户设置的模块一般在~/.msf4/modules/

Metasploit对象模块

在MSF里面,所有的模块都是通过ruby语言进行编写的

0×04 结语

对于Metasploit的结构,msfcli的简介都了解的差不多了,在接下来的章节中我会具体给大家讲解msfcli的实战及理论。

玩转Metasploit系列(第一集)的更多相关文章

  1. 创芯Xilinx Microblaze 学习系列第一集

    创芯Xilinx Microblaze 学习系列第一集 Xilinx ISE Design Suite 13.2 The MicroBlaze™ embedded processor soft cor ...

  2. 玩转Metasploit系列(第二集)

    在上一节的内容中,大家了解了Metasploit的结构.这一节我们主要介绍的是msfconsole的理论. msfconsole理论 在MSF里面msfconsole可以说是最流行的一个接口程序.很多 ...

  3. .Neter玩转Linux系列之三:Linux下的分区讲解

    基础篇 .Neter玩转Linux系列之一:初识Linux .Neter玩转Linux系列之二:Linux下的文件目录及文件目录的权限 .Neter玩转Linux系列之三:Linux下的分区讲解 .N ...

  4. 第40章 CAN—通讯实验—零死角玩转STM32-F429系列

    第40章 CAN—通讯实验—零死角玩转STM32-F429系列   第40章     CAN—通讯实验 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视 ...

  5. 第25章 串行FLASH文件系统FatFs—零死角玩转STM32-F429系列

    第25章     串行FLASH文件系统FatFs 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.c ...

  6. NanUI for Winform 使用示例【第一集】——山寨个代码编辑器

    NanUI for Winform从昨天写博客发布到现在获得了和多朋友的关注,首先感谢大家的关注和支持!请看昨天本人的博文<NanUI for Winform发布,让Winform界面设计拥有无 ...

  7. WEBGL 2D游戏引擎研发系列 第一章 <新的开始>

    WEBGL 2D游戏引擎研发系列 第一章 <新的开始> ~\(≥▽≤)/~HTML5游戏开发者社区(群号:326492427) 转载请注明出处:http://html5gamedev.or ...

  8. Windows Phone开发(43):推送通知第一集——Toast推送

    原文:Windows Phone开发(43):推送通知第一集--Toast推送 好像有好几天没更新了,抱歉抱歉,最近"光荣"地失业,先是忙于寻找新去处,唉,暂时没有下文.而后又有一 ...

  9. [Linux] PHP程序员玩转Linux系列-备份还原MySQL

    1.PHP程序员玩转Linux系列-怎么安装使用CentOS 2.PHP程序员玩转Linux系列-lnmp环境的搭建 3.PHP程序员玩转Linux系列-搭建FTP代码开发环境 前几天有个新闻,说是g ...

随机推荐

  1. CSS的margin属性:详解margin属性

    在网上看到的一篇文章,说的比较全面.原文地址:http://www.poluoluo.com/jzxy/201206/167007.html 你真的了解margin吗? 你知道margin有什么特性吗 ...

  2. C# 获取SHA256码

    1. 如果是要获得某个字符串的SHA256,代码如下: public static string SHA256(string str) { //如果str有中文,不同Encoding的sha是不同的! ...

  3. 本地如何将svn和git管理的代码做关联

    svn和git都是广为流传的代码版本管理工具,实际项目中往往会将两者结合使用,那么如何将本地的一份代码和两者做有机的关联呢! 前提假设:项目已经在开发阶段中,此时变更了svn代码库的地址:或者是组里来 ...

  4. [javaEE] JDBC快速入门

    JDBC:Java Data Base Connectivity java数据库连接 1.组成JDBC的两个包:主要是接口 java.sql javax.sql 2.相应JDBC的数据库实现 在tom ...

  5. ThreadLocal介绍以及源码分析

    ThreadLocal 线程主变量 前面部分引用其他优秀博客,后面源码自己分析的,如有冒犯请私聊我. 用Java语言开发的同学对 ThreadLocal 应该都不会陌生,这个类的使用场景很多,特别是在 ...

  6. svn 未提交的显示黑色的星*

    1.在eclipse中,选择window-->Preferences,里面找到svn,如下图,勾选上Outgoing changes即可

  7. 怎么让textarea的光标靠左对齐

    1.怎么让textarea的光标靠左对齐: 把<textarea></textarea>之间空隙去掉就可以了. 2.怎么限制textarea的字数,利用maxlength属性限 ...

  8. 【代码笔记】Java常识性基础补充(三)——Java的API及Object类、正则表达式、getTime()方法、DateFormat类、Calendar类

    1.0 Java 的API(API: Application(应用) Programming(程序) Interface(接口)) 2.0 Java API就是JDK中提供给我们使用的类,这些类将底层 ...

  9. 将ReportingService 2008配置为匿名访问 - 转载

    众所周知在ReportingService 2008中微软取消了匿名访问,我们再也不能像2005时那样靠修改IIS来实现匿名访问了.但在微软MSDN BLOG中还是提供了以下这种设置匿名访问的方式. ...

  10. 多盟、Testin云测、K9test,助阵阿里云1218 移动开发者狂欢

    经过双十一.双十二全民剁手狂欢后,阿里巴巴旗下的云计算业务,也为IT程序员们打造一场独特的盛宴. 阿里云计算12月18日对旗下主力云计算产品进行打折促销,云服务商.风投机构等都将参与到这场狂欢中.“我 ...