网上公开流传过的Code Virtualizer逆向工程资料汇集
Inside Code Virtualizer v1.0.1.0 - scherzo <[email protected]gmail.com> [2007-02-16]
https://forum.tuts4you.com/files/file/1933-inside-code-virtualizer-v1010/
https://github.com/lmy375/awesome-vmp/blob/master/note/2007_scherzo_Inside_Code_Virtualizer.pdf
(Inside Code Virtualizer v1.0.1.0.rar)
(SB百度文库还收费)Code Virtualizer的一点分析和还原 - Ryosuke [2008-04-03]
https://bbs.pediy.com/thread-62447.htm
Code Virtualizer 1.3.8.0小窥 - neineit [2010-11-20]
https://bbs.pediy.com/thread-125140.htm
关于Code Virtualizer pcode解密的一种方法 - vasthao [2011-7-16]
https://bbs.pediy.com/thread-137265.htm
DeCV a decompiler for Code Virtualizer by Oreans - pakt [2012-10-03]
https://gdtr.wordpress.com/2012/10/03/decv-a-decompiler-for-code-virtualizer-by-oreans/
https://github.com/pakt/decv
(Decompiler for Code Virtualizer 1.3.8)
Code Virtualizer虚拟机保护初探 - 董阳(robinh00d) [2014-06-09]
https://www.nsfocus.com.cn/upload/contents/2015/03/o_19fepsr5ut2s59f18bt1ejt4psb.pdf
2014_07_04_CV虚拟机保护初探.pptx
两个OllyDbg插件
VMSweeper
Oreans UnVirtualizer
好像OSForensics 9.1.1012用Code Virtualizer (CV)进行保护。我对CV、VMP、TMD这类虚拟机保护手段都没研究过,一是没有强烈的刚需,二是投入产出不成比例。其实我对破解也没怎么正经折腾过,除非有个目标特别想用,又没有现成的破解,才去搞搞。OSForensics 9.1.1012就是这样一个例子,对它某个功能有兴趣,没有现成破解,就搞了搞它。
前面说了,我对破解没怎么正经折腾过,所以没有查壳或查保护手段的习惯。尽管理智告诉我,应该这样干,但习惯牵引我,直接开干。于是,在不知道有CV加持的情况下,靠通用调试技能生撸了将OSForensics 9.1.1012试用期锁定在30天的破解方案。
https://www.osforensics.com/download.html
https://osforensics.com/downloads/osf.exe$ fc /b osf64_old.exe osf64_new.exe
02FE6F4B: CC 81
02FE6F4C: CC FE
02FE6F4D: CC D8
02FE6F4E: CC A1
02FE6F4F: CC FA
02FE6F50: CC 45
02FE6F51: CC 75
02FE6F52: CC 06
02FE6F53: CC 41
02FE6F54: CC BB
02FE6F55: CC 1E
02FE6F56: CC 00
02FE6F57: CC 00
02FE6F58: CC 00
02FE6F59: CC 44
02FE6F5A: CC 89
02FE6F5B: CC 1E
02FE6F5C: CC 49
02FE6F5D: CC 89
02FE6F5E: CC EF
02FE6F5F: CC E9
02FE6F60: CC 3E
02FE6F61: CC 13
02FE6F62: CC D3
02FE6F63: CC 08
0659789C: 44 E9
0659789D: 89 AA
0659789E: 1E EC
0659789F: 49 2C
065978A0: 89 F7
该方案已能满足我的原始需求,但想再看两眼,觉得目标PE的逆向工程很有挑战性。从来不玩CrackMe,没意思,碰上真实世界有价值的挑战,一时兴起。这才发现目标PE有CV加持。
若事先知道有CV加持,可能就不剁了,就算剁,也会套用现有成熟思路,事后发现,学习成本有点高。因为事先不知道,没有思维定势,凭通用调试技能生撸了一把,取巧达成目的,意外收获。
既已知道有CV加持,还是搜了搜它的资料,公开流传的确实不多。
scherzo的PDF,SB百度还收费,良心不痛吗?neineit那篇,去问了本人,是他写的。董阳那篇最有感触,好不容易在网上找到带图版,居然是NSFOCUS技术内刊版。和他聊起后才发现8年前在四楼小会议室里他讲过一遍,于是我又重新看了一遍。
scz: Code Virtualizer虚拟机保护初探,你这篇是哪年写的?
dy: 我想想,好像2014年
scz: 你当时发的时候我没怎么细看,今天看的时候才发现是你写的
scz: 还是在CTD的时候发的
dy: [破涕为笑] 是的,好像是内部做了一次分享
scz: 时间太久了,好像是有这么个印象
scz: 对,找到了,2014_07_04_CV虚拟机保护初探.pptx
dy: 这么古老还能找到 [破涕为笑]
scz: 当时CTD交流文档都有存档的