asdf23789 发表于 2024-7-29 01:31

求助大佬 这个CM到底是什么壳,脱不掉

yyhd大佬发的小白实战6,第二附件,到底是什么壳,有大佬能脱掉,然后写篇文章吗。新手搞了3天,崩溃了,不管怎么搞都是有壳,放OD没提示以为拖干净了,结果分析下有提示有壳


地址在这里:玩玩破解——小白实战6,再上一层楼,做个注册机 - 『脱壳破解区』 - 吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn 附件2的CM

爱飞的猫 发表于 2024-7-29 04:00

本帖最后由 爱飞的猫 于 2024-7-29 04:04 编辑

asdf23789 发表于 2024-7-29 03:44
Peid和另一个全用了
换成 (https://down.52pojie.cn/?query=DiE) 吧,通常准一些:

![](https://imgsrc.baidu.com/forum/pic/item/8cb1cb13495409231b8fc35ed458d109b3de4928.png)

此外[《吾爱破解培训第一课:破解基础知识之介绍常见工具和壳的特征》 讲师:Hmily](https://www.52pojie.cn/thread-378612-1-1.html) 应该有说明 VB 入口特征,建议看看。

---

用 (https://down.52pojie.cn/?query=VB.Decompiler) 可以直接看到代码:

```vb
Private Sub Command1_Click() '412DB0
Dim global_00414024 As Form
loc_00412E75: var_2C = UCase$(Form2.Text1.Text) ' 用户名
loc_00412EEE: If Len(Form2.Text1.Text) < 6 Then
loc_00412F4B:   MsgBox("姓名字符数不小于6!", 0, 10, 10, 10)
loc_00412F6F:   End
loc_00412F75: End If
loc_0041301A: var_38 = Form2.Text2.Text ' 注册码
loc_0041305A: var_8024 = StrComp(Right$(var_2C, 2) & Left$(var_2C, 2) & Mid$(var_2C, 2, 2), 0, 0)
loc_00413063: If var_8024 = 0 Then
loc_004130AB:   global_00411A78 = Form2.Text1.UnkVCall_00000054h
loc_004130FD:   Form2.Text2.Enabled = True
loc_00413145:   var_8034 = CBool(var_28)
loc_0041314D:   Form2.Visible = var_8034
loc_00413157:   If var_8034 < 0 Then
loc_00413169:   var_8034 = CheckObj(global_00414024, global_00411910, 444)
loc_00413171:   End If
loc_004131C8:   MsgBox("重新来过吧!", 0, 10, 10, 10)
loc_004131EC: End If
loc_004131F8: GoTo loc_0041323D
loc_0041323C: Exit Sub
loc_0041323D: ' Referenced from: 004131F8
End Sub
```

虽然反编译不完美,但可以看到拿用户名进行变形(取用户名右侧 2 字符、左侧 2 字符、第二个和第三个字符),然后与某个字符串对比。

能通过检查的序列号有:

| 用户名   | 序列号 |
| :--------- | :----- |
| 111111   | 111111 |
| 12345678   | 781223 |

如果想做内存注册机,就是在 `CALL StrComp` 处停下:

```
00413056 | 52            | push edx                           | edx:L"781223"
00413057 | 50            | push eax                           | eax:L"000000"
00413058 | 6A 00         | push 0                           |
0041305A | FF15 98104000 | call dword ptr ds:[<__vbaStrComp>] |
```

可以看到 `eax` 指向假码,`edx` 指向真码。因此在这个地址断下然后弹出 `edx` 的值即可。

爱飞的猫 发表于 2024-7-29 03:42

标准的 VB 入口,你用什么工具查的

asdf23789 发表于 2024-7-29 03:44

爱飞的猫 发表于 2024-7-29 03:42
标准的 VB 入口,你用什么工具查的

Peid和另一个全用了

雾落尘 发表于 2024-7-29 09:34

爱飞的猫 发表于 2024-7-29 04:00
换成 (https://down.52pojie.cn/?query=DiE) 吧,通常准一些:

![]()


大佬有个问题 VB Decompiler 为什么有时候能反编译出来,有时候又不行

asdf23789 发表于 2024-7-29 11:17

爱飞的猫 发表于 2024-7-29 04:00
换成 (https://down.52pojie.cn/?query=DiE) 吧,通常准一些:

![]()


我用了这个只能看到2个,我去你这个吊 一会我下个最新的看看,看下来没壳?

asdf23789 发表于 2024-7-29 11:47

爱飞的猫 发表于 2024-7-29 04:00
换成 (https://down.52pojie.cn/?query=DiE) 吧,通常准一些:

![]()


(Heur)打包工具: Packer detected
用了你说的看到了,谢谢大佬 ,我看看这个壳怎么脱

asdf23789 发表于 2024-7-29 12:21

爱飞的猫 发表于 2024-7-29 03:42
标准的 VB 入口,你用什么工具查的

大佬能帮忙脱掉壳,给个步骤吗,搞不定:'(weeqw

爱飞的猫 发表于 2024-7-30 03:30

asdf23789 发表于 2024-7-29 12:21
大佬能帮忙脱掉壳,给个步骤吗,搞不定

你主题说的第二个附件,「crackme2.rar」,这个程序没有壳啊。

我用 DiE 查提示没壳,上调试器也没看到壳的痕迹。

建议看教程《吾爱破解培训第一课:破解基础知识之介绍常见工具和壳的特征》 讲师:Hmily。

爱飞的猫 发表于 2024-7-30 03:31

雾落尘 发表于 2024-7-29 09:34
大佬有个问题 VB Decompiler 为什么有时候能反编译出来,有时候又不行

从机器码反编译到源码不能保证 100% 准确的。
页: [1] 2
查看完整版本: 求助大佬 这个CM到底是什么壳,脱不掉