序列号
libcc.dll sub_1818810F0
4x4=16字节
通过10个字节的数据来生成的。
1. data[0] 和 data[1]必须分别为 `0x68` 和 `0x2A`。这两个字节为Navicat的标志数。
2. data[2]、data[3]和 data[4]可以是任意字节,你想设成什么都行。
3. data[5]和 data[6]是Navicat的语言标志,值如下:
| 语言类型 | data[5] | data[6] |
|------------|:---------:|:---------:|
| English | 0xAC | 0x88 |
| 简体中文 | 0xCE | 0x32 |
| 繁體中文 | 0xAA | 0x99 |
| 日本語 | 0xAD | 0x82 |
| Polski | 0xBB | 0x55 |
| Español | 0xAE | 0x10 |
| Français | 0xFA | 0x20 |
| Deutsch | 0xB1 | 0x60 |
| 한국어 | 0xB5 | 0x60 |
| Русский | 0xEE | 0x16 |
| Português | 0xCD | 0x49 |
4. data[7] 是Navicat产品ID。
|产品名 |Enterprise|Standard|Educational|Essentials|
|----------------------|:--------:|:------:|:---------:|:--------:|
|Navicat Report Viewer |0x0B | | | |
|Navicat Data Modeler 3| |0x84 |0x85 | |
|Navicat Premium |0x65 | |0x66 |0x67 |
|Navicat MySQL |0x68 |0x69 |0x6A |0x6B |
|Navicat PostgreSQL |0x6C |0x6D |0x6E |0x6F |
|Navicat Oracle |0x70 |0x71 |0x72 |0x73 |
|Navicat SQL Server |0x74 |0x75 |0x76 |0x77 |
|Navicat SQLite |0x78 |0x79 |0x7A |0x7B |
|Navicat MariaDB |0x7C |0x7D |0x7E |0x7F |
|Navicat MongoDB |0x80 |0x81 |0x82 | |
5. data[8] 的高4位代表 版本号。低4位未知,但可以用来延长激活期限,可取的值有`0000`和`0001`。
例如:
navicat15 :1111 f0
对于 Navicat 12: 高4位必须是`1100`,为`12`的二进制形式。
对于 Navicat 11: 高4位必须是`1011`,为`11`的二进制形式。
6. data[9]目前暂未知,但如果你想要 not-for-resale license 的话可以设成`0xFD`、`0xFC`或`0xFB`。
根据 Navicat 12 for Mac x64版本残留的符号信息可知:
* `0xFB`是 __Not-For-Resale-30-days__ license.
* `0xFC`是 __Not-For-Resale-90-days__ license.
* `0xFD`是 __Not-For-Resale-365-days__ license.
* `0xFE`是 __Not-For-Resale__ license.
* `0xFF`是 __Site__ license.
之后Navicat使用 ECB 模式的 DES算法来加密 data[10]的后8字节,也就是 data[2]到 data[9]的部分。
相应的DES密钥为:
unsigned char DESKey = { 0x64, 0xAD, 0xF3, 0x2F, 0xAE, 0xF2, 0x1A, 0x27 };
之后使用Base32编码
编码之后你应该会得到一个16字节长的字符串,并且以"NAV"打头。
请求码
请求码数据例如:{"K":"NAVDGCLU799LPHHH", "DI":"9DACE501FEE3822FA7D5", "P":"WIN"}
K:序列号
DI:机器码
P:操作系统
请求码数据使用navicat的公钥加密
激活码
激活码数据例如:{"K":"NAVDGCLU799LPHHH", "DI":"9DACE501FEE3822FA7D5", "N":"popk", "O":"test", "T":1616371200}
K、DI值与请求码数据中的值对应,
N:注册名
O:组织
T:激活时间戳
激活码为私钥加密,激活时通过公钥验证。
分析记录
Serial
Navicat.Exe-->check_2175B90
Libcc
__int64 __fastcall sub_1818810F0
Request
验证激活码
sub_1818808E0
启动时验证
00000000029B84FB
.text:00000000029B83A0 start
Libcc
.text:00000001806AA220 public: bool CCNavicat::setupContext(bool)
Libcc
.text:0000000181884670 CSRegistrationCenter_ICSRegistrationCenter_181884670
解密公钥:
CSRegistrationCenter_ICSRegistrationCenter_181884670-->sub_181884E60验证
Libcc rva 14C5020
读注册表,调用AES_CBC解密
公钥解密激活码
验证激活码
sub_1818808E0
验证序列号
sub_1818852F0àsub_1818852F0-->serial_check_18187F510
原文转载:http://www.shaoqun.com/a/753792.html
贝恩资本:https://www.ikjzd.com/w/1336
mil:https://www.ikjzd.com/w/1285
序列号libcc.dllsub_1818810F04x4=16字节通过10个字节的数据来生成的。1.data[0]和data[1]必须分别为`0x68`和`0x2A`。这两个字节为Navicat的标志数。2.data[2]、data[3]和data[4]可以是任意字节,你想设成什么都行。3.data[5]和data[6]是Navicat的语言标志,值如下:|语言类型|data[5]|data[6]
智邦:https://www.ikjzd.com/w/2376
海淘贝:https://www.ikjzd.com/w/1726
indiegogo:https://www.ikjzd.com/w/265
货物被亚马逊FBA仓弄丢怎么办?一招让亚马逊乖乖赔钱!:https://www.ikjzd.com/articles/140965
房间的隔壁 男友和小三在缠绵:http://www.30bags.com/a/253166.html
佣金低至5%,新品免费仓储!来领亚马逊时尚品类神仙福利! :https://www.ikjzd.com/articles/122759
No comments:
Post a Comment