看完了上一节,读者应该会有些感慨,破解是如此的简单。如果你是收费商业软件的一方,肯定会觉得应该需要做点什么。在本章的第一节,我们介绍了很多种不同的验证方式,可以根据具体情况,选择一种合适的验证方法。但是,不论采用什么样的验证方式,验证本身也是需要防护的。我们可以使用加密壳对验证代码进行加密保护。因此,加密壳又被称之为保护的保护。本节我们将介绍register.exe使用UPX壳加密,然后再破解的方法。
本节必须掌握的知识点:
脱壳后破解
带壳破解
18.3.1 脱壳后破解
实验一百二十三:UPX脱壳后破解
我们先将register.exe使用UPX壳加密,然后脱壳。脱壳后再破解。
■加壳
D:\code\winpe\ch18\upx\upx-4.2.4-win32>upx -1 -k register.exe
Ultimate Packer for eXecutables
Copyright (C) 1996 - 2024
UPX 4.2.4 Markus Oberhumer, Laszlo Molnar & John Reiser May 9th 2024
File size Ratio Format Name
-------------------- ------ ----------- -----------
28160 -> 26112 92.73% win32/pe register.exe
Packed 1 file.
将加壳后的register.exe拖入WinHex工具观察一下:
000001F0 55 50 58 30 00 00 00 00 00 90 00 00 00 10 00 00 UPX0............
00000200 00 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 ................
00000210 00 00 00 00 80 00 00 E0 55 50 58 31 00 00 00 00 ....€..郩PX1....
00000220 00 20 00 00 00 A0 00 00 00 18 00 00 00 04 00 00 . ...?.........
00000230 00 00 00 00 00 00 00 00 00 00 00 00 40 00 00 E0 ............@..?
00000240 2E 72 73 72 63 00 00 00 00 50 00 00 00 C0 00 00 .rsrc....P...?.
00000250 00 4A 00 00 00 1C 00 00 00 00 00 00 00 00 00 00 .J..............
00000260 00 00 00 00 40 00 00 C0 00 00 00 00 00 00 00 00 ....@..?.......
加密成功!