首页
社区
课程
招聘
[翻译]有志之士的Metasploit,第一部分(引子与概观)
发表于: 2018-3-7 10:43 8721

[翻译]有志之士的Metasploit,第一部分(引子与概观)

2018-3-7 10:43
8721

原文链接

作者: OCCUPYTHEWEB

译者:阳春

翻译时间:2018/3/6

译者注:这是Metasploit的一系列使用教程,我打算逐篇翻译。另,转载请注明作者、译者以及出处。


欢迎回来,各位菜鸡同志们!

我已经写了许多使用Metasploit进行攻击的教程,包括《不留痕迹》和《内部架构探索》。此外,还有我的Metasploit命令攻击脚本备忘单。

这期开始,我将依序渐进开写一个学习和使用Metasploit的系列。第一部分涵盖对新手来说Metasploit非常基础的知识,其它人就当复习了。请记住一件事情,这对地球上最强大的黑客平台之一来说是迅速而肮脏的第一课。

2003年,HD Moore开发了开源项目Metasploit。

2007年,Metasploit使用Ruby重构,原本用的是Perl。

2009年,Rapid7买下了它,这是一家生产了漏洞扫描器Nexpose的信息安全公司。

Metasploit当前版本是4.9.3,Kali Linux默认安装。BackTrack里也有。如果你们使用其它版本的Linux或者Unix(包括Mac OS),可以去Rapid7官网下载。

Windows使用者也可以从Rapid7获取Windows版本,不过我不建议在Windows上使用Metasploit。因为虽然可以下载安装,但是有些攻击框架的功能没能移植到Windows上,而且我在Null Byte这里的很多攻击方式也没法工作在Windows上。


Metasploit现有多种产品,包括Metasploit Pro(完整商业版)和社区版本(内建于Kali并且一直免费)。我们将专注于社区版本,并且我觉得你们大部分人不需要购买价值30,000美刀的Pro版本。

有几种方式可以访问Metasploit。最通常的方式,也是我使用的方式,是通过Metasploit交互控制台。在Kali的命令行中输入msfconsole即可使用。以下是其它的方式:

首先,你可以从命令行使用Metasploit,即msfcli模式。看起来我们只是在控制台下使用命令行,实际上我们正使用着一个有特殊关键字和命令支持的交互对话框。通过msfcli,我们是真的在使用Linux命令行。

我们可以通过以下命令进入帮助页面:

kali > msfcli -h


现在从msfcli开始执行漏洞攻击程序(exploit),形式很简单:

kali > msfcli <the exploit> payload = <the payload> rhost = <IP> lhost = <IP> E

要执行的程序(execute)简写E。

在我的教程《创建免杀payloads》中,我们在命令行模式(msfcli)下使用msfencode和msfpayload命令。

使用msfcli的缺点在于它不像msfconsole有良好的支持,并且你只能用单条指令(shell),执行一些复杂的漏洞攻击程序(exploits)就不太可能了。

如果你想通过图形界面使用Metasploit,那么你有好几个选择。首先是Raphael Mudge开发的Armitage(想必是指开创性网络黑客科幻小说Neuromancer的主角,这是一本所有黑客都必读的科幻小说)。

在Kali启动Armitage,简单键入:

kali > armitage


如果Armitage连接失败,尝试以下替代命令:

kali > service start postgresql

kali > service start metasploit

kali > service stop metasploit


Armitage是基于C/S架构的Metasploit图形界面。启动Metasploit作为服务端,Armitage作为客户端,你就有了一个可以使用Metasploit完整功能的完整——但不是完全直观——图形界面。也许你真的需要一个图形界面才能觉得舒服,我也不鄙视你们使用图形界面,但是精通命令行对一个自我尊重的黑客来说是很必要的。


Metasploit有六种不同类型的模块。分别是:

Payloads 指的是入侵一个系统后留在那里的代码。一些人称之为监听器、rootkits之类的。在Metasploit里面,叫playloads。这些payloads包括命令行工具,Meterpreter等等。payloads的类型有staged,inline,NoNX(绕过某些现代CPU的不可执行特性),PassiveX(绕过防火墙的限制出站规则),IPv6等等。

Exploits 指的是利用系统漏洞或者缺陷的攻击程序。它们针对特定的操作系统,而且经常是特定的SP(service pack),特定的服务,特定的端口,甚至特定的应用程序。它们按操作系统分类,所以Windows exploits无法用于Linux,反之亦然。


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2019-2-1 18:43 被admin编辑 ,原因: 图片本地化
收藏
免费 1
支持
分享
最新回复 (2)
雪    币: 26225
活跃值: (63302)
能力值: (RANK:135 )
在线值:
发帖
回帖
粉丝
2
感谢分享!
2018-3-7 10:59
0
雪    币: 216
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
ky
2019-8-29 02:09
0
游客
登录 | 注册 方可回帖
返回
//