硬件黑客工具Packet Squirrel之二:实现openVPN远程访问

2018 年 1 月 28 日 FreeBuf ghostsnow

上篇文章介绍了Packet Squirrel的两种payload使用方式,今天再讲一下利用openVPN实现远程访问Packet Squirrel。

openVPN是一个开源的基于OpenSSL库的应用层VPN软件,可通过配置使用共享密钥、证书、用户名密码等方式进行身份验证,大量使用了OpenSSL加密库中SSLv3/TLSv1协议,可在Linux、MacOS、Windows、FreeBSD等系统上运行,同时包含了许多安全性的功能。

另外上文我们提到过Packet Squirrel设备支持外置U盘格式为NTFS和EXT4,前段时间Hak5官方更新了固件版本,执行updatefw升级固件后,增加支持FAT32格式的U盘。

在Packet Squirrel中支持两种模式:Remote Access和Client Tunneling。

Remote Access(远程访问模式):

在远程访问模式下,连接Packet Squirrel设备两端的网络流量仍然正常传输,与此同时,Packet Squirrel作为openVPN客户端再建立一条链接到我们的openVPN服务器(我们预先配置的VPS),这样我们就可以直接通过VPS远程访问Packet Squirrel了。

Client Tunneling(客户端隧道模式):

首先,Packet Squirrel设备出厂时已经在Payloads / switch3中包含了一个openVPN客户端脚本,通过在VPS上搭建一个openVPN服务端接受来自Packet Squirrel的连接,完成配置整个过程。

第一步:配置openVPN服务端。

在我们预先准备的VPS上安装并配置openVPN安装脚本,该安装脚本可在https://git.io/vpn获取,下载到安装脚本后保存为openvpn.sh并执行。

openVPN服务端安装脚本采取一系列交互式完成安装,其中IP address为我们VPS公网IP,推荐使用openVPN协议类型为UDP,端口1194,其他保持默认即可。

经过大约几分钟的安装过程,会在服务器/root目录下生成client.ovpn文件,其中包含了openVPN的服务端配置信息以及密钥等。

安装过程有个需要注意的地方是安装脚本中会下载一个EasyRSA.tgz的文件,这个文件在安装脚本中默认下载地址是位于AWS上服务器,有时会遇到莫名其妙问题无法下载成功,导致卡在这里,我当时的解决办法是从其他途径下载到该文件然后通过修改安装脚本中有关此项的内容来绕过这个地方。

服务端脚本安装完成后会在本地生成一个虚拟网卡tun0,默认地址为10.8.0.1,如果客户端连接后,分配的客户端地址会依次分发为10.8.0.2/3等。

以上内容已经完成了openVPN服务端侧的配置过程。

下面配置openVPN客户端的内容,首先将在服务端生成的client.ovpn文件修改名称为config.ovpn并复制到Packet Squirrel设备的payloads/switch3文件夹中。

关于Packet Squirrel在openVPN客户端处的配置很简单,仅需要将client.ovpn文件复制到switch3后,并将switch文件内容置为3,重启Packet Squirrel后会自动进行openVPN的连接,连接成功后设备保持LED灯黄色闪烁。

可以看到图中显示来自客户端(即Packet Squirrel)的连接情况,分配的客户端地址为10.8.0.2。

如上图所示,此时我们就可以在VPS上直接SSH root@10.8.0.2 对Packet Squirrel进行远程访问。

上面就是Packet Squirrel的openVPN实现的主要过程,payload默认采用了Remote Access模式访问,对于切换为Client Tunneling模式也很简单,只需要将对应payload.sh脚本中FOR_CLIENTS字段值设为“1”(0:Remote Access  1:Client Tunneling)。

正常模式下Packet Squrriel设备Lan口PC访问网络的地址:

在其他设置保持不变,payload脚本修改完成后重启Packet Squirrel,待自动连接后默认情况下Lan口的PC访问网络IP为正常地址。

在启用客户端隧道模式后,Packet Squirrel设备Lan口的PC访问网络的IP地址变为openVPN服务端的地址,意味着所有流量都经过了openVPN的代理。

以上就是关于Packet Squirrel实现openVPN远程访问的全部内容。

* 本文作者:ghostsnow,转载注明来自FreeBuf.COM

登录查看更多
3

相关内容

Python导论,476页pdf,现代Python计算
专知会员服务
260+阅读 · 2020年5月17日
【ICMR2020】持续健康状态接口事件检索
专知会员服务
17+阅读 · 2020年4月18日
【资源】100+本免费数据科学书
专知会员服务
107+阅读 · 2020年3月17日
Gartner:2020年十大战略性技术趋势, 47页pdf
专知会员服务
77+阅读 · 2020年3月10日
【Google】利用AUTOML实现加速感知神经网络设计
专知会员服务
29+阅读 · 2020年3月5日
【干货】用BRET进行多标签文本分类(附代码)
专知会员服务
84+阅读 · 2019年12月27日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
22+阅读 · 2019年11月7日
后渗透利用msf关闭防火墙
黑白之道
8+阅读 · 2019年8月24日
用Now轻松部署无服务器Node应用程序
前端之巅
16+阅读 · 2019年6月19日
VS Code Remote发布!真·远程开发
开源中国
6+阅读 · 2019年5月3日
Pupy – 全平台远程控制工具
黑白之道
43+阅读 · 2019年4月26日
I2P - 适用于黑客的Android应用程序
黑白之道
30+阅读 · 2019年3月6日
如何用GitLab本地私有化部署代码库?
Python程序员
9+阅读 · 2018年12月29日
CVE-2018-7600 - Drupal 7.x 远程代码执行exp
黑客工具箱
14+阅读 · 2018年4月17日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
Neo4j 和图数据库起步
Linux中国
8+阅读 · 2017年12月20日
Arxiv
7+阅读 · 2019年10月6日
Rapid Customization for Event Extraction
Arxiv
7+阅读 · 2018年9月20日
Relational recurrent neural networks
Arxiv
8+阅读 · 2018年6月28日
Arxiv
7+阅读 · 2018年1月30日
VIP会员
相关VIP内容
Python导论,476页pdf,现代Python计算
专知会员服务
260+阅读 · 2020年5月17日
【ICMR2020】持续健康状态接口事件检索
专知会员服务
17+阅读 · 2020年4月18日
【资源】100+本免费数据科学书
专知会员服务
107+阅读 · 2020年3月17日
Gartner:2020年十大战略性技术趋势, 47页pdf
专知会员服务
77+阅读 · 2020年3月10日
【Google】利用AUTOML实现加速感知神经网络设计
专知会员服务
29+阅读 · 2020年3月5日
【干货】用BRET进行多标签文本分类(附代码)
专知会员服务
84+阅读 · 2019年12月27日
【电子书】Flutter实战305页PDF免费下载
专知会员服务
22+阅读 · 2019年11月7日
相关资讯
后渗透利用msf关闭防火墙
黑白之道
8+阅读 · 2019年8月24日
用Now轻松部署无服务器Node应用程序
前端之巅
16+阅读 · 2019年6月19日
VS Code Remote发布!真·远程开发
开源中国
6+阅读 · 2019年5月3日
Pupy – 全平台远程控制工具
黑白之道
43+阅读 · 2019年4月26日
I2P - 适用于黑客的Android应用程序
黑白之道
30+阅读 · 2019年3月6日
如何用GitLab本地私有化部署代码库?
Python程序员
9+阅读 · 2018年12月29日
CVE-2018-7600 - Drupal 7.x 远程代码执行exp
黑客工具箱
14+阅读 · 2018年4月17日
教你用Python来玩跳一跳
七月在线实验室
6+阅读 · 2018年1月2日
Neo4j 和图数据库起步
Linux中国
8+阅读 · 2017年12月20日
Top
微信扫码咨询专知VIP会员