金野喵君 发表于 2018-11-28 22:12

NCTF2018-WcyVM

本帖最后由 金野喵君 于 2018-12-4 15:10 编辑

这是一道简单VM逆向。

发现函数sub_400DAB()里有一个虚拟机。虚拟机解释的机器码在unk_6021C0这里。




按vm逆向的套路来:分析虚拟机与机器码建立映射关系,修复成汇编代码。
我汇编功底差,翻译得不是很到位,勉强看懂。




代码意思很简单,加密逆过来得到解密过程这样:(((a-102)^116)-99)/110
比对过程如下:

写脚本逆向加密过程得flag。

nctf{3e1ce77b70e4cb941660aec02c813d03e70a274ba96c72fed72783dddac}



永远喜欢英梨梨 发表于 2018-11-29 10:02

学习了一波 我翻译了半天有点头疼就不想写了 最后拿angr跑的

金野喵君 发表于 2018-11-30 13:41

yaoyao7 发表于 2018-11-30 10:24
那天打的时候这道题,翻译错了一句,结果白白浪费了一个多小时,脑阔疼

这种题是挺烦人的。虚拟机越大越麻烦。{:301_971:}

wa774779 发表于 2018-11-28 23:15

打NCTF的都是大佬,签到题都做不出来{:1_909:}

hannoch 发表于 2018-11-29 09:06

大佬请收下我的膝盖

金野喵君 发表于 2018-11-29 09:10

本帖最后由 金野喵君 于 2018-11-29 09:17 编辑

hannoch 发表于 2018-11-29 09:06
大佬请收下我的膝盖还不是大佬{:301_998:}

金野喵君 发表于 2018-11-29 09:17

wa774779 发表于 2018-11-28 23:15
打NCTF的都是大佬,签到题都做不出来

不至于吧,我也是菜鸡,NCTF都没什么大佬在打的。那天好几个比赛冲突。

chkds 发表于 2018-11-29 14:21

大佬做这种题有什么技巧传授下呗{:1_889:}

siphre 发表于 2018-11-29 14:29

太强啦,太强啦,我解的时候一直纠结在mov r2,6   mul r1,r4那几行,总觉得看不懂在做什么。

yale2017 发表于 2018-11-29 19:00

不错,学会了。效果好

N0nE_Seana 发表于 2018-11-30 07:11

GET了,有时间再复现一下。
页: [1] 2
查看完整版本: NCTF2018-WcyVM