十分抱歉,我居然没有在第一期粘出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?
这个后加入的模块功能比较特殊,我们会在接下来的课程里一块讲解,
所以,晚安。
同步记录我的所学,
只希望对需要的人有一点帮助。 /羞
来源:freebuf.com 2019-10-10 09:16:12 by: rabbitmask
请登录后发表评论
注册