Xray-反连平台搭建
一、简介
xray 是一款功能强大的安全评估工具,由多名经验丰富的一线安全从业者呕心打造而成,主要特性有:
检测速度快。 发包速度快; 漏洞检测算法高效。
支持范围广。 大至 OWASP Top 10 通用漏洞检测,小至各种 CMS 框架 POC,均可以支持。
代码质量高。 编写代码的人员素质高, 通过 Code Review、单元测试、集成测试等多层验证来提高代码可靠性。
高级可定制。 通过配置文件暴露了引擎的各种参数,通过修改配置文件可以极大的客制化功能。
安全无威胁。 xray 定位为一款安全辅助评估工具,而不是攻击工具,内置的所有 payload 和 poc 均为无害化检查。
二、下载安装
参考:Repo: https://docs.xray.cool/#/tutorial/prepare
安装:
Github: https://github.com/chaitin/xray/releases (国外速度快)
网盘: https://yunpan.360.cn/surl_y3Gu6cugi8u (国内速度快)
三、反连平台搭建
3.1 前期准备
1、需要一个可以自定义DNS host的域名,example.com。
2、需要一个可以运行xray的服务器 106.52.X.X。
3.2 VPS配置
1、放通端口UDP 53、TCP 8001
3.3 域名配置
1、解析记录配置
增加ns1、ns2的A记录(ns1/2可以是别的名称,可自定义),其记录值为VPS的公网地址。
2、自定义DNS host
上述3.3.1 A记录值即为DNS服务器的解析设置,自定义DNS才能收到DNSlog的解析请求。配置如下:
3、 DNS 修改
创建自定义的DNShost 之后将Dns修改为自定义的DNS服务器。
3.4 Xray 配置
1、生成配置文件config.yaml,修改配置,没有的就加上
reverse:
db_file_path: "reverse.db" # 反连平台数据库文件位置, 这是一个 KV 数据库
token: "你的密码" # 反连平台认证的 Token, 独立部署时不能为空
http:
enabled: true
listen_ip: 0.0.0.0
listen_port: "8001"
ip_header: ""
dns:
enabled: true
listen_ip: 0.0.0.0
domain: "example.com" # DNS 域名配置
is_domain_name_server: false
resolve: # DNS 静态解析规则
- type: A # A, AAAA, TXT 三种
record: ns1
value: 106.52.X.X
ttl: 60
- type: A # A, AAAA, TXT 三种
record: ns2
value: 106.52.X.X
ttl: 60
2、执行命令:Xray.exe reverse
四、踩坑总结
1、防火墙开放端口一定得是UDP 不是TCP,安全组新增默认的是TCP。
2、Xray 的反连平台相当于是C/S构造的,默认配置文件config.yaml里就已经包含了DNS A记录值,不用新建DNS服务器。
五、Fastjson漏洞测试
1、搭建环境:
下载文件:https://github.com/vulhub/vulhub/blob/master/fastjson/1.2.24-rce/docker-compose.yml
启动:[root@localhost fastjson]# docker-compose up -d
2、xray客户端配置如下
3、漏洞验证
Burpsuite开启代理抓包,并开启流量转发至127.0.0.1:7001
xray.exe webscan --listen 127.0.0.1:7001 --html-output 22222.html
查看扫描结果,存在反序列化漏洞,不过有意思的是xray的POC进行了Unicode编码以及hex编码,不过服务端还能识别,确实没想到,一定程度上可以绕过防护。\x 代表空格,hex 编码的40表示@,2E表示一个点,4A表示大写J,其余如下图所示
查看DNSlog平台,存在RMI记录,RMI测试需要结合的是IP+PORT格式的payload,如上图payload所示,如果用域名测试,需要换为LDAP。
本作品采用 知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议 (CC BY-NC-ND 4.0) 进行许可。