Exp5
实验
实验1 - 直接攻击系统开启的漏洞服务,获取系统控制权
1.选择要使用的模块
-
在这里我选择的模块是ms08_067
-
首先我们需要查询一下有关ms08_067所在模块的相关信息
-
search ms08_067
-
可以发现,这是一个利用服务器服务进行攻击的漏洞,其路径为
exploit/windows/smb/ms08_067_netapi
-
根据路径提示使用ms08_067模块
-
use exploit/windows/smb/ms08_067_netapi
2.查看模块可攻击的操作系统
-
show target
-
选择的是0即可(一般默认为0)
-
set target 0
3.选择payload(攻击载荷)
-
查看payload选项
-
show payloads
-
我选择的是windows/exec
-
上图解释该payload为“Windows Execute Command”,初步猜测这个载荷是利用windows执行漏洞进行的攻击
-
使用SET命令设置payload为windows/exec
4.设置相关参数
-
因为中文版靶机IP地址与kali的不在一个网段(跟NAT与否无关,估计是虚拟机平台在不同电脑环境下的问题),所以最后尝试用英文版靶机做
(靶机IP:192.168.1.182 kali的IP:192.168.1.183) -
查看需要设置什么参数
-
其中我们需要设置的有RHOST(攻击IP(靶机IP))、CMD(待执行的命令串)和EXITFUNC(设置为seh的模式)
5.exploit尝试
第一次尝试
-
显示端口未打开,于是打算在xp上查看已开放了哪些端口(使用
netstat -an
命令) -
发现139端口开放,所以更改139为目标端口(命令:
set RPORT 139
) -
再次exploit
-
失败,提示SMB服务器拒绝服务
-
尝试在XP服务器开启SMB服务(参考),exploit仍失败,提示语相同
-
将payload换成generic/shell_bind_tcp,结果相同
-
问题暂时搁置
-
理想效果图如下(如果exploit成功的话):
-
(图片copy自简单测试使用msf发布poc)
6.换一台电脑环境继续尝试
-
这次靶机成功换成英文版的(IP地址终于相同了),payload换为generic/shell_recerse_tcp
-
168.88.147 靶机
-
168.88.130 kali
-
攻击成功
-
用同样的方式做payload为generic/shell_bind_tcp,攻击也成功了
-
payload换成windows/exec,攻击失败,提示与之前不同
实验2 - 针对浏览器的攻击
- 靶机:192.168.88.148(中文版)
- kali:192.168.88.130
- 过程同实验1,不同的是使用的模块和payload换了,过程如下
情况1:模块为ms11_050
情况2:模块为ms10_002
-
尝试1:模块用ms10_002_ie_object
-
尝试2:用ms10_002_aurora(方法同尝试1)(换成我的另一个电脑尝试)
-
攻击成功
实验3 - 针对客户端的攻击,如Adobe
- 攻击成功
成功应用任何一个辅助模块
-
我选择的是辅助模块里的
pdf/foxit/authbypass
模块,有关它的解释如下图(使用info auxiliary/pdf/foxit/authbypass
命令) -
其中第三个红方框里给出了它的解释
-
中文大致翻译:此模块利用1120版本的Foxit阅读器的授权旁路漏洞,当攻击者创建/打开/执行特制的pdf文件时,攻击者无需vic确认即可执行任意命令
-
也就是说,我们需要在xp虚拟机上下载一个1120版本的Foxit,通过在xp打开特制的pdf文件,达到攻击目的
-
生成特制pdf文件方法如下:
-
可以看到,我们设置CMD为计算器calc,也就是说在xp用1120版本的Foxit阅读器打开该特制文件后,会自动弹出一个calc计算器
-
我们将该特制pdf文件拷贝到xp上,点击打开该pdf,结果如下图
-
实践成功
实验后
基础问题回答
- 用自己的话解释什么是exploit,payload,encode.
- 答:
- exploit 渗透攻击模块 精确针对某个漏洞
- payload 攻击载荷 如meterpreter,被运输过去的东西
- encoder 编码器 避免“坏字符”
实践总结与体会
- 没想到在实验1的ms08_067模块、windows/exec载荷下没实现的攻击,在实验4辅助模块下实现了,心情复杂
- 离实战还缺很多步骤技术,感觉我这次的实验就像是捧着宝宝一样捧着我的两台电脑的各两台虚拟机,实战肯定不会这么简单的ORZ