Metasploit入门系列(二)——初识模块

十分抱歉,我居然没有在第一期粘出MSF的官方链接:

https://www.metasploit.com/

在这里你可以获得官方文档及其他帮助

官方文档中有大量API开发规范

这help是不是同感个性满分呢~

now !302强行跳转!开课 !

上图是对MSF架构的一个阐述(来源:安全牛)

这里简单解释一下:

Rex功能库实际来讲并不属于MSF,为什么这么讲呢?如HTTP/TELNET/SSH等连接功能严格来讲是属于操作系统自带的功能,MSF只是去以一个用户的身份去调用它而已;同理上述提到的编码功能。

Core库是真正属于MSF的最底层的库,其中包含的都是MSF框架的底层功能,如数据管理,session管理,插件管理这些核心底层功能。

Base库是在针对Core库进行进一步人性化的拓展的库,算作一个中间层,为开发者提供API以轻松调用MSF的功能,我们使用的各种插件,我们上期提到的console接口,还有收费版的UI界面,以及自己开发的插件,都是在base库的基础上进一步拓展的。

Plugin插件,这里提到的插件与我刚刚讲到的有略微差异,他这里提到的插件指的是成熟的工具/软件,如各种成熟的扫描器,老牌扫描厂商的存在,已经不需要MSF再去开发新的插件啦,直接调用就好啦。

对了,关于上一期我说到的msfupdate命令,可能有点不准确,

来,我们来一起分析下,给大家简单翻译一下:

MSF在作为操作系统的一部分的时候,不再支持msfupdate,请使用apt 方式。

然后怎么今天就行了!!!我承认换了台计算机!!!但是!!你说谎吧。。

哎,这个我有点懵,大家群里探讨下。

对了,安装时出的提示好有意味的说,我需要跟你确认三件事:尊重他人隐私,打字前思考一下,能力越大责任越大。

说的真的很棒,与君共勉。

我们继续。

虽然现在的MSF数据库不需要你启动啦

但是你有的时候会觉得自己的数据库被搞乱了,还是想整理一下

msfdb功能推荐给你,reinit参数用于重置数据库。这样的话msf相当于初始化

msf的根目录是/usr/share/metasploit-framework/

在根目录下我们可以从字面上就可以看到我们熟悉的功能

作为MSF的核心这里我们主讲的就是modules

给大家眼熟一下,对应的6个模块,正是我们加载时banner下的6个模块,

这也正是MSF强大的所在:拥有针对多种漏洞的多模块针对处理。

如果你手头的学习资料只提到了5大模块(POST模块后来加的),丢!

在讲模块之前,突然想给大家提两个小名词: 

通常 Exp 和 PoC 都是可执行的漏洞利用脚本/程序 ,

区别主要在于是否恶意,

PoC 是 Proof of Concept (概念验证) 通常是内含无害的漏洞代码,比如弹出一个计算器什么的

Exp  是 Exploit (漏洞利用) 通常是内含恶意的漏洞代码

我们现在着重看一下exploits和payloads的内容,当然啦,这里的exploits正是我们刚刚提到的exp

exp在msf中来讲,其实本身并没有恶意行为,只是它会调用恶意payloads来进行测试,

也就成为了大众心中的形象:exp=恶意漏洞利用。

exploits文件夹下我们可以看到针对各种漏洞做的分类,

payloads文件夹下我们可以看到三种payload类型,

来源安全牛的一张截图对我们刚刚文件夹下的singles/stagers/stages进行简单解释:

白话解释一下,

Single有点类似我们常说的大马,它不依赖任何环境或组件,只要它成功上传,它就可以实现它所有的功能。

stager有点类似我们常说的一句话,它只是用于建立连接。

stages完全是为了搭配前者使用,这时候出于黑客逻辑肯定会问,为什么不接着上传第一步的single,答:stages-payload的功能更倾向于底层,执行系统命令

换句话说,这些功能要由于Single,打个比方:你上传大马拿到webshell难道不需要进一步提权嘛,依然是要回归底层,如果从一开始就是底层,那还需要webshell吗?

(这一块是个人理解,如有不准确的地方,欢迎指正,提前感谢)

接下来简单提示介绍下其它几个模块的功能,不做展开讲解,具体使用是在详解。

那么,,唉?是不是还漏了一个模块:POST?

这个后加入的模块功能比较特殊,我们会在接下来的课程里一块讲解,

所以,晚安。

想必你们看到这篇文章已经是十月了。

所以,now,国庆快乐!


同步记录我的所学,

只希望对需要的人有一点帮助。 /羞

你可能感兴趣的:(Metasploit入门系列(二)——初识模块)