小弟最近比较伤感,于是到看雪来感悟一番。
于2009年的那个寒假接触了逆向工程,或曰破解,或曰脱壳。在这之前,有几年的算法设计基础,有一年多的Win32程序设计基础,对编程语言大致有所了解,对底层一无所知,但是就像某些地方所言,即使是高手,进来也是一头雾水。
最开始接受的教育就是找jcc,看天草的视频看得吐血,深深的膜拜天草兄。那时候破解一些小程序就是小菜我的最大乐趣,每当几个小时的充分调试之后,jcc就在我眼前,那是多么令人兴奋的一件事,可是随着破解的深入,问题就不断的涌现出来遇到的程序基本都是加壳的,于是乎整天就围绕脱壳而生活。
记得第一学脱壳,那是一个UPX的,教程上就是ESP定律漫天飞,领悟了好几天总算明白其实就是一个内存断点,后来总算明白为何要这样下断,到后来看了加密解密第二版,对整个逆向工程的学习算是找到了方向,随后开始接触比较厉害点的壳,其中深有感触的就是高手太高,菜鸟太菜,每次的问题感觉是被别人一带而过,其实作为小小菜的我也理解牛人自有牛人的道理,当然作为一名大牛也比较忙,更没多少时间来讲解一些baidu就知道的问题,这里很是想给刚入门的学弟一个提醒,多利用搜索引擎,你遇到的很多问题别人都曾经遇到过,也留下了解决方案。
好景不长在,等学会了初级脱壳之后,遇到的问题一个比一个变态,VMP成了一座不可翻越的大山,看着Nooby的视频,即使是现在仍然一头雾水,要说速成法,我想通往成功的彻夜苦读是少不了的,深厚的基础也是不能少的,但是这些似乎俺都不缺,但是到目前为止,感觉到了瓶颈期,想提高,没门,并非高手技术封锁,似乎无路可走。话说需要编程基础,本人好歹也是2年算法基础外加2年Windows程序设计基础,对Windows整个体系构架也算是略懂ABC,语言吧,C/C++,Pascal ASM都做过程序,但是真正去脱壳的时候却还是一头雾水。
成长的道路虽说是曲折的,苦是肯定要吃的,以前吧想是拜师学艺,也遇到过网上不少牛人的指点,但是一旦失去那个航标,感觉我们就是在大海中苦苦的乱窜,不由得到看雪上来发牢骚了,成长的道路究竟多长,我们学逆向工程究竟是为啥、or may be god knows how long it will take