目录
一、metasploit 简介
二、 基本使用
三、 使用 encoders
四、pivot 技术
一、metasploit 简介
Metasploit 是一款开源的安全漏洞检测工具,集成了丰富的渗透测试工具,深受安
全工作者喜爱。官方网站:www.metasploit.com
本案例将以图例的方式讲述 metasploit 的基本使用方法以及具体的应用技巧。
二、 基本使用
1.启动界面
2.寻找特定的模块:在 metasploit 内部可以通过 search 命令来搜索特定的模块
3.使用特定的模块:
4.查看可用 payloads:通过 show 命令可以查看可用的 payloads,encoders,以及更加详细的设置参数等信息
5.选择使用特定的 payload:
6.总结起来,使用 metasploit 的基本方法:
Use exploit_path_name
Set parameters
Set payload payload_name & parameters.
Exploit
三、 使用 encoders
在具有 IDS 等防护设备的环境中,使用普通的溢出代码极易被 IDS 所察觉,从而暴露攻击。所幸的是,metasploit 提供了一系列的 encoders 可供使用。可以实时的动态的对所用 payload 进行加密,从而达到逃避检测的目的。
1.查看可用 encoders:
2.结合攻击模块使用 encoder:
4.
4.例举 msfpayload 将 payload meterpreter 生成 PE 格式的可执行文件:
5.从帮助信息中可以看到,msfpaylod 可以生成 RAW 格式,那么我么可以使用一个管道将生成的代码使用 msfencode 进行加密,从而逃避 av 检测。 首先看一下 msfencode 的帮助信息:
6.例举通过 msfpayload 结合 msfencode 生成加密的可执行文件
四、pivot 技术
我们时常碰到这样的情况,费尽千辛万苦之后得到一台主机的控制权限,而我们的目标主机却在另外的一个内网网段,恰巧这台被控主机跨接了这两个网段,我们该如何是好呢?我想所有人都会想到以此主机为跳板,从而继续渗透。但是却又不想在主机上安装软件,这个时候 metasploit 就成为我们的首选目标了。 Metasploit 内置了 portfwd, route,再配合模块 socks4a,可以让内网渗透如鱼得水。 下面我们来了解一下这几个专用于 pivot 的模块。假设你已经获得了一个 meterpreter 的 shell。
1.首先介绍下此次的演示环境:
Attacker[10.10.100.18]--->comprisedServer[10.10.100.8]---->targetServer[192.168.3.12 9]
Attacker 无法直接访问 Target Server,但是被控主机 10.10.100.8 可以访问。
Portfwd:通过 portfwd 可以在本机监听一个端口并把数据转发到内网中的目标 ip 的
特定端口。本例中我们将本机的 808 端口转发至目标主机的 80 端口。
2.然后访问本机的 808 端口就可以访问到目标主机的 80 端口:
3.Route:路由特定的子网数据到指定的 session
4.Meterpreter> route add 192.168.3.0 255.255.255.0 session_ID 如此之后,我们就可以在 msfconsole 内部使用常规的命令对内网 192.168.3.0/24 进 行访问。 Socks4a:Socks4a 可以让我们不需要上传文件到目标主机只在目标内存中运行代码 开启 socks 功能,从而实现代理的功能。
5.linux 下一般配合 proxychains 进行使用。只需要在配置文件中添加 socks4 的代理 条目并将端口设置为 SRVPORT 所设置的端口即可。 一切配置妥当之后,我们就可以使用 proxychains 代理任意程序 (nmap,Nessus,ssh,telnet,vncviewer …)
6.使用 nessus 扫描内网主机:
设置好路由,假设好 socks4a 之后,扫描内网就变得非常简单了。 首先通过 proxychains 启动 nessus 的后台服务。 #proxychains Nessus-service –D
服务启动加载插件或许会有点小慢,耐心等待。 服务启动之后就可以通过浏览器访问本机的 https://127.0.0.1:8834 端口进行访问,开 启扫描例程。在此不予细述,详情参考扫描基础教案。
通过 wireshark 我们可以看到所有针对 192.168.3.139 的扫描数据都通过 10.10.100.8 转发。Work done 。只不过通过代理启动的 nessus 扫描非常的缓慢,需要详细的精简扫描策略,减少扫描数据量。