zbnysjwsnd8 发表于 2017-6-11 16:23

写了一个CrackMe 不知道能不能撑到晚上

成功提示明显



xjun 发表于 2017-6-12 17:02

先容我吐槽吐槽,短短几十行汇编代码,被你VM成了 将近跑了300万行代码,娱乐娱乐还行,用在软件上就算了吧。

程序开始其主要会会申请一个高地址来 存放vm_opcode,就是文件的附加数据。
然后就开始执行VM代码了,如下图所示。



这么恶心的CM ,算法就没法玩了,咱还是玩玩爆破吧
很明显的是 edx就是handle的索引了,然后写个脚本跑一跑吧(handle自己识别一下吧,也挺恶心的)

var vm_eip
var vm_run
var vm_opcode

var vm_opcode_str
var vm_eip_str


mov vm_run,13B43BC
loop:
esto
mov vm_eip,,4
itoa vm_eip
mov vm_eip_str,$RESULT

mov vm_opcode,edx
itoa vm_opcode
mov vm_opcode_str,$RESULT

wrta "log.txt","vm_opcode:" + vm_opcode_str + " vm_eip:" + vm_eip_str + "\r\n"
jmp loop

然后特么发现这样的LOG都跑了 300多kb,才出现了注册失败的信息框。
然后咱来整理一下流程(自己跑一下看日志,我就不上传日志了)
先CreateFileA 打开一个名为key.txt的文本
在调用ReadFile 读取长度为4
在调用closehandle关闭句柄
然后这里省略250万行的计算代码
我们不管。
通过分析直接到计算好的vm_eip这里来

下图就是计算成功的vm_eip 地址

下图为失败的vm_eip地址

从这里入手爆破,大家都懂得{:1_918:},爆破方法就N种了,这里就不多说了。

一字节爆破:



Poner 发表于 2017-6-12 09:25

刚下载完就被公司的杀毒干掉了。。。这尼玛什么鬼

西交范略 发表于 2017-7-30 21:26

古月同学丶 发表于 2017-6-11 16:41

q1928900702 发表于 2017-6-11 16:51

二楼{:301_999:}哈哈哈

神枪泡泡丶 发表于 2017-6-11 17:06

本帖最后由 神枪泡泡丶 于 2017-6-11 17:07 编辑

好像是判断key.txt内的注册码吧

zbnysjwsnd8 发表于 2017-6-11 17:11

神枪泡泡丶 发表于 2017-6-11 17:06
好像是判断key.txt内的注册码吧

{:1_910:}猜对了 然后呢?

永久禁言 发表于 2017-6-11 17:13

zbnysjwsnd8 发表于 2017-6-11 17:15

永久禁言 发表于 2017-6-11 17:13
软件都不能运行 错误的

{:301_977:}发个图?

永久禁言 发表于 2017-6-11 17:43

zbnysjwsnd8 发表于 2017-6-11 17:47

永久禁言 发表于 2017-6-11 17:43


忘记打包运行库了 装一个就行了

604700276 发表于 2017-6-11 18:35

不太会用,~~~~~
页: [1] 2 3 4
查看完整版本: 写了一个CrackMe 不知道能不能撑到晚上