Metasploit云主机监听失败缘由

声明: 该公众号大部分文章来自做者平常学习笔记,也有少部分文章是通过原做者受权和其余公众号白名单转载,未经受权,严禁转载,如需转载,联系开白。
请勿利用文章内的相关技术从事非法测试,如所以产生的一切不良后果与文章做者和本公众号无关。

全部话题标签:css

#Web安全   #漏洞复现   #工具使用   #权限提高web

#权限维持   #防御绕过   #内网安全   #实战案例shell

#其余笔记   #资源分享   #MSF安全


0x01 前言服务器

咱们在实战渗透测试中时常会用到公网MSF来反弹一个shell或meterpreter,记得有几回在朋友的阿里云主机上用hta_server、web_delivery这两个模块进行监听时怎么都获取不到会话,可是用EXE的攻击载荷又能够,当时还觉得是MSF版本的问题,也没有去研究其监听失败的缘由,相信不少新手朋友可能都有遇到过这个问题吧!
微信


0x02 公网/内网IP的区别app

阿里/腾讯云主机在开通后会给咱们分配一个公网IP和一个内网IP,公网IP用于域名解析、远程链接SSH/RDP服务等,内网IP主要用于跟当前账号下的其余同集群机器通讯。
阿里云分配的公网和内网IP均可以向公网上任意机器发送请求链接,但咱们不能直接向阿里云的内网IP发送请求链接。


0x03 云主机监听失败缘由工具

阿里云主机上用MSF生成EXE攻击载荷必须填写公网IP,但监听时能够使用内网IP,由于咱们是能够与目标机器进行通讯的。
但为何在hta_server、web_delivery这两个模块监听时用内网IP就不行了呢?这里笔者以web_delivery为例来进行简单分析演示,生成一个Powershell Payload


将Powershell Payload的Base64编码提取出来用certutil命令解码看一下就知道其缘由了,使用这种无落地文件远程执行Payload时,由于监听IP为内网IP,生成的远程Payload地址也为内网IP,因此在目标主机上执行时会由于访问不到咱们阿里云的内网IP而执行失败,致使没法获取会话。学习

certutil -decode encode.txt decode.txt

这里我也尝试了将SRVHOST修改成公网IP,SRVPORT修改成其余端口,可是在执行exploit时仍是会出现 [-] Exploit failed [bad-config]: Rex::BindFailed The address is already in use or unavailable: (39.96.9.238:8888). 报错。


朋友@小西补充:测试

hta_server、web_delivery这两个模块是主动链接MSF在阿里云服务器上运行的服务,因此必须设置公网IP,虽然MSF提示了绑定公网失败,但实际上服务已是开放在公网了。


0x04 云主机监听解决方案

解决方案其实也很简单,在使用hta_server、web_delivery这两个模块时只须要将监听IP设置为公网IP便可,虽然在执行exploit时也会出现 [-] Handler failed to bind to 39.**.**.238:443:-  - 报错,但不会影响咱们获取Meterpreter会话。

只需在公众号回复“HackTheBox”关键字便可领取一套HTB靶场的学习文档和视频,你还在等什么???




【往期TOP5】
星外虚拟主机提权实战案例
MSSQL绕过360提权实战案例
绕过360安全卫士提权实战案例
记一次因“打码”不严的渗透测试
TP-RCE绕过阿里云防御Getshell

本文分享自微信公众号 - 贝塔安全实验室(BetaSecLab)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索