微信号:freebuf

介绍:国内关注度最高的全球互联网安全新媒体

Ngrok和树莓派绕过企业防火墙并访问内网主机实验

2018-04-14 18:02 Alpha_h4ck

绝大多数安全研究人员所面临的一个常见问题,就是如何在目标网络部署了严格的企业级防火墙或路由器时,如何访问目标企业网络内的办公计算机或者本地设备。在很多情况下,我们的办公室电脑会在防火墙的保护下接入互联网。那么问题就来了,在默认情况下,它并不会允许来自外部网络的流量进入内网。这也就意味着,你可以使用办公室电脑与互联网中的外部主机进行通信,但远程设备却无法与你的办公室电脑连接。

PS:本文仅用于技术讨论与分享,严禁用于任何非法用途

如果你想用家里的电脑访问办公室电脑中的文件或其他资料的话,这就非常令人头疼了。那现在该怎么办呢?我们有没有什么办法去访问路由器或防火墙背后的联网设备呢?

我们能想到的有如下四种方法:

  1. 添加防火墙规则,并允许指定的远程IP绑定指定端口来访问办公室电脑;

  2. 端口转发;

  3. 反向SSH;

  4. Ngrok;

Ngrok

Ngrok这种服务允许我们利用外部端口转发并通过任何网络来连接任意设备(LAN/WAN)。Ngrok最大的一个优势就在于,如果你想访问某个网络中的设备时,你并不需要让自己的设备同样处于同一本地网络之中。在Ngrok的帮助下,你可以通过SSH、FTP或Web服务器来访问目标设备。

Ngrok参考资料:【http://rootsaid.com/ngrok/】

既然我们已经了解了Ngrok的功能,那么接下来我们会使用Ngrok来设置办公室电脑来接受远程设备的SSH连接。我们会给大家提供一个简单的Ngrok使用样例,我会在公司内网的办公室电脑中开启一台SSH服务器(端口22),并设置Ngrok,然后使用Ngrok链接从外网访问这台办公室电脑。

第一步:设置账号

点击【https://ngrok.com/】,然后创建一个Ngrok账号。

完成了账号注册之后,你将会得到一个认证令牌,你需要使用这个令牌来连接你的树莓派和Ngrok账号,这个需要注意。

第二步:下载Ngrok

使用下列命令在你的树莓派上下载Ngrok:

wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip

接下来,使用下列命令提取文件:

unzip ngrok-stable-linux-amd64.zip

如果一切顺利的话,你将会看到一个名叫“ngrok”的文件:

第三步:创建你的账号

使用下列命令来设置你的认证令牌(authtoken):

./ngrok authtoken 4BSL861jeVz9wt7AM91QM_aksO43YvcKgmtC4pxv

第四步:运行Ngrok

现在你可以使用下列命令运行Ngrok(端口22):

./ngrok TCP 22

现在,你将会看到如下所示的信息:

Web Interface http://127.0.0.1:4040
Forwarding tcp://0.tcp.ngrok.io:36428 -> localhost:22

上面的数据表示,任何指向‘0.tcp.ngrok.io’(端口36428)的链接都将被重定向到目标设备(端口22)上。

第五步:使用远程PC访问你的办公室电脑

现在,你可以使用下列命令从远程PC上访问你的办公室设备了:

ssh user@0.tcp.ngrok.io -p 36428

没错,一切就是这么简单,你可以使用这种方法随时访问你的办公室电脑。

* 参考来源:rootsaid,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM

 
FreeBuf 更多文章 黑客利器HackCUBE全球首秀,360鲲鹏安全团队采访实录 HITB2018 | 安卓厂商隐藏的事实:安全补丁的更新部署并不真实完整 走在路上能被识别人脸,该为高科技而喜还是为隐私而忧? 从业务安全架构层面谈普惠金融安全建设之路 新型渗透手法:利用XSS绕过WAF进行SQL注入
猜您喜欢 IXDC大会工作坊长啥样,看完这篇就知道了! 行业资讯 | Docker 创始人宣布离职:“没有我,Docker 也能正常运行” 如何使用中文语音编写Python3程序? 数据库备份还原系统 2014年黑夜路人技术群讨论精选【下】