【渗透测试】KSA远程接入内网

0x01 简介

KSA(Kanxue Security Access),全称看雪安全接入,由看雪学院和FCN联合开发的一款跨平台的远程内网接入工具。它无需公网IP,仅需接入服务端就可以远程接入内网。

远程接入分为p2p直连和NAT中转两种模式,KSA会优先选择p2p直连的模式,在该模式下服务端与客户端直接连接,速度快,不限量。

在p2p尝试失败的情况下,KSA会启用NAT中转模式,在该模式下服务端与客户端之间的连接会经过看雪服务器中转,所有流量使用AES-256-CFB模式全局加密,看雪服务器不会保存流量、也无法解密。

在NAT中转模式,由于看雪服务器资源有限,会进行一定的限速限量措施

KSA目前特点:

  • 简单、便捷:配置简单;秒连;支持全终端;驱动级的轻量化
  • 安全、可靠:双向TLS;全局AES-256;驱动级稳定性

官方地址:看雪学院

0x02 Windows接入流程

KSA的服务端和客户端集成在一个可执行文件之中。

在服务端双击运行可执行文件,左半部分KSA服务端已经默认生成好KSA ID和密码,记住这个KSA ID和密码即可。点击启动服务开始运行服务端:

https://ksa.kanxue.com/view/img/product/pic/01.PNG

KSA ID和密码仅作为客户端与服务端连接时互相校验的用途,看雪服务器并不保存KSA ID和密码

初次使用Windows平台会弹出安装驱动,请允许安装驱动,会自动创建虚拟网卡。

在客户端右侧的“远程接入到KSA服务端”中,输入输入KSA ID和密码,勾选下方的开启全局路由,点击“接入服务端”即可:

https://zebpic-1301715962.cos.ap-nanjing.myqcloud.com/blog/202210161035408.png

此时在客户端查看IP地址,会发现出现一个IPv4 地址为10.10.10.2的以太网适配器 KSA Network Adapter,在服务端会出现一个10.10.10.1。就代表两台机器已经在同一台局域网内了。

此时在服务端使用远程连接被控端10.10.10.2:

https://zebpic-1301715962.cos.ap-nanjing.myqcloud.com/blog/202210161038872.png

反之,在客户端启动远程连接服务端,但是这时候无法直接连接10.10.10.1,而是连接192.168.1.2。

0x03 Linux接入流程

在服务端运行sudo ./ksa_x64,会自动启动服务,显示ID和PSK:

https://zebpic-1301715962.cos.ap-nanjing.myqcloud.com/blog/202210161050484.png

此时服务端查看IP地址,会显示KSA虚拟网卡,同时在客户端输入ID和PSK,可以正常加入服务端:

https://zebpic-1301715962.cos.ap-nanjing.myqcloud.com/blog/202210161053867.png

反之如果是linux作为客户端,修改ksa.conf文件,在CLIENT CFG下面修改uid和psk为服务端的ID和PSK,并删除前面的注释:

https://zebpic-1301715962.cos.ap-nanjing.myqcloud.com/blog/202210161057554.png

之后运行sudo ./ksa_x64,会自动根据配置文件连接服务端:

https://zebpic-1301715962.cos.ap-nanjing.myqcloud.com/blog/202210161059836.png

此时使用rdesktop 10.10.10.1在客户端连接服务端:

https://zebpic-1301715962.cos.ap-nanjing.myqcloud.com/blog/202210161100415.png

在服务端同样也可以ssh root@10.10.10.2连接客户端:

https://zebpic-1301715962.cos.ap-nanjing.myqcloud.com/blog/202210161102559.png

如果想断开连接,首先ps -aux|grep ksa找到所有ksa进程,杀掉进程之后网卡也就自动消失。

IP可以直接ping通之后,所有基于IP端口的协议都可以使用,比如ftp、ssh、telnet、http(s)、stmp/pop、远程桌面、mysql、tomcat。

不知道什么原因,发现从服务端可以ping通客户端,但是在客户端却无法直接ping通服务端。