对于一次成功的渗透测试,往往都需要很多优秀的工具进行辅助。在渗透测试中听说用的最多的是一个叫做metasploit。因此想从屌丝脚本小子变成了土豪级脚本小子。所以开始了metasploit学习之旅,希望在记录下自己成长的足迹,把没有学习到知识点,无论大小都记录下来。因此有了下面和下下面的相关文章,如有错误请给予指正。 一、问题描述 在渗透测试时,metasploit往往作为后渗透工具,(因为远程溢出越来越少).我一般都是在获得一个webshell后,来使用metasploit进行信息采集,或者内网扫描等操作。而大多数站点都是内网ip。而本屌丝自己的机器也是内网ip,那么两个内网ip怎么建立连接? 二、解决方法 以前总是使用lcx做端口转发连接站点的3389,是否也可以用lcx将metasploit和站点两个内网ip进行连接?发现是可行的。具体操作步骤如下: 网络环境: Metasploit:192.168.7.84 目标站点: 192.168.244.148 公网ip: 192.168.7.89 我的目的是将244.148 与7.84进行连接。大概过程如下: 1.在公网ip机器上使用lcx建立监听两个端口600、500 2.在metasploit中使用exploit/multi/handler模块,利用payload windows/meterpreter/bind_tcp 连接公网ip的600端口。(这相当于在公网ip上执行了windows/meterpreter/bind_tcp模块,绑定的端口是500) 3.制作一个msfpayload 模块选择windows/meterpreter/reverse_tcp,连接公网ip的500端口。这样可以将两个机器进行连接。 具体测试如下: 1)在公网ip上监听两个端口 2) 在metasploit调用exploit/multi/handler 模块,这里使用资源加载方法,个人理解相当于windows的批处理功能。将要执行的命令存入文件,然后可以使用msf的resource功能加载,则里面的命令都会顺序执行。 其中/tmp/rc/handle.rc中内容如下 然后执行exploit命令,开始执行 则此时公网连接状态 等待客户端进行连接。 现在使用msfpayload生成windows/meterpreter/reverse_tcp的payload 命令行下查看windows/meterpreter/reverse_tcp 需要的选项 需要两个参数LHOST和LPORT,分别是要连接的ip和端口,我这里需要连接的远程ip是192.168.7.89,端口是500 可以看到响应设置,这里有一个X,看一下表示的意思 X其实表示的是exe的X,msfpayload支持很多种语言如P表示Perl,N表示Python等。 生成了payload需要传到目标站点上 在目标站点上执行payload,则公网的lcx开始转发数据 获得一个meterpreter控制台 可以开始进行执行命令了。 如果你觉得命令行用着不爽,可以直接使用run vnc命令,获得一个gui操作。真牛叉。 来源:http://www.91ri.org/9548.html |