gsyifan 发表于 2026-7-13 09:19

新的.Net的Check Me V2!

第一版被AI秒了,这是我没有想到的。

欢迎来测试V2版本:
此版本只有一个需求:得到密码


无论是否可以破解,都欢迎讨论,如果成功破解,还有其它几种保护方式,欢迎尝试。


程序:


截图:

Rust 发表于 2026-7-13 16:05

本帖最后由 Rust 于 2026-7-13 16:08 编辑

ai 1分钟就出来了@TWProtector!_v2

adld 发表于 2026-7-13 20:03

本帖最后由 adld 于 2026-7-13 20:05 编辑

跑了十分钟,耗费巨款5毛钱,搞定。

# CheckMe.exe 解题报告

## 结论

密码:`@TWProtector!_v2`

## 样本信息

- 文件:`C:\Users\Administrator\Desktop\CheckMe.exe`
- SHA256:`6F5FCCCA61597756D7E986742C9018803E86157984306D0D5EBAA12E6B63BFDF`
- 类型:.NET PE32,带 `TWSoft.Runtime.VirtualMachine` 虚拟化保护
- 资源:`vhqqhutbztqp`,解密后头部为 `VMBC`

## 分析过程摘要

1. 静态检查 PE/CLR 头,确认是 .NET 程序。
2. 通过反射枚举类型,发现 `Program.Main`、`Program._a`、`Program._b` 均转发到 `TWSoft.Runtime.VirtualMachine.Invoke`。
3. 调用 VM 的 `Initialize()` 后读取内部表:
   - 虚拟化方法 token:`0x06000004`、`0x06000005`、`0x06000006`
   - `_a` 为主校验函数,`_b` 为单字节轮函数。
4. 抽取并解释 VM 字节码,得到关键常量:
   - `arr0 = 7B 3D E9 51 A4 86 3F C2`
   - `arr2 = 15 4C A7 38 ED 91 6A 0F`
   - `stored = BA A1 22 51 53 83 DE EB 39 1B 86 5D C7 D3 91 E2`
   - 派生密钥:`key = 74 98 EE CF 80 48 91 70`
   - 目标密文:`target = 6F 87 1B 5C F7 ED 7D 6B FC 0D AF A0 53 8D 02 92`
5. `Main` 要求输入长度为 16。`_a` 对每 2 字节做 8 轮 Feistel 变换后与 `target` 比较。
6. 逆向 Feistel 变换得到明文:`40 54 57 50 72 6F 74 65 63 74 6F 72 21 5F 76 32`,即 `@TWProtector!_v2`。

## 核心算法

`_b(x, k, r)`:

```text
v = ((x * 109) + k) & 0xff
v ^= ((x >> 3) | ((x << 5) & 0xff)) & 0xff
v = (v + k * 31 + r * 75) & 0xff
v ^= r & 0xff
v = (((v << 1) & 0xff) | (v >> 7)) ^ k
return v & 0xff
```

2 字节块加密:

```text
for r in 0..7:
    newR = L ^ _b(R, key, r)
    L = R
    R = newR
```

逆向每个 2 字节块即可还原密码。

## 验证

执行:

```powershell
"@TWProtector!_v2" | .\work\CheckMe.exe
```

程序输出:

```text
恭喜,密码正确!
```

gsyifan 发表于 2026-7-13 11:15

经测试,通过AI两小时的奋战,此版本也宣告失败。我会继续做一个V3版本

T121581 发表于 2026-7-13 16:59

Rust 发表于 2026-7-13 16:05
ai 1分钟就出来了@TWProtector!_v2

怎么做的 好厉害

zhangshuli 发表于 2026-7-13 19:02

厉害,像你学习。

凉游浅笔深画眉 发表于 2026-7-13 21:06

本帖最后由 凉游浅笔深画眉 于 2026-7-13 21:33 编辑

丢给AI一键就分析出来了啊。

@TWProtector!_v2

Suxinlan 发表于 2026-7-13 21:57

adld 发表于 2026-7-13 22:09

本帖最后由 adld 于 2026-7-13 22:13 编辑

Suxinlan 发表于 2026-7-13 21:57
哪个AI这么便宜?
中转啊,好多平台呢,5毛也不便宜了吧,搞没多少个软件十块就没了,还不一定能搞成功。
只不过写代码建议莫要使用。
可能代码就跑到github上了。

Suxinlan 发表于 2026-7-13 22:19

页: [1] 2
查看完整版本: 新的.Net的Check Me V2!