xray社区高级版破解

首先感谢 长亭科技 提供 xray 这款非常方便非常好用的安全工具
俗话说:没有人破解的工具不是好工具
根据没有任何数据支持的统计,大部分安全研究人员使用的安全工具都是盗版
包括但不限于: IDA \ JEB \ BurpSuite \ Vmware

原文链接:https://blog.lgf.im/2020/xray-cracker.html

2020年8月27日补充

xray官方在 1.3.0 版本中更换了授权验证机制,所以破解仅支持到1.2.0版本,本文使用代码现在开源: https://github.com/zu1k/xray-crack

前几天长亭官方有个活动,可以领2个月的xray社区高级版证书,正好趁这个机会逆向分析了一下xray的证书算法,写了一个证书生成器

因为xray证书用到了rsa算法,所以需要替换xray程序中的公钥,将该功能也集成在工具中了

相关算法分析文章后面有空再写

更新:增加了证书算法的部分细节

工具使用

查看帮助

使用 -h 查看帮助

1
2
3
4
5
6
7
8
9
10
PS > .\xray-cracker -h
破解xray高级版证书,使用 -h 参数查看使用帮助

Usage of xray-cracker:
-c string
替换xray程序内置公钥,需要指定xray程序文件路径
-g string
生成一个永久license,需要指定用户名
-p string
解析官方证书,需要指定证书路径

生成证书

使用 -g username 生成永久证书

1
2
3
4
PS > .\xray-cracker -g “我叫啥”
破解xray高级版证书,使用 -h 参数查看使用帮助

证书已写入文件:xray-license.lic

破解xray

使用 -c path-to-xray 修改xray内置公钥

1
2
3
4
5
PS > .\xray-cracker -c .\xray_windows_amd64.exe
破解xray高级版证书,使用 -h 参数查看使用帮助

public key index: 16741321
文件写入成功: .\xray_windows_amd64.exe

工具虽然是windows平台下运行,但是照样可以破解其他平台xray
目前xray最新版是1.0.0,现在全平台全版本通杀

破解效果

使用修改版xray和永久证书后,效果如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
PS > .\xray_windows_amd64.exe version

__ __ _____ __ __
\ \ / / | __ \ /\ \ \ / /
\ V / | |__) | / \ \ \_/ /
> < | _ / / /\ \ \ /
/ . \ | | \ \ / ____ \ | |
/_/ \_\ |_| \_\ /_/ \_\ |_|


Version: 1.0.0/62161168/COMMUNITY-ADVANCED
Licensed to 我叫啥, license is valid until 2099-09-09 08:00:00

[xray 1.0.0/62161168]
Build: [2020-06-13] [windows/amd64] [RELEASE/COMMUNITY-ADVANCED]
Compiler Version: go version go1.14.1 linux/amd64
License ID: 00000000000000000000000000000000
User Name: 我叫啥/00000000000000000000000000000000
Not Valid Before: 2020-06-12 00:00:00
Not Valid After: 2099-09-09 08:00:00

部分细节

距离博文发布已经过了快一个月了,补充一点点细节信息,希望能够帮助到部分研究学习的同学

这里只给出使用的关键函数和关键流程,一些重要参数细节需要自己探索,可以动态单步调试获得

AES解密

1
2
3
4
5
6
7
8
9
10
11
decode_data, err := base64.StdEncoding.DecodeString(licenseString)
if err != nil {
panic(err)
}

aesDecData, err := AesCBCDecryptAndUnPad(decode_data[17:])
if err != nil {
panic(err)
}

licensePlainJsonBytes := aesDecData[0x102:]

RSA签名验证

1
2
sum := sha256.Sum256(licensePlainJsonBytes)
err = rsa.VerifyPSS(pubKey, crypto.SHA256, sum[:], aesDecData[2:0x102], nil)

工具获取

就不提供工具的公开下载了,如果需要交流学习欢迎邮件联系我

如果单纯是想要工具不要联系我,只是为了研究学习,正式使用请支持正版

说明

本次工作主要是探索golang逆向的基本方法,仅以学习逆向和证书生成算法为目的,如果你从本站下载了cracker工具,请在学习结束后立即删除

如果本篇文章侵犯了您的利益,请联系我删除

注意:网络资源有一定失效性,请以实际为准!
本站telegram群组 https://t.me/digter8 @digter8
仅供学习交流,严禁用于商业用途,请于24小时内删除。

评论

  1. 4 年前
    2020-12-23 11:24:39

    -5) OR 598=(SELECT 598 FROM PG_SLEEP(12))–

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇