当我用搜索引擎,如谷歌和百度搜索“反连平台”四个字时,首页几乎所有的内容都是xray的反连平台。
不得不说,xray对于白帽子的友好程度极高,社区活跃,用户的自发性也非常强!
但今天,我还想和大家安利一下Yakit的反连平台。
为什么要做反连平台呢 ?
是看到xray做得好,眼红吗?
还是说,YAK作者本身也想仗剑走天涯?
NO!
都!
不!
是!!!
官方说法是:
该模块主要用来辅助用户在日常测试中遇到的无回显漏洞检测、内网穿透、反弹shell、DNSlog带外等操作。官方把它定义成了这是产品应该要做的功能。
反连平台其实并不好做,但YAK团队最大的优点就是擅于听取用户的声音~~
用户提出来的需求,只要通过内部讨论后认为这不是一个伪需求,那就会果断安排上。
所以,反连平台也是在大多数用户的提议下,通过团队慎重斟酌后做的一件事情。
但Yakit的反连平台和xray的还不太一样~~
从官方的文档描述和产品使用来看,xray的实现逻辑应该是:基于HTTP协议为引擎提供反连支持,主要用于漏扫,在插件中可以获得反连信息。
图1-xray技术架构如图
通过一个简单的yaml配置即可启动反连服务:
而Yakit反连平台的实现逻辑是:基于端口协议复用技术实现对HTTP、LDAP、RMI、TCP协议的支持,反连平台可以由Yakit、Yaklang直接进行交互和配置。
图2-Yakit技术架构如图
我们可以在Yakit中在可视化的配置payload,对于目标反连信息和payload传递信息可以清晰看到,适合对单个目标的渗透测试
也可以在yaklang中配置
多协议端口复用技术,是Yakit反连平台的核心。
举个例子:
-
TLS 协议要先进行 TLS 握手(handshake) 操作。在 TLS 握手时,首先识别到这是一个 TLS 握手操作,客户端把服务器当作一个 TLS 服务来判断,那么服务端自动返回 TLS 收到的东西。
-
RMI 的协议头为 JRMI,当收到客户端发来这几个字节时,应该回复 RMI 识别的内容。
-
Yakit 集合了常见的几种协议并同时在一个端口上开启,我们将这个服务器命名叫 Facade。
除了多协议端口复用,Yakit反连平台还包括DNS反连检测、NGROK穿透(内网穿透)、ICMP Size Logger、TCP-Portlog、Yso-Java Hack。DNS反连检测是因为在Yakit 提供了一个公共 DNSLog 服务,在DNSlog页面点击 生成一个可用域名 就可以获得一个可用于 DNSLog 检测的域名。
同时,在YAK 中实现了一套 cybertunnel 的机制,使用 grpc 构建了一套端口穿透的技术,可以映射一个本地 tcp / udp 协议端口到远端。
当服务器上安装了 YAK 核心引擎,可直接使用 yak bridge 解决公网穿透问题,如果只有 docker 环境,可以使用一条命令启动【yak bridge】服务器:
docker run -d --rm --net=host v1ll4n/yak-bridge yak bridge --secret [your-awesome-password-for-u-bridge]
ICMP Size Logger 是一个通过 Ping 包大小来判断 ICMP 反连的 ICMP 记录器,可用于检测命令执行。Yakit 实现了一种更 “通用的” 检测手段:
TCP-Portlog 用以检测 TCP 连接。
Yso-Java Hack 用以检测反序列化、类加载、JNDI漏洞利用等Java中常见的几种类型漏洞。
在传统的反连/出网技术检测中,不管是 dnslog 还是 RMI / LDAP Fake 服务器,或者是最基础的 HTTP 服务器,如果需要自动化监测并报告漏洞,需要把 Token 与发出的 Payload 检测漏洞需要对应。但Yakit明显提供了一种更为便捷的方式:不用 Token 也能检测!!
很多时候,我们往往习惯于用传统的思维方式处理问题,以至于我们会坚定地认为这就是最佳答案。
Yakit的出现便是在不断地打破传统。
也许有一天,Yakit也会被别人的更优解打破。
但那又有什么关系呢?
这才是开源最真的意义!
Yak官方资源
Yak 语言官方教程:
https://yaklang.com/docs/intro/
Yakit 视频教程:
https://space.bilibili.com/437503777
Github下载地址:
https://github.com/yaklang/yakit
Yakit官网下载地址:
https://yaklang.com/
Yakit安装文档:
https://yaklang.com/products/download_and_install
Yakit使用文档:
https://yaklang.com/products/intro/
常见问题速查:
https://yaklang.com/products/FAQ